java.lang.Object | |||||
↳ | java.awt.image.Raster | ||||
↳ | java.awt.image.WritableRaster | ||||
↳ | sun.awt.image.SunWritableRaster | ||||
↳ | sun.awt.image.IntegerComponentRaster | ||||
↳ | sun.awt.image.IntegerInterleavedRaster |
This class defines a Raster with pixels consisting of one or more 32-bit data elements stored in close proximity to each other in a integer array. The bit precision per data element is that of the data type (that is, the bit precision for this raster is 32). There is only one pixel stride and one scanline stride for all bands. For a given pixel, all samples fit in N data elements and these N data elements hold samples for only one pixel. This type of Raster can be used with a PackedColorModel.
For example, if there is only one data element per pixel, a SinglePixelPackedSampleModel can be used to represent multiple bands with a PackedColorModel (including a DirectColorModel) for color interpretation.
[Expand]
Inherited Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() | |||||||||||
![]() |
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Constructs a IntegerInterleavedRaster with the given SampleModel.
| |||||||||||
Constructs a IntegerInterleavedRaster with the given SampleModel
and DataBuffer.
| |||||||||||
Constructs a IntegerInterleavedRaster with the given SampleModel,
DataBuffer, and parent.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Creates a subraster given a region of the raster.
| |||||||||||
Creates a raster with the same data layout and the same
width and height, and with new zeroed data arrays.
| |||||||||||
Creates a raster with the same band layout but using a different
width and height, and with new zeroed data arrays.
| |||||||||||
Creates a subraster given a region of the raster.
| |||||||||||
Returns an array of data elements from the specified rectangular
region.
| |||||||||||
Returns the data elements for all bands at the specified
location.
| |||||||||||
Returns data offset for the specified band.
| |||||||||||
Returns a copy of the data offsets array.
| |||||||||||
Returns a reference to the data array.
| |||||||||||
Returns pixel stride -- the number of data array elements between two
samples for the same band on the same scanline.
| |||||||||||
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.
| |||||||||||
Stores an array of data elements into the specified rectangular
region.
| |||||||||||
Stores the Raster data at the specified location.
| |||||||||||
Stores the data elements for all bands at the specified location.
| |||||||||||
Returns a string representation of the object.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() | |||||||||||
![]() | |||||||||||
![]() | |||||||||||
![]() | |||||||||||
![]() |
Constructs a IntegerInterleavedRaster 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.
sampleModel | The SampleModel that specifies the layout. |
---|---|
origin | The Point that specified the origin. |
Constructs a IntegerInterleavedRaster with the given SampleModel and DataBuffer. The Raster's upper left corner is origin and it is the same sizes the SampleModel. The DataBuffer is not initialized and must be a DataBufferInt compatible with SampleModel. SampleModel must be of type SinglePixelPackedSampleModel.
sampleModel | The SampleModel that specifies the layout. |
---|---|
dataBuffer | The DataBufferInt that contains the image data. |
origin | The Point that specifies the origin. |
Constructs a IntegerInterleavedRaster with the given SampleModel, DataBuffer, and parent. DataBuffer must be a DataBufferInt and SampleModel must be of type SinglePixelPackedSampleModel. When translated into the base Raster's coordinate system, aRegion must be contained by the base Raster. Origin is the coodinate 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.
sampleModel | The SampleModel that specifies the layout. |
---|---|
dataBuffer | The DataBufferInt that contains the image data. |
aRegion | The Rectangle that specifies the image area. |
origin | The Point that specifies the origin. |
parent | The parent (if any) of this raster. |
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. Note that the subraster will reference the same DataBuffer as the parent raster, but using different offsets.
x | X offset. |
---|---|
y | Y offset. |
width | Width (in pixels) of the subraster. |
height | Height (in pixels) of the subraster. |
x0 | Translated X origin of the subRaster. |
y0 | Translated Y origin of the subRaster. |
bandList | Array of band indices. |
Raster
.RasterFormatException | if the specified bounding box is outside of the parent raster. |
---|
Creates a raster with the same data 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).
WritableRaster
with the same sample
model and a new data buffer.
Creates a raster with the same band layout but using a different width and height, and with new zeroed data arrays.
w | the specified width of the new WritableRaster |
---|---|
h | the specified height of the new WritableRaster |
WritableRaster
with the specified
size and a new sample model and data buffer.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.
x | X offset. |
---|---|
y | Y offset. |
width | Width (in pixels) of the subraster. |
height | Height (in pixels) of the subraster. |
x0 | Translated X origin of the subraster. |
y0 | Translated Y origin of the subraster. |
bandList | Array of band indices. |
WritableRaster
sharing all or part of the
DataBuffer
of this WritableRaster
.RasterFormatException | if the specified bounding box is outside of the parent raster. |
---|
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.
int[] bandData = (int[])raster.getDataElements(x, y, w, h, null); int numDataElements = raster.getNumDataElements(); int[] pixel = new int[numDataElements]; // To find a data element at location (x2, y2) System.arraycopy(bandData, ((y2-y)*w + (x2-x))*numDataElements, pixel, 0, numDataElements);
x | The X coordinate of the upper left pixel location. |
---|---|
y | The Y coordinate of the upper left pixel location. |
w | Width of the pixel rectangle |
h | Height of the pixel rectangle |
obj | 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. |
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.
x | The X coordinate of the pixel location. |
---|---|
y | The Y coordinate of the pixel location. |
obj | 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 |
Returns 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.
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.
Returns a reference to the data array.
Returns pixel stride -- the number of data array elements between two samples for the same band on the same scanline.
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.
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]
x | The X coordinate of the upper left pixel location. |
---|---|
y | The Y coordinate of the upper left pixel location. |
w | Width of the pixel rectangle. |
h | Height of the pixel rectangle. |
obj | 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+w-1, y+h-1. |
Stores the Raster data at the specified location. The transferType of the inputRaster must match this raster. An ArrayIndexOutOfBoundsException will be thrown at runtime if the pixel coordinates are out of bounds.
x | The X coordinate of the pixel location. |
---|---|
y | The Y coordinate of the pixel location. |
inRaster | Raster of data to place at x,y location. |
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.
x | The X coordinate of the pixel location. |
---|---|
y | The Y coordinate of the pixel location. |
obj | An object reference to an array of type defined by getTransferType() and length getNumDataElements() containing the pixel data to place at x,y. |
Returns a string representation of the object. In general, the
toString
method returns a string that
"textually represents" this object. The result should
be a concise but informative representation that is easy for a
person to read.
It is recommended that all subclasses override this method.
The toString
method for class Object
returns a string consisting of the name of the class of which the
object is an instance, the at-sign character `@
', and
the unsigned hexadecimal representation of the hash code of the
object. In other words, this method returns a string equal to the
value of:
getClass().getName() + '@' + Integer.toHexString(hashCode())