java.awt.image

Class LookupTable

public abstract class LookupTable extends Object

LookupTable represents translation arrays for pixel values. It wraps one or more data arrays for each layer (or component) in an image, such as Alpha, R, G, and B. When doing translation, the offset is subtracted from the pixel values to allow a subset of an array to be used.

See Also: ByteLookupTable

Constructor Summary
protected LookupTable(int offset, int numComponents)
Creates a new LookupTable instance.
Method Summary
intgetNumComponents()
Return the number of components.
intgetOffset()
Return the offset.
abstract int[]lookupPixel(int[] src, int[] dest)
Return translated values for a pixel.

Constructor Detail

LookupTable

protected LookupTable(int offset, int numComponents)
Creates a new LookupTable instance. If numComponents is 1, the same translation table is used for all pixel components.

Parameters: offset Offset to be subtracted. numComponents Number of image components.

Throws: IllegalArgumentException if offset < 0 or numComponents < 1.

Method Detail

getNumComponents

public int getNumComponents()
Return the number of components.

getOffset

public int getOffset()
Return the offset.

lookupPixel

public abstract int[] lookupPixel(int[] src, int[] dest)
Return translated values for a pixel. For each value in the pixel src, use the value minus offset as an index in the component array and copy the value there to the output for the component. If dest is null, the output is a new array, otherwise the translated values are written to dest. Dest can be the same array as src. For example, if the pixel src is [2, 4, 3], and offset is 1, the output is [comp1[1], comp2[3], comp3[2]], where comp1, comp2, and comp3 are the translation arrays.

Parameters: src Component values of a pixel. dest Destination array for values, or null.

Returns: Translated values for the pixel.