javax.media.jai.operator
Class SubtractConstDescriptor

java.lang.Object
  |
  +--javax.media.jai.OperationDescriptorImpl
        |
        +--javax.media.jai.operator.SubtractConstDescriptor
All Implemented Interfaces:
OperationDescriptor, RegistryElementDescriptor, Serializable

public class SubtractConstDescriptor
extends OperationDescriptorImpl

An OperationDescriptor describing the "SubtractConst" operation.

The SubtractConst operation takes one rendered or renderable source image and an array of double constants, and subtracts a constant from every pixel of its corresponding band of the source. If the number of constants supplied is less than the number of bands of the destination, then the constant from entry 0 is applied to all the bands. Otherwise, a constant from a different entry is applied to each band.

By default, the destination image bounds, data type, and number of bands are the same as the source image. If the result of the operation underflows/overflows the minimum/maximum value supported by the destination data type, then it will be clamped to the minimum/maximum value respectively.

The destination pixel values are defined by the pseudocode:

 if (constants.length < dstNumBands) {
     dst[x][y][b] = src[x][y][b] - constants[0];
 } else {
     dst[x][y][b] = src[x][y][b] - constants[b];
 }
 

Resource List
Name Value
GlobalName SubtractConst
LocalName SubtractConst
Vendor com.sun.media.jai
Description Subtracts constants from a rendered image.
DocURL http://java.sun.com/products/java-media/jai/forDevelopers/jai-apidocs/javax/media/jai/operator/SubtractConstDescriptor.html
Version 1.0
arg0Desc The constants to be subtracted.

Parameter List
Name Class Type Default Value
constants double[] NO_PARAMETER_DEFAULT

See Also:
OperationDescriptor, Serialized Form

Fields inherited from class javax.media.jai.OperationDescriptorImpl
resources, sourceNames, supportedModes
 
Constructor Summary
SubtractConstDescriptor()
          Constructor.
 
Method Summary
 boolean isRenderableSupported()
          Returns true since renderable operation is supported.
protected  boolean validateParameters(ParameterBlock args, StringBuffer message)
          Validates the input parameter.
 
Methods inherited from class javax.media.jai.OperationDescriptorImpl
arePropertiesSupported, getDefaultSourceClass, getDestClass, getDestClass, getInvalidRegion, getName, getNumParameters, getNumSources, getParamClasses, getParamDefaults, getParamDefaultValue, getParameterListDescriptor, getParamMaxValue, getParamMinValue, getParamNames, getPropertyGenerators, getPropertyGenerators, getRenderableDestClass, getRenderableSourceClasses, getResourceBundle, getResources, getSourceClasses, getSourceClasses, getSourceNames, getSupportedModes, isImmediate, isModeSupported, isRenderedSupported, makeDefaultSourceClassList, validateArguments, validateArguments, 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

SubtractConstDescriptor

public SubtractConstDescriptor()
Constructor.
Method Detail

isRenderableSupported

public boolean isRenderableSupported()
Returns true since renderable operation is supported.
Overrides:
isRenderableSupported in class OperationDescriptorImpl
Tags copied from class: OperationDescriptorImpl
See Also:
OperationDescriptorImpl.isModeSupported(java.lang.String)

validateParameters

protected boolean validateParameters(ParameterBlock args,
                                     StringBuffer message)
Validates the input parameter.

In addition to the standard checks performed by the superclass method, this method checks that the length of the "constants" array is at least 1.

Overrides:
validateParameters in class OperationDescriptorImpl
Tags copied from class: OperationDescriptorImpl
Throws:
IllegalArgumentException - if args is null.
IllegalArgumentException - if msg is null and the validation fails.
See Also:
OperationDescriptorImpl.validateParameters(java.lang.String, java.awt.image.renderable.ParameterBlock, java.lang.StringBuffer)