The bit precision per data element is that of the data type (that is, the bit precision for this Raster is 8). There is only one pixel stride and one scanline stride for all bands. This type of Raster can be used with a ComponentColorModel if there are multiple bands, or an IndexColorModel if there is only one band.
| Modifier and Type | Field and Description |
|---|---|
| pack-priv int[] | bitMasks
If packed == true, the SampleModel's bit masks. |
| pack-priv int[] | bitOffsets
If packed == true, the SampleModel's bit offsets. |
| pack-priv int | dbOffset
The DataBuffer offset, minus sampleModelTranslateX*pixelStride, minus sampleModelTranslateY*scanlineStride, used to calculate pixel offsets. |
| pack-priv int | |
| pack-priv boolean | inOrder
True if the data offsets range from 0 to (pixelStride - 1) in order. |
| private int | maxX
A cached copy of minX + width for use in bounds checks.
|
| private int | maxY
A cached copy of minY + height for use in bounds checks.
|
| pack-priv boolean | packed
True if a SinglePixelPackedSampleModel is being used. |
| Access | Constructor and Description |
|---|---|
| public | ByteInterleavedRaster(SampleModel
The SampleModel that specifies the layout. sampleModel, Point The Point that specified the origin. origin)Constructs a ByteInterleavedRaster with the given SampleModel. |
| public | ByteInterleavedRaster(SampleModel
The SampleModel that specifies the layout. sampleModel, DataBufferByte The DataBufferByte that contains the image data. dataBuffer, Point The Point that specifies the origin. origin)Constructs a ByteInterleavedRaster with the given SampleModel and DataBuffer. |
| public | ByteInterleavedRaster(SampleModel
The SampleModel that specifies the layout. sampleModel, DataBufferByte The DataBufferByte that contains the image data. dataBuffer, Rectangle The Rectangle that specifies the image area. aRegion, Point The Point that specifies the origin. origin, ByteInterleavedRaster The parent (if any) of this raster. parent)Constructs a ByteInterleavedRaster with the given SampleModel, DataBuffer, and parent. |
| Modifier and Type | Method and Description |
|---|---|
| public Raster | createChild(int
X offset. x, int Y offset. y, int Width (in pixels) of the subraster. width, int Height (in pixels) of the subraster. height, int Translated X origin of the subraster. x0, int Translated Y origin of the subraster. y0, int[] Array of band indices. bandList)Overrides sun. Creates a subraster given a region of the raster. |
| public WritableRaster | createCompatibleWritableRaster(int w, int h)
Overrides sun. Creates a Raster with the same layout but using a different width and height, and with new zeroed data arrays. |
| public WritableRaster | createCompatibleWritableRaster()
Overrides sun. Creates a Raster with the same layout and the same width and height, and with new zeroed data arrays. |
| public WritableRaster | createWritableChild(int
X offset. x, int Y offset. y, int Width (in pixels) of the subraster. width, int Height (in pixels) of the subraster. height, int Translated X origin of the subraster. x0, int Translated Y origin of the subraster. y0, int[] Array of band indices. bandList)Overrides sun. Creates a Writable subRaster given a region of the Raster. |
| public byte[] | Returns: Data array with data elements for all bands.The X coordinate of the upper left pixel location. x, int The Y coordinate of the upper left pixel location. y, int Width of the pixel rectangle. w, int Height of the pixel rectangle. h, int The band to return. band, byte[] If non-null, data elements for all bands
at the specified location are returned in this array. outData)Overrides sun. Returns a byte array of data elements from the specified rectangular region for the specified band. |
| public byte[] | Returns: Data array with data elements for all bands.The X coordinate of the upper left pixel location. x, int The Y coordinate of the upper left pixel location. y, int Width of the pixel rectangle. w, int Height of the pixel rectangle. h, byte[] If non-null, data elements for all bands
at the specified location are returned in this array. outData)Overrides sun. Returns a byte array of data elements from the specified rectangular region. |
| public Object | Returns: An object reference to an array of type defined by getTransferType() with the request pixel data.The X coordinate of the pixel location. x, int The Y coordinate of the pixel location. y, Object An object reference to an array of type defined by
getTransferType() and length getNumDataElements().
If null an array of appropriate type and size will be
allocated. obj)Overrides sun. Returns the data elements for all bands at the specified location. |
| public Object | Returns: An object reference to an array of type defined by getTransferType() with the request pixel data.The X coordinate of the upper left pixel location. x, int The Y coordinate of the upper left pixel location. y, int Width of the pixel rectangle. w, int Height of the pixel rectangle. h, Object An object reference to an array of type defined by
getTransferType() and length w*h*getNumDataElements().
If null an array of appropriate type and size will be
allocated. obj)Overrides sun. Returns an array of data elements from the specified rectangular region. |
| public int | getDataOffset(int
The band whose offset is returned. band)Overrides sun. Returns the data offset for the specified band. |
| public int[] | getDataOffsets()
Overrides sun. Returns a copy of the data offsets array. |
| public byte[] | getDataStorage()
Overrides sun. Returns a reference to the data array. |
| public int[] | getPixels(int x, int y, int w, int h, int[] iArray)
Overrides java. Returns an int array containing all samples for a rectangle of pixels, one sample per array element. |
| public int | getPixelStride()
Overrides sun. Returns pixel stride -- the number of data array elements between two samples for the same band on the same scanline. |
| public int | getSample(int x, int y, int b)
Overrides java. Returns the sample in a specified band for the pixel located at (x,y) as an int. |
| public int[] | getSamples(int x, int y, int w, int h, int b, int[] iArray)
Overrides java. Returns the samples for a specified band for the specified rectangle of pixels in an int array, one sample per array element. |
| public int | getScanlineStride()
Overrides sun. Returns the scanline stride -- the number of data array elements between a given sample and the sample in the same column of the next row in the same band. |
| private boolean | isInterleaved(ComponentSampleModel sm)
Analyzes a ComponentSampleModel to determine if it can function as a PixelInterleavedSampleModel. |
| public void | putByteData(int
The X coordinate of the upper left pixel location. x, int The Y coordinate of the upper left pixel location. y, int Width of the pixel rectangle. w, int Height of the pixel rectangle. h, int The band to set. band, byte[] The data elements to be stored. inData)Overrides sun. Stores a byte array of data elements into the specified rectangular region for the specified band. |
| public void | putByteData(int
The X coordinate of the upper left pixel location. x, int The Y coordinate of the upper left pixel location. y, int Width of the pixel rectangle. w, int Height of the pixel rectangle. h, byte[] The data elements to be stored. inData)Overrides sun. Stores a byte array of data elements into the specified rectangular region. |
| public void | setDataElements(int
The X coordinate of the pixel location. x, int The Y coordinate of the pixel location. y, Object An object reference to an array of type defined by
getTransferType() and length getNumDataElements()
containing the pixel data to place at x,y. obj)Overrides sun. Stores the data elements for all bands at the specified location. |
| public void | setDataElements(int
The X coordinate of the pixel location. x, int The Y coordinate of the pixel location. y, Raster Raster of data to place at x,y location. inRaster)Overrides sun. Stores the Raster data at the specified location. |
| private void | setDataElements(int
The absolute X coordinate of the destination pixel
that will receive a copy of the upper-left pixel of the
inRaster dstX, int The absolute Y coordinate of the destination pixel
that will receive a copy of the upper-left pixel of the
inRaster dstY, int The absolute X coordinate of the upper-left source
pixel that will be copied into this Raster srcX, int The absolute Y coordinate of the upper-left source
pixel that will be copied into this Raster srcY, int The number of pixels to store horizontally width, int The number of pixels to store vertically height, Raster Raster of data to place at x,y location. inRaster)Stores the Raster data at the specified location. |
| public void | setDataElements(int
The X coordinate of the upper left pixel location. x, int The Y coordinate of the upper left pixel location. y, int Width of the pixel rectangle. w, int Height of the pixel rectangle. h, Object An object reference to an array of type defined by
getTransferType() and length w*h*getNumDataElements()
containing the pixel data to place between x,y and
x+h, y+h. obj)Overrides sun. Stores an array of data elements into the specified rectangular region. |
| public void | setPixels(int x, int y, int w, int h, int[] iArray)
Overrides java. Sets all samples for a rectangle of pixels from an int array containing one sample per array element. |
| public void | setRect(int dx, int dy, Raster srcRaster)
Overrides java. Copies pixels from Raster srcRaster to this WritableRaster. |
| public void | setSample(int x, int y, int b, int s)
Overrides java. Sets a sample in the specified band for the pixel located at (x,y) in the DataBuffer using an int for input. |
| public void | setSamples(int x, int y, int w, int h, int b, int[] iArray)
Overrides java. Sets the samples in the specified band for the specified rectangle of pixels from an int array containing one sample per array element. |
| public String | toString()
Overrides sun. Returns a string representation of the object. |
| bitMasks | back to summary |
|---|---|
| pack-priv int[] bitMasks If packed == true, the SampleModel's bit masks. | |
| bitOffsets | back to summary |
|---|---|
| pack-priv int[] bitOffsets If packed == true, the SampleModel's bit offsets. | |
| dbOffset | back to summary |
|---|---|
| pack-priv int dbOffset The DataBuffer offset, minus sampleModelTranslateX*pixelStride, minus sampleModelTranslateY*scanlineStride, used to calculate pixel offsets. | |
| dbOffsetPacked | back to summary |
|---|---|
| pack-priv int dbOffsetPacked | |
| inOrder | back to summary |
|---|---|
| pack-priv boolean inOrder True if the data offsets range from 0 to (pixelStride - 1) in order. | |
| maxX | back to summary |
|---|---|
| private int maxX Hides sun. A cached copy of minX + width for use in bounds checks. | |
| maxY | back to summary |
|---|---|
| private int maxY Hides sun. A cached copy of minY + height for use in bounds checks. | |
| packed | back to summary |
|---|---|
| pack-priv boolean packed True if a SinglePixelPackedSampleModel is being used. | |
| ByteInterleavedRaster | back to summary |
|---|---|
| public ByteInterleavedRaster(SampleModel sampleModel, Point origin) Constructs a ByteInterleavedRaster with the given SampleModel. The Raster's upper left corner is origin and it is the same size as the SampleModel. A DataBuffer large enough to describe the Raster is automatically created. SampleModel must be of type SinglePixelPackedSampleModel or InterleavedSampleModel.
| |
| ByteInterleavedRaster | back to summary |
|---|---|
| public ByteInterleavedRaster(SampleModel sampleModel, DataBufferByte dataBuffer, Point origin) Constructs a ByteInterleavedRaster with the given SampleModel and DataBuffer. The Raster's upper left corner is origin and it is the same size as the SampleModel. The DataBuffer is not initialized and must be a DataBufferByte compatible with SampleModel. SampleModel must be of type SinglePixelPackedSampleModel or InterleavedSampleModel.
| |
| ByteInterleavedRaster | back to summary |
|---|---|
| public ByteInterleavedRaster(SampleModel sampleModel, DataBufferByte dataBuffer, Rectangle aRegion, Point origin, ByteInterleavedRaster parent) Constructs a ByteInterleavedRaster with the given SampleModel, DataBuffer, and parent. DataBuffer must be a DataBufferByte and SampleModel must be of type SinglePixelPackedSampleModel or InterleavedSampleModel. When translated into the base Raster's coordinate system, aRegion must be contained by the base Raster. Origin is the coordinate in the new Raster's coordinate system of the origin of the base Raster. (The base Raster is the Raster's ancestor which has no parent.) Note that this constructor should generally be called by other constructors or create methods, it should not be used directly.
| |
| createChild | back to summary |
|---|---|
| public Raster createChild(int x, int y, int width, int height, int x0, int y0, int[] bandList) Overrides sun. Creates a subraster given a region of the raster. The x and y coordinates specify the horizontal and vertical offsets from the upper-left corner of this raster to the upper-left corner of the subraster. A subset of the bands of the parent Raster may be specified. If this is null, then all the bands are present in the subRaster. A translation to the subRaster may also be specified. Note that the subraster will reference the same DataBuffer as the parent raster, but using different offsets.
| |
| createCompatibleWritableRaster | back to summary |
|---|---|
| public WritableRaster createCompatibleWritableRaster(int w, int h) Overrides sun. Creates a Raster with the same layout but using a different width and height, and with new zeroed data arrays. | |
| createCompatibleWritableRaster | back to summary |
|---|---|
| public WritableRaster createCompatibleWritableRaster() Overrides sun. Creates a Raster with the same layout and the same width and height, and with new zeroed data arrays. If the Raster is a subRaster, this will call createCompatibleRaster(width, height). | |
| createWritableChild | back to summary |
|---|---|
| public WritableRaster createWritableChild(int x, int y, int width, int height, int x0, int y0, int[] bandList) Overrides sun. Creates a Writable subRaster given a region of the Raster. The x and y coordinates specify the horizontal and vertical offsets from the upper-left corner of this Raster to the upper-left corner of the subRaster. A subset of the bands of the parent Raster may be specified. If this is null, then all the bands are present in the subRaster. A translation to the subRaster may also be specified. Note that the subRaster will reference the same DataBuffer as the parent Raster, but using different offsets.
| |
| getByteData | back to summary |
|---|---|
| public byte[] getByteData(int x, int y, int w, int h, int band, byte[] outData) Overrides sun. Returns a byte array of data elements from the specified rectangular region for the specified band. An ArrayIndexOutOfBounds exception will be thrown at runtime if the pixel coordinates are out of bounds.
byte[] bandData = raster.getByteData(x, y, w, h, null);
// To find the data element at location (x2, y2)
byte bandElement = bandData[((y2-y)*w + (x2-x))];
| |
| getByteData | back to summary |
|---|---|
| public byte[] getByteData(int x, int y, int w, int h, byte[] outData) Overrides sun. Returns a byte array of data elements from the specified rectangular region. An ArrayIndexOutOfBounds exception will be thrown at runtime if the pixel coordinates are out of bounds.
byte[] bandData = raster.getByteData(x, y, w, h, null);
int numDataElements = raster.getnumDataElements();
byte[] pixel = new byte[numDataElements];
// To find a data element at location (x2, y2)
System.arraycopy(bandData, ((y2-y)*w + (x2-x))*numDataElements,
pixel, 0, numDataElements);
| |
| getDataElements | back to summary |
|---|---|
| public Object getDataElements(int x, int y, Object obj) Overrides sun. Returns the data elements for all bands at the specified location. An ArrayIndexOutOfBounds exception will be thrown at runtime if the pixel coordinate is out of bounds. A ClassCastException will be thrown if the input object is non null and references anything other than an array of transferType.
| |
| getDataElements | back to summary |
|---|---|
| public Object getDataElements(int x, int y, int w, int h, Object obj) Overrides sun. Returns an array of data elements from the specified rectangular region. An ArrayIndexOutOfBounds exception will be thrown at runtime if the pixel coordinates are out of bounds. A ClassCastException will be thrown if the input object is non null and references anything other than an array of transferType.
byte[] bandData = (byte[])raster.getDataElements(x, y, w, h, null);
int numDataElements = raster.getNumDataElements();
byte[] pixel = new byte[numDataElements];
// To find a data element at location (x2, y2)
System.arraycopy(bandData, ((y2-y)*w + (x2-x))*numDataElements,
pixel, 0, numDataElements);
| |
| getDataOffset | back to summary |
|---|---|
| public int getDataOffset(int band) Overrides sun. Returns the data offset for the specified band. The data offset is the index into the data array in which the first sample of the first scanline is stored.
| |
| getDataOffsets | back to summary |
|---|---|
| public int[] getDataOffsets() Overrides sun. Returns a copy of the data offsets array. For each band the data offset is the index into the band's data array, of the first sample of the band. | |
| getDataStorage | back to summary |
|---|---|
| public byte[] getDataStorage() Overrides sun. Returns a reference to the data array. | |
| getPixels | back to summary |
|---|---|
| public int[] getPixels(int x, int y, int w, int h, int[] iArray) Overrides java. Doc from java. Returns an int array containing all samples for a rectangle of pixels, one sample per array element. An ArrayIndexOutOfBoundsException may be thrown if the coordinates are not in bounds. However, explicit bounds checking is not guaranteed. | |
| getPixelStride | back to summary |
|---|---|
| public int getPixelStride() Overrides sun. Returns pixel stride -- the number of data array elements between two samples for the same band on the same scanline. | |
| getSample | back to summary |
|---|---|
| public int getSample(int x, int y, int b) Overrides java. Doc from java. Returns the sample in a specified band for the pixel located at (x,y) as an int. An ArrayIndexOutOfBoundsException may be thrown if the coordinates are not in bounds. However, explicit bounds checking is not guaranteed. | |
| getSamples | back to summary |
|---|---|
| public int[] getSamples(int x, int y, int w, int h, int b, int[] iArray) Overrides java. Doc from java. Returns the samples for a specified band for the specified rectangle of pixels in an int array, one sample per array element. An ArrayIndexOutOfBoundsException may be thrown if the coordinates are not in bounds. However, explicit bounds checking is not guaranteed. | |
| getScanlineStride | back to summary |
|---|---|
| public int getScanlineStride() Overrides sun. Returns the scanline stride -- the number of data array elements between a given sample and the sample in the same column of the next row in the same band. | |
| isInterleaved | back to summary |
|---|---|
| private boolean isInterleaved(ComponentSampleModel sm) Analyzes a ComponentSampleModel to determine if it can function as a PixelInterleavedSampleModel. In order to do so, it must use only bank 0 of its DataBuffer, and the data offsets must span a range of less than pixelStride. These properties are trivially true for a 1-banded SampleModel. | |
| putByteData | back to summary |
|---|---|
| public void putByteData(int x, int y, int w, int h, int band, byte[] inData) Overrides sun. Stores a byte array of data elements into the specified rectangular region for the specified band. An ArrayIndexOutOfBounds exception will be thrown at runtime if the pixel coordinates are out of bounds. The data elements in the data array are assumed to be packed. That is, a data element at location (x2, y2) would be found at:
inData[((y2-y)*w + (x2-x)) + n]
| |
| putByteData | back to summary |
|---|---|
| public void putByteData(int x, int y, int w, int h, byte[] inData) Overrides sun. Stores a byte array of data elements into the specified rectangular region. An ArrayIndexOutOfBounds exception will be thrown at runtime if the pixel coordinates are out of bounds. The data elements in the data array are assumed to be packed. That is, a data element for the nth band at location (x2, y2) would be found at:
inData[((y2-y)*w + (x2-x))*numDataElements + n]
| |
| setDataElements | back to summary |
|---|---|
| public void setDataElements(int x, int y, Object obj) Overrides sun. Stores the data elements for all bands at the specified location. An ArrayIndexOutOfBounds exception will be thrown at runtime if the pixel coordinate is out of bounds. A ClassCastException will be thrown if the input object is non null and references anything other than an array of transferType.
| |
| setDataElements | back to summary |
|---|---|
| public void setDataElements(int x, int y, Raster inRaster) Overrides sun. Stores the Raster data at the specified location. An ArrayIndexOutOfBounds exception will be thrown at runtime if the pixel coordinates are out of bounds.
| |
| setDataElements | back to summary |
|---|---|
| private void setDataElements(int dstX, int dstY, int srcX, int srcY, int width, int height, Raster inRaster) Stores the Raster data at the specified location.
| |
| setDataElements | back to summary |
|---|---|
| public void setDataElements(int x, int y, int w, int h, Object obj) Overrides sun. Stores an array of data elements into the specified rectangular region. An ArrayIndexOutOfBounds exception will be thrown at runtime if the pixel coordinates are out of bounds. A ClassCastException will be thrown if the input object is non null and references anything other than an array of transferType. The data elements in the data array are assumed to be packed. That is, a data element for the nth band at location (x2, y2) would be found at:
inData[((y2-y)*w + (x2-x))*numDataElements + n]
| |
| setPixels | back to summary |
|---|---|
| public void setPixels(int x, int y, int w, int h, int[] iArray) Overrides java. Doc from java. Sets all samples for a rectangle of pixels from an int array containing one sample per array element. An ArrayIndexOutOfBoundsException may be thrown if the coordinates are not in bounds. However, explicit bounds checking is not guaranteed. | |
| setRect | back to summary |
|---|---|
| public void setRect(int dx, int dy, Raster srcRaster) Overrides java. Doc from java. Copies pixels from Raster srcRaster to this WritableRaster.
For each (x, y) address in srcRaster, the corresponding pixel
is copied to address (x+dx, y+dy) in this WritableRaster,
unless (x+dx, y+dy) falls outside the bounds of this raster.
srcRaster must have the same number of bands as this WritableRaster.
The copy is a simple copy of source samples to the corresponding
destination samples. For details, see
| |
| setSample | back to summary |
|---|---|
| public void setSample(int x, int y, int b, int s) Overrides java. Doc from java. Sets a sample in the specified band for the pixel located at (x,y) in the DataBuffer using an int for input. An ArrayIndexOutOfBoundsException may be thrown if the coordinates are not in bounds. However, explicit bounds checking is not guaranteed. | |
| setSamples | back to summary |
|---|---|
| public void setSamples(int x, int y, int w, int h, int b, int[] iArray) Overrides java. Doc from java. Sets the samples in the specified band for the specified rectangle of pixels from an int array containing one sample per array element. An ArrayIndexOutOfBoundsException may be thrown if the coordinates are not in bounds. However, explicit bounds checking is not guaranteed. | |
| toString | back to summary |
|---|---|
| public String toString() Overrides sun. Doc from java. Returns a string representation of the object.
Satisfying this method's contract implies a non- | |