This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git
commit be44182762b6bf0719ad7fc725ab439cb9a2e00a Author: Martin Desruisseaux <martin.desruisse...@geomatys.com> AuthorDate: Thu Sep 29 15:02:46 2022 +0200 Consider ARGB images as "direct". --- .../java/org/apache/sis/internal/coverage/j2d/ColorModelType.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/coverage/j2d/ColorModelType.java b/core/sis-feature/src/main/java/org/apache/sis/internal/coverage/j2d/ColorModelType.java index dec0255e18..8ff2a54bed 100644 --- a/core/sis-feature/src/main/java/org/apache/sis/internal/coverage/j2d/ColorModelType.java +++ b/core/sis-feature/src/main/java/org/apache/sis/internal/coverage/j2d/ColorModelType.java @@ -16,7 +16,9 @@ */ package org.apache.sis.internal.coverage.j2d; +import java.awt.color.ColorSpace; import java.awt.image.ColorModel; +import java.awt.image.ComponentColorModel; import java.awt.image.DirectColorModel; import java.awt.image.IndexColorModel; @@ -95,6 +97,12 @@ public enum ColorModelType { if (model.getColorSpace() instanceof ScaledColorSpace) { return SCALED; } + if (model.getClass() == ComponentColorModel.class && // Must be tested after color space. + model.getColorSpace().getType() == ColorSpace.TYPE_RGB && // ARGB images stored on 3 or 4 bands. + ImageUtilities.isIntegerType(model.getTransferType())) // Because TYPE_FLOAT|DOUBLE are slow. + { + return DIRECT; + } } return OTHER; }