Package org.geotools.image.util
Class ComponentColorModelJAI
Object
ColorModel
ComponentColorModel
ComponentColorModelJAI
- All Implemented Interfaces:
Transparency
A
ComponentColorModel
modified for interoperability with Java Advanced Imaging. JAI 1.1 was designed for use
with J2SE 1.3 and is not aware of new features in J2SE 1.4. This leads to the following problems:
ComponentColorModel
supportsfloat
anddouble
datatypes since J2SE 1.4 only. The workaround for J2SE 1.3 is to use theFloatDoubleColorModel
provided with JAI 1.1.FloatDoubleColorModel
ignores the new API inColorSpace
, especially thegetMinValue
andgetMaxValue
methods. Consequently, rendering of any image using our customScaledColorSpace
is wrong.ComponentColorModel
usesDataBufferFloat
andDataBufferDouble
, which are unknown to JAI 1.1. Consequently, trying to useRectIter
with one of those will throwClassCastException
.
ComponentColorModel
(which work with our custom ColorSpace
) and
override its createCompatibleSampleModel
in order to returns ComponentSampleModelJAI
instead of
ComponentSampleModel
when float
or double
datatype is requested.- Since:
- 2.0
- Author:
- Martin Desruisseaux (IRD)
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final boolean
Whatever usage of this class should be enabled or not.Fields inherited from class ColorModel
pixel_bits, transferType
Fields inherited from interface Transparency
BITMASK, OPAQUE, TRANSLUCENT
-
Constructor Summary
ConstructorsConstructorDescriptionComponentColorModelJAI
(ColorSpace colorSpace, boolean hasAlpha, boolean isAlphaPremultiplied, int transparency, int transferType) Construct a new color model.ComponentColorModelJAI
(ColorSpace colorSpace, int[] bits, boolean hasAlpha, boolean isAlphaPremultiplied, int transparency, int transferType) Construct a new color model. -
Method Summary
Modifier and TypeMethodDescriptioncreateCompatibleSampleModel
(int w, int h) Returns a compatible sample model.toString()
Returns theString
representation of the contents of thisColorModel
object.Methods inherited from class ComponentColorModel
coerceData, createCompatibleWritableRaster, equals, getAlpha, getAlpha, getAlphaRaster, getBlue, getBlue, getComponents, getComponents, getDataElement, getDataElement, getDataElements, getDataElements, getDataElements, getGreen, getGreen, getNormalizedComponents, getNormalizedComponents, getRed, getRed, getRGB, getRGB, getUnnormalizedComponents, hashCode, isCompatibleRaster, isCompatibleSampleModel
Methods inherited from class ColorModel
finalize, getColorSpace, getComponentSize, getComponentSize, getNumColorComponents, getNumComponents, getPixelSize, getRGBdefault, getTransferType, getTransparency, hasAlpha, isAlphaPremultiplied
-
Field Details
-
ENABLED
public static final boolean ENABLEDWhatever usage of this class should be enabled or not.- See Also:
-
-
Constructor Details
-
ComponentColorModelJAI
public ComponentColorModelJAI(ColorSpace colorSpace, int[] bits, boolean hasAlpha, boolean isAlphaPremultiplied, int transparency, int transferType) Construct a new color model. -
ComponentColorModelJAI
public ComponentColorModelJAI(ColorSpace colorSpace, boolean hasAlpha, boolean isAlphaPremultiplied, int transparency, int transferType) Construct a new color model.
-
-
Method Details
-
createCompatibleSampleModel
Returns a compatible sample model. This implementation is nearly identical to default J2SE's implementation, except that it construct a JAI color model instead of a J2SE one.- Overrides:
createCompatibleSampleModel
in classComponentColorModel
-
toString
Returns theString
representation of the contents of thisColorModel
object.- Overrides:
toString
in classColorModel
- Returns:
- a
String
representing the contents of thisColorModel
object.
-