This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/sis.git
commit 835b893740268e17d7e1d89de2e0cda84aabab7c Merge: 459597c6a6 f76afb0622 Author: Martin Desruisseaux <martin.desruisse...@geomatys.com> AuthorDate: Wed Jan 11 12:19:15 2023 +0100 Merge branch 'geoapi-3.1'. .../org/apache/sis/coverage/grid/GridExtent.java | 27 +- .../org/apache/sis/coverage/grid/GridGeometry.java | 17 +- .../sis/coverage/grid/ResampledGridCoverage.java | 25 +- .../org/apache/sis/filter/ArithmeticFunction.java | 6 +- .../sis/internal/coverage/CoverageCombiner.java | 4 +- .../apache/sis/coverage/grid/GridGeometryTest.java | 34 +- .../main/java/org/apache/sis/portrayal/Canvas.java | 18 +- .../org/apache/sis/portrayal/package-info.java | 2 +- .../sis/internal/referencing/Arithmetic.java | 291 ++++++ .../referencing/ExtendedPrecisionMatrix.java | 92 +- .../sis/internal/referencing/j2d/AffineMatrix.java | 224 ++--- .../referencing/j2d/AffineTransform2D.java | 59 +- .../referencing/provider/Equirectangular.java | 8 +- .../sis/referencing/crs/DefaultTemporalCRS.java | 2 +- .../sis/referencing/cs/CoordinateSystems.java | 15 +- .../apache/sis/referencing/cs/package-info.java | 2 +- .../sis/referencing/datum/BursaWolfParameters.java | 82 +- .../sis/referencing/datum/DatumShiftGrid.java | 6 +- .../sis/referencing/datum/DefaultEllipsoid.java | 41 +- .../sis/referencing/datum/TimeDependentBWP.java | 34 +- .../apache/sis/referencing/datum/package-info.java | 2 +- .../operation/CoordinateOperationFinder.java | 11 +- .../operation/builder/LinearTransformBuilder.java | 2 +- .../operation/matrix/GeneralMatrix.java | 490 +++-------- .../sis/referencing/operation/matrix/Matrices.java | 199 +++-- .../sis/referencing/operation/matrix/Matrix1.java | 15 +- .../sis/referencing/operation/matrix/Matrix2.java | 19 +- .../sis/referencing/operation/matrix/Matrix3.java | 21 +- .../sis/referencing/operation/matrix/Matrix4.java | 23 +- .../referencing/operation/matrix/MatrixSIS.java | 293 +++--- .../operation/matrix/NonSquareMatrix.java | 83 +- .../sis/referencing/operation/matrix/Solver.java | 176 ++-- .../operation/matrix/UnmodifiableMatrix.java | 36 +- .../referencing/operation/matrix/package-info.java | 14 +- .../operation/projection/AlbersEqualArea.java | 32 +- .../operation/projection/CylindricalEqualArea.java | 35 +- .../operation/projection/Initializer.java | 197 ++--- .../projection/LambertConicConformal.java | 38 +- .../operation/projection/LongitudeWraparound.java | 6 +- .../referencing/operation/projection/Mercator.java | 15 +- .../operation/projection/MeridianArcBased.java | 9 +- .../projection/ModifiedAzimuthalEquidistant.java | 10 +- .../operation/projection/ObliqueStereographic.java | 4 +- .../operation/projection/Orthographic.java | 6 +- .../operation/projection/PolarStereographic.java | 20 +- .../operation/projection/TransverseMercator.java | 26 +- .../transform/AbstractLinearTransform.java | 17 + .../operation/transform/CartesianToPolar.java | 4 +- .../operation/transform/ConstantTransform1D.java | 11 +- .../operation/transform/ContextualParameters.java | 16 +- .../transform/EllipsoidToCentricTransform.java | 7 +- .../transform/ExponentialTransform1D.java | 4 +- .../operation/transform/IdentityTransform1D.java | 2 +- .../operation/transform/LinearTransform1D.java | 139 ++- .../operation/transform/MathTransforms.java | 16 +- .../operation/transform/PolarToCartesian.java | 4 +- .../operation/transform/ProjectiveTransform.java | 79 +- .../operation/transform/ScaleTransform.java | 118 ++- .../operation/transform/TransferFunction.java | 2 +- .../operation/transform/TranslationTransform.java | 114 +-- .../referencing/datum/DefaultEllipsoidTest.java | 22 +- .../operation/matrix/GeneralMatrixTest.java | 91 +- .../referencing/operation/matrix/MatricesTest.java | 44 +- .../referencing/operation/matrix/Matrix1Test.java | 8 +- .../referencing/operation/matrix/Matrix2Test.java | 28 +- .../referencing/operation/matrix/Matrix3Test.java | 20 +- .../referencing/operation/matrix/Matrix4Test.java | 28 +- .../operation/matrix/MatrixTestCase.java | 61 +- .../operation/matrix/NonSquareMatrixTest.java | 14 +- .../referencing/operation/matrix/SolverTest.java | 12 +- .../projection/ConformalProjectionTest.java | 5 +- .../operation/projection/InitializerTest.java | 4 +- .../projection/LambertConicConformalTest.java | 8 +- .../operation/transform/MathTransformTestCase.java | 2 + .../transform/ProjectiveTransformTest.java | 85 +- .../operation/transform/ScaleTransformTest.java | 35 +- .../transform/TransformResultComparator.java | 46 +- .../transform/TranslationTransformTest.java | 65 +- .../org/apache/sis/internal/util/DoubleDouble.java | 977 ++++++++------------- .../org/apache/sis/internal/util/Numerics.java | 29 +- .../main/java/org/apache/sis/math/Fraction.java | 97 +- .../src/main/java/org/apache/sis/math/Line.java | 66 +- .../java/org/apache/sis/math/MathFunctions.java | 17 +- .../src/main/java/org/apache/sis/math/Plane.java | 95 +- .../main/java/org/apache/sis/math/Statistics.java | 16 +- .../org/apache/sis/measure/LinearConverter.java | 7 +- .../src/main/java/org/apache/sis/util/Numbers.java | 90 +- .../apache/sis/internal/util/DoubleDoubleTest.java | 143 +-- .../test/java/org/apache/sis/util/NumbersTest.java | 16 +- .../sis/storage/geotiff/GridGeometryBuilder.java | 11 +- .../apache/sis/storage/aggregate/GridSlice.java | 5 +- 91 files changed, 2579 insertions(+), 2872 deletions(-) diff --cc core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/projection/LambertConicConformalTest.java index b692025065,ebaccd232b..f981c2a8a5 --- a/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/projection/LambertConicConformalTest.java +++ b/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/projection/LambertConicConformalTest.java @@@ -26,9 -26,9 +26,8 @@@ import org.apache.sis.internal.referenc import org.apache.sis.internal.referencing.provider.LambertConformal2SP; import org.apache.sis.internal.referencing.provider.LambertConformalWest; import org.apache.sis.internal.referencing.provider.LambertConformalBelgium; -import org.apache.sis.internal.referencing.provider.LambertConformalMichigan; import org.apache.sis.referencing.operation.transform.CoordinateDomain; import org.apache.sis.parameter.Parameters; - import org.apache.sis.internal.util.DoubleDouble; import org.apache.sis.test.DependsOnMethod; import org.apache.sis.test.DependsOn; import org.apache.sis.test.TestUtilities; diff --cc core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/MathTransformTestCase.java index b82325b3ec,77206da5f1..0894efe463 --- a/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/MathTransformTestCase.java +++ b/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/MathTransformTestCase.java @@@ -37,10 -40,15 +37,11 @@@ import static java.lang.StrictMath.* // Test imports import org.opengis.test.Validators; -import org.opengis.test.referencing.TransformTestCase; import org.apache.sis.test.TestUtilities; import org.apache.sis.test.ReferencingAssert; + import org.apache.sis.referencing.operation.matrix.MatrixTestCase; import static org.opengis.test.Assert.*; -// Branch-dependent imports -import org.opengis.test.CalculationType; - /** * Base class for tests of {@link AbstractMathTransform} implementations. diff --cc core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/ProjectiveTransformTest.java index d15a1ebb57,f7c03e26d8..55d147de52 --- a/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/ProjectiveTransformTest.java +++ b/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/ProjectiveTransformTest.java @@@ -83,17 -76,17 +87,17 @@@ public class ProjectiveTransformTest ex * Creates a new test suite. */ public ProjectiveTransformTest() { - super(new MathTransformFactoryBase() { + this(new MathTransformFactoryBase() { @Override public MathTransform createAffineTransform(final Matrix matrix) { - final ProjectiveTransform pt; + final ProjectiveTransform tested; if (matrix.getNumRow() == 3 && matrix.getNumCol() == 3) { - pt = new ProjectiveTransform2D(matrix); + tested = new ProjectiveTransform2D(matrix); } else { - pt = new ProjectiveTransform(matrix); + tested = new ProjectiveTransform(matrix); } - MathTransform tr = pt.optimize(); - if (tr != pt) { + final MathTransform reference = tested.optimize(); + if (tested != reference) { /* * Opportunistically tests `ScaleTransform` together with `ProjectiveTransform`. * We take `ScaleTransform` as a reference implementation because it is simpler. diff --cc core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/TransformResultComparator.java index 821da4a8af,f142b8f6ad..8daecc4b93 --- a/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/TransformResultComparator.java +++ b/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/TransformResultComparator.java @@@ -17,6 -17,6 +17,7 @@@ package org.apache.sis.referencing.operation.transform; import java.util.Arrays; ++import org.opengis.util.FactoryException; import org.opengis.geometry.DirectPosition; import org.opengis.geometry.MismatchedDimensionException; import org.opengis.referencing.operation.Matrix; diff --cc core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/TranslationTransformTest.java index 6c185a45cd,204693baf0..edffba82fd --- a/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/TranslationTransformTest.java +++ b/core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/transform/TranslationTransformTest.java @@@ -50,8 -51,8 +50,8 @@@ public final class TranslationTransform final TranslationTransform tr = new TranslationTransform(matrix.getNumRow(), elements); assertEquals("sourceDimensions", dimensions, tr.getSourceDimensions()); assertEquals("targetDimensions", dimensions, tr.getTargetDimensions()); - Assert.assertMatrixEquals("matrix", matrix, tr.getMatrix(), 0.0); + assertMatrixEquals("matrix", matrix, tr.getMatrix(), 0.0); - assertArrayEquals("elements", elements, tr.getExtendedElements(), 0.0); + assertArrayEquals("elements", elements, getElementAsNumbers(tr)); transform = tr; validate(); } @@@ -104,8 -93,10 +92,10 @@@ final TranslationTransform tr = new TranslationTransform(4, elements); assertEquals("sourceDimensions", 3, tr.getSourceDimensions()); assertEquals("targetDimensions", 3, tr.getTargetDimensions()); - Assert.assertMatrixEquals("matrix", matrix, tr.getMatrix(), 0.0); + assertMatrixEquals("matrix", matrix, tr.getMatrix(), 0.0); - assertArrayEquals("elements", elements, tr.getExtendedElements(), 0.0); + + replaceZeroByNull(elements, O); + assertArrayEquals("elements", elements, tr.getElementAsNumbers(false)); transform = tr; validate(); }