Class WarpDescriptor

All Implemented Interfaces:
OperationDescriptor, RegistryElementDescriptor, Serializable

public class WarpDescriptor
extends OperationDescriptorImpl

An OperationDescriptor describing the "Warp" operation.

The "Warp" operation performs (possibly filtered) general warping on an image.

"Warp" defines a PropertyGenerator that performs an identical transformation on the "ROI" property of the source image, which can be retrieved by calling the getProperty method with "ROI" as the property name.

The parameter, "backgroundValues", is defined to fill the background with the user-specified background values. These background values will be translated into background colors by the ColorModel when the image is displayed. With the default value, {0.0}, of this parameter, the background pixels are filled with 0s. If the provided array length is smaller than the number of bands, the first element of the provided array is used for all the bands. If the provided values are out of the data range of the destination image, they will be clamped into the proper range.

It should be noted that this operation automatically adds a value of Boolean.TRUE for the JAI.KEY_REPLACE_INDEX_COLOR_MODEL to the given configuration so that the operation is performed on the pixel values instead of being performed on the indices into the color map if the source(s) have an IndexColorModel. This addition will take place only if a value for the JAI.KEY_REPLACE_INDEX_COLOR_MODEL has not already been provided by the user. Note that the configuration Map is cloned before the new hint is added to it. The operation can be smart about the value of the JAI.KEY_REPLACE_INDEX_COLOR_MODEL RenderingHints, i.e. while the default value for the JAI.KEY_REPLACE_INDEX_COLOR_MODEL is Boolean.TRUE, in some cases the operator could set the default.

Resource List
Name Value
GlobalName Warp
LocalName Warp
Description Warps an image according to a specified Warp object.
Version 1.0
arg0Desc The Warp object.
arg1Desc The interpolation method.

Parameter List
Name Class Type Default Value
interpolation InterpolationNearest
backgroundValues double[] {0.0}

See Also:
Interpolation, Warp, OperationDescriptor, Serialized Form

Fields inherited from class
resources, sourceNames, supportedModes
Fields inherited from interface
Constructor Summary
Method Summary
static RenderedOp create(RenderedImage source0, Warp warp, Interpolation interpolation, double[] backgroundValues, RenderingHints hints)
          Warps an image according to a specified Warp object.
 PropertyGenerator[] getPropertyGenerators()
          Returns an array of PropertyGenerators implementing property inheritance for the "Warp" operation.
Methods inherited from class
arePropertiesSupported, getDefaultSourceClass, getDestClass, getDestClass, getInvalidRegion, getName, getNumParameters, getNumSources, getParamClasses, getParamDefaults, getParamDefaultValue, getParameterListDescriptor, getParamMaxValue, getParamMinValue, getParamNames, getPropertyGenerators, getRenderableDestClass, getRenderableSourceClasses, getResourceBundle, getResources, getSourceClasses, getSourceClasses, getSourceNames, getSupportedModes, isImmediate, isModeSupported, isRenderableSupported, isRenderedSupported, makeDefaultSourceClassList, validateArguments, validateArguments, validateParameters, validateParameters, validateRenderableArguments, validateRenderableSources, validateSources, validateSources
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public WarpDescriptor()
Method Detail


public PropertyGenerator[] getPropertyGenerators()
Returns an array of PropertyGenerators implementing property inheritance for the "Warp" operation.
getPropertyGenerators in class OperationDescriptorImpl
An array of property generators.


public static RenderedOp create(RenderedImage source0,
                                Warp warp,
                                Interpolation interpolation,
                                double[] backgroundValues,
                                RenderingHints hints)
Warps an image according to a specified Warp object.

Creates a ParameterBlockJAI from all supplied arguments except hints and invokes JAI.create(String,ParameterBlock,RenderingHints).

source0 - RenderedImage source 0.
warp - The warp object.
interpolation - The interpolation method. May be null.
backgroundValues - The user-specified background values. May be null.
hints - The RenderingHints to use. May be null.
The RenderedOp destination.
IllegalArgumentException - if source0 is null.
IllegalArgumentException - if warp is null.
See Also:
JAI, ParameterBlockJAI, RenderedOp