This is an automated email from the ASF dual-hosted git repository.
desruisseaux pushed a change to branch geoapi-3.1
in repository https://gitbox.apache.org/repos/asf/sis.git.
from 93dca74 Merge branch 'geoapi-4.0' into geoapi-3.1. This include
mostly netCDF work, with sis-raster improvements in support.
add 4263e79 Edit `GridCoverageResource` contract by allowing
`getGridGeometry()` and `getSampleDimensions()` to be slightly different than
the corresponding `GridCoverage` properties.
add 6f2b61e If a netCDF variable contains "flag_names" or "flag_meanings"
attribute, create categories for enumeration values instead than for the range
of quantitative values.
add 14efbad First draft of "Sinusoidal equal-area" projection, also known
as "Sanson-Flamsteed". This commit put only the spherical formulas. Ellipsoidal
formulas will come later. https://issues.apache.org/jira/browse/SIS-450
add 9566eb7 Add skeleton base class for meridional distance calculation
on ellipsoid. Add formulas to be used as reference in the test class (the
formula actually used by implementation may differ).
https://issues.apache.org/jira/browse/SIS-450
add 8a492bc Implement MeridionalDistance.meridianArc(…).
add 8158557 Adjust the computation of "gridToCRS" in pixel center when
derivating from another grid geometry.
add b24e5d8 Improve comments about the adjustment done for
PixelInCell.CELL_CENTER when deriving a GridGeometry from another one.
add ea60179 Rename an "ellipse" boolean parameter as "ellipsoidal".
add d2c0625 Fix derivative calculation and add tests.
add 8e03db4 Implement MeridionalDistance.inverse(double).
add 7e66753 Complete the tests for MeridionalDistance inverse method.
add fc71753 Rename "MeridionalDistanceBased" class as "MeridianArcBased"
because online dictionaries seem to define "meridional distance" as "the
distance or departure from the meridian; the easting or westing", which is not
what we mean. EPSG guidance note and Snyder do not use "meridional distance"
expression neither for the quantity computed here.
add becfcc7 Implement ellipsoidal formulas for the sinusoidale
projection. This commit completes https://issues.apache.org/jira/browse/SIS-450
add 0945e8a Partial work toward parsing netCDF "grid_mapping" attributes.
add 53ade5d Add inference of "grid to CRS" transform from netCDF
attributes associated to "grid_mapping" variable.
add b638306 More complete parsing of "grid_mapping" parameters specified
by CF-conventions.
add 5d0d7e7 Consolidation of parsing of "grid_mapping" attributes in
netCDF file: - Change order of some methods in Convention class for grouping
"domain" or "range" aspects together. - Take in account the
"latitude_longitude" pseudo-projection special case. - Add a
Convention.defaultHorizontalCRS(boolean) method in replacement of
CRSBuilder.DEFAULT constant. - Replace some in-line strings for attribute name
by constants.
add 3dbcae8 Rename org.apache.sis.metadata.fra module as
org.apache.sis.profile.france. The reason is that national profiles may be on
other aspects than metadata.
add 9987015 A CSAuthorityFactory containing at least the coordinate
system EPSG::4400 should be available even if there is no connection to the
EPSG database. This is required for some data stores like netCDF. The
CSAuthorityFactory interface is added on EPSGFactoryFallback.
add 851bd10 Apply to ConformalProjection the same Snyder 3-35 formulas
(trigonometric identities) than we did for MeridianArcBased. Include the
coefficients in the serialization, since recomputing values after
deserialization may not produce the exact same results than the values computed
at construction time. Since we apply a Snyder formula now, those fields shouls
be more stable than before.
add 3ec1609 Cleanup in test and benchmark methods.
add 6760894 Apply to EqualAreaProjection the same Snyder 3-35 formulas
(trigonometric identities) than we did for MeridianArcBased. Include
coefficients and other fields in serialization for the same reason than
ConformalProjection (simplicity, stability). During this work, we identified a
bug in the series expansion of φ(β) where the last term was multiplied by e⁸
instead of e⁶. Fixing that bug bring the series expansion to a precision where
we no longer need iterations at least wi [...]
add 5b271a0 Include MeridianArcBased fields in serialization for the same
simplicity and numerical stability reasons than ConformalProjection and
EqualAreaProjection. Inconvenient is that the serialization is more at risk to
break if the formulas implemented in those case are improved. However
MathTransform serialization should not be used for long-term storage. It is
okay for RMI purpose between JVMs running the same version of SIS.
add 8ca9f9a Port the "American Polyconic" projection (EPSG:9818) from
Geotk as a side effect of the work on the Sinudoisal projection (those two
projections share a common basis coded in MericianArcBased class) and cleanup
some tests based on the experience gained by the addition of those two
projections.
add 9d03001 Remove unnecessary "throws ProjectionException" in Spherical
private classes.
add 9dabf8e Replace "spatio-temporal" by "spatiotemporal" for more
uniform spelling.
add b280070 Remove SimpleIdentifier.toWKT() because not needed anymore,
and document why PropertyInformation extends SimpleIdentifier.
new 2751173 Merge branch 'geoapi-4.0' into geoapi-3.1. Contains work on
netCDF and addition of two map projections.
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../sis/internal/metadata/ReferencingServices.java | 2 +-
.../sis/internal/simple/SimpleIdentifier.java | 31 +-
.../apache/sis/metadata/PropertyInformation.java | 5 +-
.../org/apache/sis/metadata/TreeTableView.java | 2 +-
.../iso/extent/DefaultSpatialTemporalExtent.java | 4 +-
.../sis/internal/simple/SimpleIdentifierTest.java | 12 -
.../org/apache/sis/internal/map/MapContext.java | 2 +-
.../org/apache/sis/coverage/grid/GridGeometry.java | 32 +-
.../apache/sis/coverage/grid/PixelTranslation.java | 24 +-
.../apache/sis/coverage/grid/GridGeometryTest.java | 33 +-
.../internal/referencing/ReferencingUtilities.java | 18 +
.../referencing/provider/MercatorSpherical.java | 2 +-
...ertCylindricalEqualArea.java => Polyconic.java} | 59 ++--
.../referencing/provider/PseudoPlateCarree.java | 13 +-
.../provider/{Mollweide.java => Sinusoidal.java} | 48 +--
.../org/apache/sis/parameter/ParameterFormat.java | 2 +-
.../java/org/apache/sis/referencing/CommonCRS.java | 46 +--
.../sis/referencing/EPSGFactoryFallback.java | 186 +++++++---
.../sis/referencing/StandardDefinitions.java | 85 +++--
.../java/org/apache/sis/referencing/cs/Codes.java | 3 +-
.../referencing/factory/sql/EPSGDataAccess.java | 2 +-
.../operation/CoordinateOperationContext.java | 12 +-
.../operation/CoordinateOperationRegistry.java | 2 +-
.../referencing/operation/matrix/package-info.java | 4 +-
.../operation/projection/AlbersEqualArea.java | 4 +-
.../operation/projection/ConformalProjection.java | 200 ++++-------
.../operation/projection/CylindricalEqualArea.java | 6 +-
.../operation/projection/EqualAreaProjection.java | 206 +++++------
.../operation/projection/Initializer.java | 12 +-
.../projection/LambertConicConformal.java | 4 +-
.../referencing/operation/projection/Mercator.java | 4 +-
.../operation/projection/MeridianArcBased.java | 222 ++++++++++++
.../operation/projection/NormalizedProjection.java | 2 +-
.../operation/projection/ObliqueMercator.java | 1 -
.../operation/projection/ObliqueStereographic.java | 3 +-
.../operation/projection/PolarStereographic.java | 4 +-
.../operation/projection/Polyconic.java | 382 +++++++++++++++++++++
.../operation/projection/Sinusoidal.java | 240 +++++++++++++
.../operation/projection/TransverseMercator.java | 183 ++++++----
.../operation/transform/MathTransforms.java | 36 +-
.../operation/transform/TranslationTransform.java | 9 +
...g.opengis.referencing.operation.OperationMethod | 2 +
.../org/apache/sis/geometry/TransformTestCase.java | 2 +-
.../referencing/provider/ProvidersTest.java | 4 +-
.../java/org/apache/sis/referencing/CRSTest.java | 4 +-
.../sis/referencing/EPSGFactoryFallbackTest.java | 38 +-
.../sis/referencing/StandardDefinitionsTest.java | 33 +-
.../sis/referencing/cs/DefaultCartesianCSTest.java | 7 +-
.../operation/CoordinateOperationFinderTest.java | 4 +-
.../operation/projection/AlbersEqualAreaTest.java | 10 +-
.../projection/ConformalProjectionTest.java | 136 ++++----
.../projection/EqualAreaProjectionTest.java | 127 +++++++
.../projection/LambertConicConformalTest.java | 8 +-
.../projection/MapProjectionTestCase.java | 27 +-
.../projection/MercatorMethodComparison.java | 107 ++----
.../operation/projection/MercatorTest.java | 8 +-
.../operation/projection/MeridianArcTest.java | 263 ++++++++++++++
.../sis/referencing/operation/projection/NoOp.java | 1 -
.../projection/ObliqueStereographicTest.java | 2 +-
.../operation/projection/PolyconicTest.java | 155 +++++++++
.../operation/projection/SinusoidalTest.java | 131 +++++++
.../projection/TransverseMercatorTest.java | 6 +-
.../operation/projection/ZonedGridSystemTest.java | 6 +-
.../sis/test/suite/ReferencingTestSuite.java | 4 +
.../org/apache/sis/internal/util/Constants.java | 6 -
.../sis/internal/util/StandardDateFormat.java | 2 +-
.../java/org/apache/sis/util/ArgumentChecks.java | 2 +-
.../java/org/apache/sis/util/collection/Cache.java | 2 +-
.../java/org/apache/sis/util/package-info.java | 2 +-
ide-project/NetBeans/nbproject/genfiles.properties | 2 +-
ide-project/NetBeans/nbproject/project.xml | 1 +
profiles/sis-french-profile/pom.xml | 2 +-
.../apache/sis/internal/earth/netcdf/GCOM_C.java | 266 +++++++++++---
.../apache/sis/internal/earth/netcdf/GCOM_W.java | 36 +-
.../org/apache/sis/storage/gdal/TransformTest.java | 3 +-
.../org/apache/sis/storage/geotiff/CRSBuilder.java | 2 +-
.../org/apache/sis/internal/netcdf/CRSBuilder.java | 64 ++--
.../org/apache/sis/internal/netcdf/Convention.java | 253 +++++++++++++-
.../org/apache/sis/internal/netcdf/Decoder.java | 8 +
.../java/org/apache/sis/internal/netcdf/Grid.java | 2 +-
.../apache/sis/internal/netcdf/GridMapping.java | 243 +++++++++++--
.../apache/sis/internal/netcdf/NamedElement.java | 2 +-
.../java/org/apache/sis/internal/netcdf/Node.java | 190 ++++++++++
.../apache/sis/internal/netcdf/RasterResource.java | 41 ++-
.../org/apache/sis/internal/netcdf/Resources.java | 6 +
.../sis/internal/netcdf/Resources.properties | 1 +
.../sis/internal/netcdf/Resources_fr.properties | 1 +
.../org/apache/sis/internal/netcdf/Variable.java | 153 +--------
.../sis/internal/netcdf/impl/ChannelDecoder.java | 14 +-
.../sis/internal/netcdf/impl/VariableInfo.java | 18 +-
.../sis/internal/netcdf/ucar/DecoderWrapper.java | 17 +
.../sis/internal/netcdf/ucar/GroupWrapper.java | 78 +++++
.../sis/internal/netcdf/ucar/VariableWrapper.java | 26 +-
.../sis/internal/storage/AbstractResource.java | 4 +-
.../sis/internal/storage/StoreUtilities.java | 4 +-
.../org/apache/sis/internal/storage/csv/Store.java | 6 +-
.../sis/internal/storage/xml/package-info.java | 2 +-
.../main/java/org/apache/sis/storage/DataSet.java | 4 +-
.../apache/sis/storage/GridCoverageResource.java | 12 +
.../main/java/org/apache/sis/storage/Resource.java | 2 +-
.../org/apache/sis/internal/storage/gpx/Store.java | 4 +-
101 files changed, 3557 insertions(+), 1156 deletions(-)
copy
core/sis-referencing/src/main/java/org/apache/sis/internal/referencing/provider/{LambertCylindricalEqualArea.java
=> Polyconic.java} (60%)
copy
core/sis-referencing/src/main/java/org/apache/sis/internal/referencing/provider/{Mollweide.java
=> Sinusoidal.java} (66%)
create mode 100644
core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/projection/MeridianArcBased.java
create mode 100644
core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/projection/Polyconic.java
create mode 100644
core/sis-referencing/src/main/java/org/apache/sis/referencing/operation/projection/Sinusoidal.java
create mode 100644
core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/projection/EqualAreaProjectionTest.java
create mode 100644
core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/projection/MeridianArcTest.java
create mode 100644
core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/projection/PolyconicTest.java
create mode 100644
core/sis-referencing/src/test/java/org/apache/sis/referencing/operation/projection/SinusoidalTest.java
create mode 100644
storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/Node.java
create mode 100644
storage/sis-netcdf/src/main/java/org/apache/sis/internal/netcdf/ucar/GroupWrapper.java