| Prev Class | Next Class | Frames | No Frames |
| Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Objectjava.awt.image.SampleModelpublic abstract class SampleModelextends ObjectField Summary | |
protected int |
|
protected int |
|
protected int |
|
protected int |
|
Constructor Summary | |
| |
Method Summary | |
abstract SampleModel |
|
abstract DataBuffer |
|
abstract SampleModel |
|
Object |
|
abstract Object |
|
int |
|
int |
|
int |
|
abstract int | |
double[] |
|
float[] |
|
int[] |
|
double[] |
|
float[] |
|
int[] |
|
abstract int |
|
double |
|
float |
|
abstract int[] |
|
abstract int |
|
double[] |
|
float[] |
|
int[] |
|
int | |
int |
|
void |
|
abstract void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
abstract void |
|
void |
|
void |
|
void |
|
Methods inherited from class java.lang.Object | |
clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait | |
protected int dataType
The DataBuffer type that is used to store the data of the image described.
protected int numBands
Number of bands in the image described. Package-private here, shadowed by ComponentSampleModel.
public SampleModel(int dataType, int w, int h, int numBands)
Creates a new sample model with the specified attributes.
- Parameters:
dataType- the data type (one ofDataBuffer.TYPE_BYTE,DataBuffer.TYPE_USHORT,DataBuffer.TYPE_SHORT,DataBuffer.TYPE_INT,DataBuffer.TYPE_FLOAT,DataBuffer.TYPE_DOUBLEorDataBuffer.TYPE_UNDEFINED).w- the width in pixels (must be greater than zero).h- the height in pixels (must be greater than zero).numBands- the number of bands (must be greater than zero).
- Throws:
IllegalArgumentException- ifdataTypeis not one of the listed values.IllegalArgumentException- ifwis less than or equal to zero.IllegalArgumentException- ifhis less than or equal to zero.IllegalArgumentException- ifw * his greater thanInteger.MAX_VALUE.
public abstract SampleModel createCompatibleSampleModel(int w, int h)
Creates a newSampleModelthat is compatible with this model and has the specified width and height.
- Parameters:
w- the width (in pixels).h- the height (in pixels).
- Returns:
- The new sample model.
public abstract DataBuffer createDataBuffer()
Creates a newDataBufferof the correct type and size for thisSampleModel.
- Returns:
- The data buffer.
public abstract SampleModel createSubsetSampleModel(int[] bands)
Return a SampleModel with a subset of the bands in this model. Selects bands.length bands from this sample model. The bands chosen are specified in the indices of bands[]. This also permits permuting the bands as well as taking a subset. Thus, giving an array with 1, 2, 3, ..., numbands, will give an identical sample model.
- Parameters:
bands- Array with band indices to include.
- Returns:
- A new sample model
public Object getDataElements(int x, int y, int w, int h, Object obj, DataBuffer data)
public abstract Object getDataElements(int x, int y, Object obj, DataBuffer data)
This method is provided as a faster alternative to getPixel(), that can be used when there is no need to decode the pixel into separate sample values.
- Parameters:
obj- An array to return the pixel data in. If null, an array of the right type and size will be created.
- Returns:
- A single pixel as an array object of a primitive type, based on the transfer type. Eg. if transfer type is DataBuffer.TYPE_USHORT, then a short[] object is returned.
public final int getDataType()
Returns the type of theDataBufferthat thisSampleModelaccesses.
- Returns:
- The data buffer type.
public final int getHeight()
Returns the height of the pixel data accessible via thisSampleModel.
- Returns:
- The height.
- See Also:
getWidth()
public final int getNumBands()
Returns the number of bands for thisSampleModel.
- Returns:
- The number of bands.
public double[] getPixel(int x, int y, double[] dArray, DataBuffer data)
Returns an array containing the samples for the pixel at (x, y) in the specified data buffer. IfdArrayis notnull, it will be populated with the sample values and returned as the result of this function (this avoids allocating a new array instance).
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.dArray- an array to populate with the sample values and return as the result (ifnull, a new array will be allocated).data- the data buffer (nullnot permitted).
- Returns:
- The pixel sample values.
- Throws:
NullPointerException- ifdataisnull.
public float[] getPixel(int x, int y, float[] fArray, DataBuffer data)
Returns an array containing the samples for the pixel at (x, y) in the specified data buffer. IffArrayis notnull, it will be populated with the sample values and returned as the result of this function (this avoids allocating a new array instance).
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.fArray- an array to populate with the sample values and return as the result (ifnull, a new array will be allocated).data- the data buffer (nullnot permitted).
- Returns:
- The pixel sample values.
- Throws:
NullPointerException- ifdataisnull.
public int[] getPixel(int x, int y, int[] iArray, DataBuffer data)
Returns an array containing the samples for the pixel at (x, y) in the specified data buffer. IfiArrayis notnull, it will be populated with the sample values and returned as the result of this function (this avoids allocating a new array instance).
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.iArray- an array to populate with the sample values and return as the result (ifnull, a new array will be allocated).data- the data buffer (nullnot permitted).
- Returns:
- The pixel sample values.
- Throws:
NullPointerException- ifdataisnull.
public double[] getPixels(int x, int y, int w, int h, double[] dArray, DataBuffer data)
Returns an array containing the samples for the pixels in the region specified by (x, y, w, h) in the specified data buffer. The array is ordered by pixels (that is, all the samples for the first pixel are grouped together, followed by all the samples for the second pixel, and so on). IfdArrayis notnull, it will be populated with the sample values and returned as the result of this function (this avoids allocating a new array instance).
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.dArray- an array to populate with the sample values and return as the result (ifnull, a new array will be allocated).data- the data buffer (nullnot permitted).
- Returns:
- The pixel sample values.
- Throws:
NullPointerException- ifdataisnull.
public float[] getPixels(int x, int y, int w, int h, float[] fArray, DataBuffer data)
Returns an array containing the samples for the pixels in the region specified by (x, y, w, h) in the specified data buffer. The array is ordered by pixels (that is, all the samples for the first pixel are grouped together, followed by all the samples for the second pixel, and so on). IffArrayis notnull, it will be populated with the sample values and returned as the result of this function (this avoids allocating a new array instance).
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.fArray- an array to populate with the sample values and return as the result (ifnull, a new array will be allocated).data- the data buffer (nullnot permitted).
- Returns:
- The pixel sample values.
- Throws:
NullPointerException- ifdataisnull.
public int[] getPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
Returns an array containing the samples for the pixels in the region specified by (x, y, w, h) in the specified data buffer. The array is ordered by pixels (that is, all the samples for the first pixel are grouped together, followed by all the samples for the second pixel, and so on). IfiArrayis notnull, it will be populated with the sample values and returned as the result of this function (this avoids allocating a new array instance).
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.iArray- an array to populate with the sample values and return as the result (ifnull, a new array will be allocated).data- the data buffer (nullnot permitted).
- Returns:
- The pixel sample values.
- Throws:
NullPointerException- ifdataisnull.
public abstract int getSample(int x, int y, int b, DataBuffer data)
Returns the sample value for the pixel at (x, y) in the specified data buffer.
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.b- the band (in the range0togetNumBands() - 1).data- the data buffer (nullnot permitted).
- Returns:
- The sample value.
- Throws:
NullPointerException- ifdataisnull.
public double getSampleDouble(int x, int y, int b, DataBuffer data)
Returns the sample value for the pixel at (x, y) in the specified data buffer.
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.b- the band (in the range0togetNumBands() - 1).data- the data buffer (nullnot permitted).
- Returns:
- The sample value.
- Throws:
NullPointerException- ifdataisnull.
- See Also:
getSample(int,int,int,DataBuffer)
public float getSampleFloat(int x, int y, int b, DataBuffer data)
Returns the sample value for the pixel at (x, y) in the specified data buffer.
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.b- the band (in the range0togetNumBands() - 1).data- the data buffer (nullnot permitted).
- Returns:
- The sample value.
- Throws:
NullPointerException- ifdataisnull.
- See Also:
getSample(int,int,int,DataBuffer)
public abstract int[] getSampleSize()
Returns an array containing the size (in bits) for each band accessed by theSampleModel.
- Returns:
- An array.
- See Also:
getSampleSize(int)
public abstract int getSampleSize(int band)
Returns the size (in bits) of the samples for the specified band.
- Parameters:
band- the band (in the range0togetNumBands() - 1).
- Returns:
- The sample size (in bits).
public double[] getSamples(int x, int y, int w, int h, int b, double[] dArray, DataBuffer data)
Returns an array containing the samples from one band for the pixels in the region specified by (x, y, w, h) in the specified data buffer. IfdArrayis notnull, it will be populated with the sample values and returned as the result of this function (this avoids allocating a new array instance).
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.b- the band (in the range0to getNumBands() - 1).dArray- an array to populate with the sample values and return as the result (ifnull, a new array will be allocated).data- the data buffer (nullnot permitted).
- Returns:
- The sample values.
- Throws:
NullPointerException- ifdataisnull.
public float[] getSamples(int x, int y, int w, int h, int b, float[] fArray, DataBuffer data)
Returns an array containing the samples from one band for the pixels in the region specified by (x, y, w, h) in the specified data buffer. IffArrayis notnull, it will be populated with the sample values and returned as the result of this function (this avoids allocating a new array instance).
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.b- the band (in the range0to getNumBands() - 1).fArray- an array to populate with the sample values and return as the result (ifnull, a new array will be allocated).data- the data buffer (nullnot permitted).
- Returns:
- The sample values.
- Throws:
NullPointerException- ifdataisnull.
public int[] getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
Returns an array containing the samples from one band for the pixels in the region specified by (x, y, w, h) in the specified data buffer. IfiArrayis notnull, it will be populated with the sample values and returned as the result of this function (this avoids allocating a new array instance).
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.b- the band (in the range0to getNumBands() - 1).iArray- an array to populate with the sample values and return as the result (ifnull, a new array will be allocated).data- the data buffer (nullnot permitted).
- Returns:
- The sample values.
- Throws:
NullPointerException- ifdataisnull.
public final int getWidth()
Returns the width of the pixel data accessible via thisSampleModel.
- Returns:
- The width.
- See Also:
getHeight()
public void setPixel(int x, int y, double[] dArray, DataBuffer data)
Sets the samples for the pixel at (x, y) in the specified data buffer to the specified values.
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.dArray- the sample values (nullnot permitted).data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- if eitherdArrayordataisnull.
public void setPixel(int x, int y, float[] fArray, DataBuffer data)
Sets the samples for the pixel at (x, y) in the specified data buffer to the specified values.
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.fArray- the sample values (nullnot permitted).data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- if eitherfArrayordataisnull.
public void setPixel(int x, int y, int[] iArray, DataBuffer data)
Sets the samples for the pixel at (x, y) in the specified data buffer to the specified values.
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.iArray- the sample values (nullnot permitted).data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- if eitheriArrayordataisnull.
public void setPixels(int x, int y, int w, int h, double[] dArray, DataBuffer data)
Sets the sample values for the pixels in the region specified by (x, y, w, h) in the specified data buffer. The array is ordered by pixels (that is, all the samples for the first pixel are grouped together, followed by all the samples for the second pixel, and so on).
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.dArray- the pixel sample values (nullnot permitted).data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- if eitherdArrayordataisnull.
public void setPixels(int x, int y, int w, int h, float[] fArray, DataBuffer data)
Sets the sample values for the pixels in the region specified by (x, y, w, h) in the specified data buffer. The array is ordered by pixels (that is, all the samples for the first pixel are grouped together, followed by all the samples for the second pixel, and so on).
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.fArray- the pixel sample values (nullnot permitted).data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- if eitherfArrayordataisnull.
public void setPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
Sets the sample values for the pixels in the region specified by (x, y, w, h) in the specified data buffer. The array is ordered by pixels (that is, all the samples for the first pixel are grouped together, followed by all the samples for the second pixel, and so on).
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.iArray- the pixel sample values (nullnot permitted).data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- if eitheriArrayordataisnull.
public void setSample(int x, int y, int b, double s, DataBuffer data)
Sets the sample value for a band for the pixel at (x, y) in the specified data buffer.
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.b- the band (in the range0togetNumBands() - 1).s- the sample value.data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- ifdataisnull.
public void setSample(int x, int y, int b, float s, DataBuffer data)
Sets the sample value for a band for the pixel at (x, y) in the specified data buffer.
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.b- the band (in the range0togetNumBands() - 1).s- the sample value.data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- ifdataisnull.
public abstract void setSample(int x, int y, int b, int s, DataBuffer data)
Sets the sample value for a band for the pixel at (x, y) in the specified data buffer.
- Parameters:
x- the x-coordinate of the pixel.y- the y-coordinate of the pixel.b- the band (in the range0togetNumBands() - 1).s- the sample value.data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- ifdataisnull.
public void setSamples(int x, int y, int w, int h, int b, double[] dArray, DataBuffer data)
Sets the sample values for one band for the pixels in the region specified by (x, y, w, h) in the specified data buffer.
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.b- the band (in the range0to getNumBands() - 1).dArray- the sample values (nullnot permitted).data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- if eitheriArrayordataisnull.
public void setSamples(int x, int y, int w, int h, int b, float[] fArray, DataBuffer data)
Sets the sample values for one band for the pixels in the region specified by (x, y, w, h) in the specified data buffer.
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.b- the band (in the range0to getNumBands() - 1).fArray- the sample values (nullnot permitted).data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- if eitheriArrayordataisnull.
public void setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
Sets the sample values for one band for the pixels in the region specified by (x, y, w, h) in the specified data buffer.
- Parameters:
x- the x-coordinate of the top-left pixel.y- the y-coordinate of the top-left pixel.w- the width of the region of pixels.h- the height of the region of pixels.b- the band (in the range0to getNumBands() - 1).iArray- the sample values (nullnot permitted).data- the data buffer (nullnot permitted).
- Throws:
NullPointerException- if eitheriArrayordataisnull.