| java.lang.Object javax.media.jai.OperationDescriptorImpl javax.media.jai.operator.PiecewiseDescriptor
PiecewiseDescriptor | public class PiecewiseDescriptor extends OperationDescriptorImpl (Code) | | An OperationDescriptor describing the "Piecewise" operation.
The "Piecewise" operation performs a piecewise linear mapping of the
pixel values of an image. The piecewise linear mapping is described by a
set of breakpoints which are provided as an array of the form
float breakPoints[N][2][numBreakPoints] where the value of
N may be either unity or the number of bands in the source image.
If N is unity then the same set of breakpoints will be applied to
all bands in the image. The abscissas of the supplied breakpoints must
be monotonically increasing.
The pixel values of the destination image are defined by the pseudocode:
if (src[x][y][b] < breakPoints[b][0][0]) {
dst[x][y][b] = breakPoints[b][1][0]);
} else if (src[x][y][b] > breakPoints[b][0][numBreakPoints-1]) {
dst[x][y][b] = breakPoints[b][1][numBreakPoints-1]);
} else {
int i = 0;
while(breakPoints[b][0][i+1] < src[x][y][b]) {
i++;
}
dst[x][y][b] = breakPoints[b][1][i] +
(src[x][y][b] - breakPoints[b][0][i])*
(breakPoints[b][1][i+1] - breakPoints[b][1][i])/
(breakPoints[b][0][i+1] - breakPoints[b][0][i]);
}
Resource List
Name | Value |
GlobalName | Piecewise |
LocalName | Piecewise |
Vendor | com.sun.media.jai |
Description | Applies a piecewise pixel value mapping. |
DocURL | http://java.sun.com/products/java-media/jai/forDevelopers/jai-apidocs/javax/media/jai/operator/PiecewiseDescriptor.html |
Version | 1.0 |
arg0Desc | The breakpoint array. |
Parameter List
Name | Class Type |
Default Value |
breakPoints | float[][][] |
identity mapping on [0, 255] |
See Also: java.awt.image.DataBuffer See Also: javax.media.jai.ImageLayout See Also: javax.media.jai.OperationDescriptor |
PiecewiseDescriptor | public PiecewiseDescriptor()(Code) | | Constructor.
|
validateArguments | public boolean validateArguments(String modeName, ParameterBlock args, StringBuffer msg)(Code) | | Validates the input source and parameter.
In addition to the standard checks performed by the
superclass method, this method checks that the number of bands
in "breakPoints" is either 1 or the number of bands in the
source image, the second breakpoint array dimension is 2,
the third dimension is the same for abscissas and ordinates,
and that the absicssas are monotonically increasing.
|
Methods inherited from javax.media.jai.OperationDescriptorImpl | public boolean arePropertiesSupported()(Code)(Java Doc) protected static Class getDefaultSourceClass(String modeName)(Code)(Java Doc) public Class getDestClass(String modeName)(Code)(Java Doc) public Class getDestClass()(Code)(Java Doc) public Object getInvalidRegion(String modeName, ParameterBlock oldParamBlock, RenderingHints oldHints, ParameterBlock newParamBlock, RenderingHints newHints, OperationNode node)(Code)(Java Doc) public String getName()(Code)(Java Doc) public int getNumParameters()(Code)(Java Doc) public int getNumSources()(Code)(Java Doc) public Class[] getParamClasses()(Code)(Java Doc) public Object getParamDefaultValue(int index)(Code)(Java Doc) public Object[] getParamDefaults()(Code)(Java Doc) public Number getParamMaxValue(int index)(Code)(Java Doc) public Number getParamMinValue(int index)(Code)(Java Doc) public String[] getParamNames()(Code)(Java Doc) public ParameterListDescriptor getParameterListDescriptor(String modeName)(Code)(Java Doc) public PropertyGenerator[] getPropertyGenerators(String modeName)(Code)(Java Doc) public PropertyGenerator[] getPropertyGenerators()(Code)(Java Doc) public Class getRenderableDestClass()(Code)(Java Doc) public Class[] getRenderableSourceClasses()(Code)(Java Doc) public ResourceBundle getResourceBundle(Locale locale)(Code)(Java Doc) public String[][] getResources(Locale locale)(Code)(Java Doc) public Class[] getSourceClasses(String modeName)(Code)(Java Doc) public Class[] getSourceClasses()(Code)(Java Doc) public String[] getSourceNames()(Code)(Java Doc) public String[] getSupportedModes()(Code)(Java Doc) public boolean isImmediate()(Code)(Java Doc) public boolean isModeSupported(String modeName)(Code)(Java Doc) public boolean isRenderableSupported()(Code)(Java Doc) public boolean isRenderedSupported()(Code)(Java Doc) protected static Class[][] makeDefaultSourceClassList(String[] supportedModes, int numSources)(Code)(Java Doc) public boolean validateArguments(String modeName, ParameterBlock args, StringBuffer msg)(Code)(Java Doc) public boolean validateArguments(ParameterBlock args, StringBuffer msg)(Code)(Java Doc) protected boolean validateParameters(String modeName, ParameterBlock args, StringBuffer msg)(Code)(Java Doc) protected boolean validateParameters(ParameterBlock args, StringBuffer msg)(Code)(Java Doc) public boolean validateRenderableArguments(ParameterBlock args, StringBuffer msg)(Code)(Java Doc) protected boolean validateRenderableSources(ParameterBlock args, StringBuffer msg)(Code)(Java Doc) protected boolean validateSources(String modeName, ParameterBlock args, StringBuffer msg)(Code)(Java Doc) protected boolean validateSources(ParameterBlock args, StringBuffer msg)(Code)(Java Doc)
|
|
|