This is an automated email from the ASF dual-hosted git repository. asf-gitbox-commits pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git
commit 9f647391e7615676d45827fcf8d197738b2be9ef Merge: 442474f820 efcc2b768f Author: Martin Desruisseaux <[email protected]> AuthorDate: Thu Jul 9 00:53:09 2026 +0200 Merge branch 'geoapi-3.1'. Contains bug fixes in HEIF reader and more robust support to the case where the CRS is missing. .../apache/sis/coverage/grid/DefaultEvaluator.java | 27 +++- .../apache/sis/coverage/grid/GridCRSBuilder.java | 43 ++++-- .../apache/sis/coverage/grid/GridDerivation.java | 88 ++++++++--- .../org/apache/sis/coverage/grid/GridExtent.java | 33 +++- .../org/apache/sis/coverage/grid/GridGeometry.java | 79 +++++++--- .../grid/IncompleteGridGeometryException.java | 8 +- .../sis/coverage/grid/ResampledGridCoverage.java | 2 +- .../sis/coverage/grid/TranslatedTransform.java | 3 +- .../main/org/apache/sis/image/ComputedImage.java | 1 + .../image/internal/shared/BatchComputedImage.java | 5 +- .../image/internal/shared/SampleModelBuilder.java | 5 +- .../sis/coverage/grid/GridDerivationTest.java | 36 ++++- .../org/apache/sis/map/coverage/RenderingData.java | 14 +- .../org/apache/sis/geometry/CoordinateFormat.java | 6 +- .../main/org/apache/sis/geometry/package-info.java | 2 +- .../apache/sis/referencing/NamedIdentifier.java | 6 +- .../sis/storage/geotiff/ImageFileDirectory.java | 10 +- .../apache/sis/storage/geotiff/reader/Type.java | 3 +- .../sis/storage/geotiff/inflater/CCITTRLETest.java | 1 + .../apache/sis/io/stream/HyperRectangleWriter.java | 14 +- .../main/org/apache/sis/io/stream/Region.java | 171 ++++++++++++++++++++- .../org/apache/sis/storage/internal/Resources.java | 5 + .../sis/storage/internal/Resources.properties | 1 + .../sis/storage/internal/Resources_fr.properties | 1 + .../apache/sis/storage/tiling/TileReadEvent.java | 21 ++- .../sis/storage/tiling/TiledGridCoverage.java | 42 ++++- .../main/org/apache/sis/util/ArraysExt.java | 20 ++- .../main/org/apache/sis/storage/geoheif/Image.java | 2 +- .../apache/sis/storage/geoheif/ImageResource.java | 38 ++++- .../org/apache/sis/storage/geoheif/Pyramid.java | 25 +-- .../sis/storage/geoheif/UncompressedImage.java | 53 +++---- .../isobmff/mpeg/UncompressedFrameConfig.java | 7 +- .../apache/sis/gui/coverage/CoverageCanvas.java | 9 +- .../apache/sis/gui/coverage/StyleController.java | 2 +- .../org/apache/sis/gui/map/OperationFinder.java | 2 +- .../org/apache/sis/gui/map/ValuesFormatter.java | 4 +- .../org/apache/sis/gui/map/ValuesUnderCursor.java | 23 ++- .../org/apache/sis/gui/referencing/MenuSync.java | 7 +- .../gui/referencing/RecentReferenceSystems.java | 10 +- .../main/org/apache/sis/gui/referencing/Utils.java | 2 + 40 files changed, 655 insertions(+), 176 deletions(-) diff --cc endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/GridCRSBuilder.java index d3116da0a7,38682be486..0425941c15 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/GridCRSBuilder.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/GridCRSBuilder.java @@@ -243,13 -241,14 +241,14 @@@ final class GridCRSBuilder extends Refe * @throws InvalidGeodeticParameterException if characteristics of the grid geometry disallow this operation. * @throws FactoryException if another error occurred during the use of a referencing factory. */ - final CoordinateReferenceSystem forCoverage(final GridGeometry grid, final boolean derived, final Identifier name) + final CoordinateReferenceSystem forCoverage(final GridGeometry grid, final PixelInCell anchor, final boolean derived, final Identifier name) throws FactoryException { + this.anchor = anchor; properties.put(DefiningConversion.NORMALIZED_KEY, Boolean.FALSE); - properties.put(ObjectDomain.SCOPE_KEY, SCOPE); + properties.put(Datum.SCOPE_KEY, SCOPE); grid.getGeographicExtent().ifPresent((domain) -> { - properties.put(ObjectDomain.DOMAIN_OF_VALIDITY_KEY, new DefaultExtent(null, domain, null, null)); + properties.put(Datum.DOMAIN_OF_VALIDITY_KEY, new DefaultExtent(null, domain, null, null)); }); fullGrid = grid; if (derived || grid.isDefined(GridGeometry.CRS | GridGeometry.GRID_TO_CRS)) try { @@@ -481,9 -498,9 +498,9 @@@ toGrid: try } AxisDirection direction = directions[j]; if (direction == null) { - direction = AxisDirection.UNSPECIFIED; + direction = AxisDirections.UNSPECIFIED; } - axes[j] = csFactory.createCoordinateSystemAxis(properties(name), abbreviation, direction, Units.UNITY); + axes[j] = csFactory.createCoordinateSystemAxis(properties(name), abbreviation, direction, pixel ? Units.PIXEL : Units.UNITY); } /* * Create a coordinate system of affine type if all axes seem spatial.
