|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object java.awt.image.SampleModel
public abstract class SampleModel
此抽象类定义了一个提取图像像素样本的接口。所有图像数据都被表示成一个像素集合。每个像素都由许多样本组成。样本是一个图像 band 的基本数据,band 由图像中某一特定类型的所有样本组成。例如,一个像素可能包含三个样本,分别表示红、绿、蓝的分量。在包含此相素的图像中有三个 band。其中一个 band 由图像中所有像素的红色样本组成。第二个 band 由所有绿色样本组成,第三个 band 由所有蓝色样本组成。像素可以以各种格式存储。例如,特定 band 中的所有样本可以连续存储,或者单个像素的所有样本可以连续存储。
SampleModel 的子类指定它们能够表示的样本类型(例如,无符号 8 位字节、有符号 16 位 short 型等),并且可以指定如何在存储器中组织样本。在 Java 2D(tm) API 中,内置的图像处理运算符可能无法处理所有可能的样本类型,但通常可以处理 16 位或 16 位以下的无符号整数样本。某些运算符支持更大范围的样本类型。
像素的集合被表示为一个 Raster,它由 DataBuffer 和 SampleModel 组成。SampleModel 允许访问 DataBuffer 中的样本,并提供程序员可以用来直接操作 DataBuffer 中样本和像素的低级别信息。
此类通常是处理图像的一个回调方法。更为有效的代码将 SampleModel 强行转换为适当的子类,并提取直接操作 DataBuffer 中的像素所需的信息。
DataBuffer
,
Raster
,
ComponentSampleModel
,
PixelInterleavedSampleModel
,
BandedSampleModel
,
MultiPixelPackedSampleModel
,
SinglePixelPackedSampleModel
字段摘要 | |
---|---|
protected int |
dataType
存储像素数据的 DataBuffer 的数据类型。 |
protected int |
height
此 SampleModel 描述的图像数据区域的像素高度。 |
protected int |
numBands
此 SampleModel 描述的图像数据的 band 数。 |
protected int |
width
此 SampleModel 描述的图像数据区域的像素宽度。 |
构造方法摘要 | |
---|---|
SampleModel(int dataType,
int w,
int h,
int numBands)
构造一个具有指定参数的 SampleModel。 |
方法摘要 | |
---|---|
abstract SampleModel |
createCompatibleSampleModel(int w,
int h)
创建一个用此 SampleModel 的格式描述数据但宽度和高度不同的 SampleModel。 |
abstract DataBuffer |
createDataBuffer()
创建一个对应于此 SampleModel 的 DataBuffer。 |
abstract SampleModel |
createSubsetSampleModel(int[] bands)
创建一个新 SampleModel,它具有此 SampleModel 的 band 子集。 |
Object |
getDataElements(int x,
int y,
int w,
int h,
Object obj,
DataBuffer data)
返回 TransferType 类型基本数组中指定像素矩形的像素数据。 |
abstract Object |
getDataElements(int x,
int y,
Object obj,
DataBuffer data)
返回 TransferType 类型的基本数组中单个像素的数据。 |
int |
getDataType()
返回存储像素数据的 DataBuffer 的数据类型。 |
int |
getHeight()
返回像素高度。 |
int |
getNumBands()
返回图像数据的总 band 数。 |
abstract int |
getNumDataElements()
返回通过 getDataElements 和 setDataElements 方法传输一个像素所需的数据元素数。 |
double[] |
getPixel(int x,
int y,
double[] dArray,
DataBuffer data)
在一个 double 数组中返回指定像素的样本。 |
float[] |
getPixel(int x,
int y,
float[] fArray,
DataBuffer data)
在一个 float 数组中返回指定像素的样本。 |
int[] |
getPixel(int x,
int y,
int[] iArray,
DataBuffer data)
在一个 int 数组中返回指定像素的样本,每个数组元素一个样本。 |
double[] |
getPixels(int x,
int y,
int w,
int h,
double[] dArray,
DataBuffer data)
在一个 double 数组中返回像素矩形的所有样本,每个数组元素一个样本。 |
float[] |
getPixels(int x,
int y,
int w,
int h,
float[] fArray,
DataBuffer data)
在一个 float 数组中返回像素矩形的所有样本,每个数组元素一个样本。 |
int[] |
getPixels(int x,
int y,
int w,
int h,
int[] iArray,
DataBuffer data)
在一个 int 数组中返回像素矩形的所有样本,每个数组元素一个样本。 |
abstract int |
getSample(int x,
int y,
int b,
DataBuffer data)
以 int 形式返回 (x,y) 处像素的指定 band 中的样本。 |
double |
getSampleDouble(int x,
int y,
int b,
DataBuffer data)
以 double 形式返回 (x,y) 处像素的指定 band 中的样本。 |
float |
getSampleFloat(int x,
int y,
int b,
DataBuffer data)
以 float 形式返回 (x,y) 处像素的指定 band 中的样本。 |
double[] |
getSamples(int x,
int y,
int w,
int h,
int b,
double[] dArray,
DataBuffer data)
在一个 double 数组中返回指定像素矩形的指定 band 的样本,每个数组元素一个样本。 |
float[] |
getSamples(int x,
int y,
int w,
int h,
int b,
float[] fArray,
DataBuffer data)
在一个 float 数组中返回指定像素矩形的指定 band 的样本,每个数组元素一个样本。 |
int[] |
getSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray,
DataBuffer data)
在一个 int 数组中返回指定像素矩形的指定 band 的样本,每个数组元素一个样本。 |
abstract int[] |
getSampleSize()
返回所有 band 样本(以位为单位)的大小。 |
abstract int |
getSampleSize(int band)
返回指定 band 样本(以位为单位)的大小。 |
int |
getTransferType()
返回通过 getDataElements 和 setDataElements 方法传输像素所使用的 TransferType。 |
int |
getWidth()
返回像素宽度。 |
void |
setDataElements(int x,
int y,
int w,
int h,
Object obj,
DataBuffer data)
根据 TransferType 类型的基本数组设置指定 DataBuffer 中像素矩形的数据。 |
abstract void |
setDataElements(int x,
int y,
Object obj,
DataBuffer data)
根据 TransferType 类型的基本数组设置指定 DataBuffer 中单个像素的数据。 |
void |
setPixel(int x,
int y,
double[] dArray,
DataBuffer data)
使用输入样本的 double 数组设置 DataBuffer 中的像素。 |
void |
setPixel(int x,
int y,
float[] fArray,
DataBuffer data)
使用输入样本的 float 数组设置 DataBuffer 中的像素。 |
void |
setPixel(int x,
int y,
int[] iArray,
DataBuffer data)
使用输入样本的 int 数组设置 DataBuffer 中的像素。 |
void |
setPixels(int x,
int y,
int w,
int h,
double[] dArray,
DataBuffer data)
根据为每个数组元素包含一个样本的 double 数组设置像素矩形的所有样本。 |
void |
setPixels(int x,
int y,
int w,
int h,
float[] fArray,
DataBuffer data)
根据为每个数组元素包含一个样本的 float 数组设置像素矩形的所有样本。 |
void |
setPixels(int x,
int y,
int w,
int h,
int[] iArray,
DataBuffer data)
根据为每个数组元素包含一个样本的 int 数组设置像素矩形的所有样本。 |
void |
setSample(int x,
int y,
int b,
double s,
DataBuffer data)
使用输入的 double 设置 DataBuffer 中 (x,y) 处像素的指定 band 中的样本。 |
void |
setSample(int x,
int y,
int b,
float s,
DataBuffer data)
使用输入的 float 设置 DataBuffer 中 (x,y) 处像素的指定 band 中的样本。 |
abstract void |
setSample(int x,
int y,
int b,
int s,
DataBuffer data)
使用输入的 int 设置 DataBuffer 中 (x,y) 处像素的指定 band 中的样本。 |
void |
setSamples(int x,
int y,
int w,
int h,
int b,
double[] dArray,
DataBuffer data)
根据为每个数组元素包含一个样本的 double 数组设置指定像素矩形的指定 band 中的样本。 |
void |
setSamples(int x,
int y,
int w,
int h,
int b,
float[] fArray,
DataBuffer data)
根据为每个数组元素包含一个样本的 float 数组设置指定像素矩形的指定 band 中的样本。 |
void |
setSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray,
DataBuffer data)
根据为每个数组元素包含一个样本的 int 数组设置指定像素矩形的指定 band 中的样本。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段详细信息 |
---|
protected int width
protected int height
protected int numBands
protected int dataType
DataBuffer
构造方法详细信息 |
---|
public SampleModel(int dataType, int w, int h, int numBands)
dataType
- 存储像素数据的 DataBuffer 的数据类型。w
- 图像数据区域的(像素)宽度。h
- 图像数据区域的(像素)高度。numBands
- 图像数据的 band 数。
IllegalArgumentException
- 如果 w
或 h
不大于 0
IllegalArgumentException
- 如果 w
和 h
所产生的结果大于 Integer.MAX_VALUE
IllegalArgumentException
- 如果 dataType
不是受支持的数据类型之一方法详细信息 |
---|
public final int getWidth()
SampleModel
描述的图像数据区域的像素宽度。public final int getHeight()
SampleModel
描述的图像数据区域的像素高度。public final int getNumBands()
SampleModel
描述的图像数据的 band 数。public abstract int getNumDataElements()
getDataElements(int, int, Object, DataBuffer)
,
getDataElements(int, int, int, int, Object, DataBuffer)
,
setDataElements(int, int, Object, DataBuffer)
,
setDataElements(int, int, int, int, Object, DataBuffer)
,
getTransferType()
public final int getDataType()
public int getTransferType()
getDataElements(int, int, Object, DataBuffer)
,
getDataElements(int, int, int, int, Object, DataBuffer)
,
setDataElements(int, int, Object, DataBuffer)
,
setDataElements(int, int, int, int, Object, DataBuffer)
,
getNumDataElements()
,
DataBuffer
public int[] getPixel(int x, int y, int[] iArray, DataBuffer data)
x, y
- 像素位置的坐标iArray
- 如果为非 null,则返回此数组中的样本data
- 包含图像数据的 DataBuffer
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 iArray 太小不能容纳输出。setPixel(int, int, int[], DataBuffer)
public abstract Object getDataElements(int x, int y, Object obj, DataBuffer data)
以下代码阐释了如何将一个像素的数据从 DataBuffer db1
传输到 DataBuffer db2
,前者的存储布局由 SampleModel sm1
描述,后者的存储布局由 SampleModel sm2
描述。该传输通常比使用 getPixel/setPixel 更有效。
SampleModel sm1, sm2; DataBuffer db1, db2; sm2.setDataElements(x, y, sm1.getDataElements(x, y, null, db1), db2);如果 SampleModel 具有相同的 band 数量,相应 band 的每个样本具有相同的位数,且 TransferType 相同,则使用 getDataElements/setDataElements 在两个 DataBuffer/SampleModel 对之间传输是合法的。
如果 obj 为非 null,则它应是 TransferType 类型的基本数组。否则抛出 ClassCastException。如果坐标不在边界内,或者 obj 为非 null 且不足以保存像素数据,则抛出 ArrayIndexOutOfBoundsException。
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。obj
- 如果为非 null,则 obj 是返回像素数据的基本数组。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 obj 太小不能容纳输出。getNumDataElements()
,
getTransferType()
,
DataBuffer
,
setDataElements(int, int, Object, DataBuffer)
public Object getDataElements(int x, int y, int w, int h, Object obj, DataBuffer data)
以下代码阐释了如何将一个像素矩形区域的数据从 DataBuffer db1
传输到 DataBuffer db2
,前者的存储布局由 SampleModel sm1
描述,后者的存储布局由 SampleModel sm2
描述。该传输通常比使用 getPixels/setPixels 更有效。
SampleModel sm1, sm2; DataBuffer db1, db2; sm2.setDataElements(x, y, w, h, sm1.getDataElements(x, y, w, h, null, db1), db2);如果 SampleModel 具有相同的 band 数量,相应 band 的每个样本具有相同的位数,且 TransferType 相同,则使用 getDataElements/setDataElements 在两个 DataBuffer/SampleModel 对之间传输是合法的。
如果 obj 为非 null,则它应是 TransferType 类型的基本数组。否则抛出 ClassCastException。如果坐标不在边界内,或者 obj 为非 null 且大小不足以保存像素数据,则抛出 ArrayIndexOutOfBoundsException。
x
- 像素矩形的最小 X 坐标。y
- 像素矩形的最小 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。obj
- 如果为非 null,则 obj 是返回像素数据的基本数组。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 obj 太小不能容纳输出。getNumDataElements()
,
getTransferType()
,
setDataElements(int, int, int, int, Object, DataBuffer)
,
DataBuffer
public abstract void setDataElements(int x, int y, Object obj, DataBuffer data)
以下代码阐释了如何将一个像素的数据从 DataBuffer db1
传输到 DataBuffer db2
,前者的存储布局由 SampleModel sm1
描述,后者的存储布局由 SampleModel sm2
描述。该传输通常比使用 getPixel/setPixel 更有效。
SampleModel sm1, sm2; DataBuffer db1, db2; sm2.setDataElements(x, y, sm1.getDataElements(x, y, null, db1), db2);如果 SampleModel 具有相同的 band 数量,相应 band 的每个样本具有相同的位数,且 TransferType 相同,则使用 getDataElements/setDataElements 在两个 DataBuffer/SampleModel 对之间传输是合法的。
obj 必须是 TransferType 类型的基本数组。否则抛出 ClassCastException。如果坐标不在边界内,或者 obj 的大小不足以容纳像素数据,则抛出 ArrayIndexOutOfBoundsException。
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。obj
- 包含像素数据的基本数组。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 obj 太小不能容纳输入。getNumDataElements()
,
getTransferType()
,
getDataElements(int, int, Object, DataBuffer)
,
DataBuffer
public void setDataElements(int x, int y, int w, int h, Object obj, DataBuffer data)
以下代码阐释了如何将一个像素矩形区域的数据从 DataBuffer db1
传输到 DataBuffer db2
,前者的存储布局由 SampleModel sm1
描述,后者的存储布局由 SampleModel sm2
描述。该传输通常比使用 getPixels/setPixels 更有效。
SampleModel sm1, sm2; DataBuffer db1, db2; sm2.setDataElements(x, y, w, h, sm1.getDataElements(x, y, w, h, null, db1), db2);如果 SampleModel 具有相同的 band 数量,相应 band 的每个样本具有相同的位数,且 TransferType 相同,则使用 getDataElements/setDataElements 在两个 DataBuffer/SampleModel 对之间传输是合法的。
obj 必须是 TransferType 类型的基本数组。否则抛出 ClassCastException。如果坐标不在边界内,或者 obj 的大小不足以容纳像素数据,则抛出 ArrayIndexOutOfBoundsException。
x
- 像素矩形的最小 X 坐标。y
- 像素矩形的最小 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。obj
- 包含像素数据的基本数组。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 obj 太小不能容纳输入。getNumDataElements()
,
getTransferType()
,
getDataElements(int, int, int, int, Object, DataBuffer)
,
DataBuffer
public float[] getPixel(int x, int y, float[] fArray, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。fArray
- 如果为非 null,则在此数组中返回样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 fArray 太小不能容纳输出。setPixel(int, int, float[], DataBuffer)
public double[] getPixel(int x, int y, double[] dArray, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。dArray
- 如果为非 null,则在此数组中返回样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 dArray 太小不能容纳输出。setPixel(int, int, double[], DataBuffer)
public int[] getPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。iArray
- 如果为非 null,则在此数组中返回样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 iArray 太小不能容纳输出。setPixels(int, int, int, int, int[], DataBuffer)
public float[] getPixels(int x, int y, int w, int h, float[] fArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。fArray
- 如果为非 null,则在此数组中返回样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 fArray 太小不能容纳输出。setPixels(int, int, int, int, float[], DataBuffer)
public double[] getPixels(int x, int y, int w, int h, double[] dArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。dArray
- 如果为非 null,则在此数组中返回样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 dArray 太小不能容纳输出。setPixels(int, int, int, int, double[], DataBuffer)
public abstract int getSample(int x, int y, int b, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。b
- 要返回的 band。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内。setSample(int, int, int, int, DataBuffer)
public float getSampleFloat(int x, int y, int b, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。b
- 要返回的 band。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内。public double getSampleDouble(int x, int y, int b, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。b
- 要返回的 band。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内。public int[] getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。b
- 要返回的 band。iArray
- 如果为非 null,则在此数组中返回样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内,或者 iArray 太小不能容纳输出。setSamples(int, int, int, int, int, int[], DataBuffer)
public float[] getSamples(int x, int y, int w, int h, int b, float[] fArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。b
- 要返回的 band。fArray
- 如果为非 null,则在此数组中返回样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内,或者 fArray 太小不能容纳输出。setSamples(int, int, int, int, int, float[], DataBuffer)
public double[] getSamples(int x, int y, int w, int h, int b, double[] dArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。b
- 要返回的 band。dArray
- 如果为非 null,则在此数组中返回样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内,或者 dArray 太小不能容纳输出。setSamples(int, int, int, int, int, double[], DataBuffer)
public void setPixel(int x, int y, int[] iArray, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。iArray
- int 数组中的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 iArray 或 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 iArray 太小不能容纳输入。getPixel(int, int, int[], DataBuffer)
public void setPixel(int x, int y, float[] fArray, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。fArray
- float 数组中的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 fArray 或 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 fArray 太小不能容纳输入。getPixel(int, int, float[], DataBuffer)
public void setPixel(int x, int y, double[] dArray, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。dArray
- double 数组中的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 dArray 或 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 fArray 太小不能容纳输入。getPixel(int, int, double[], DataBuffer)
public void setPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。iArray
- int 数组中的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 iArray 或 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 iArray 太小不能容纳输入。getPixels(int, int, int, int, int[], DataBuffer)
public void setPixels(int x, int y, int w, int h, float[] fArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。fArray
- float 数组中的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 fArray 或 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 fArray 太小不能容纳输入。getPixels(int, int, int, int, float[], DataBuffer)
public void setPixels(int x, int y, int w, int h, double[] dArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。dArray
- double 数组中的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 dArray 或 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标不在边界内,或者 dArray 太小不能容纳输入。getPixels(int, int, int, int, double[], DataBuffer)
public abstract void setSample(int x, int y, int b, int s, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。b
- 要设置的 band。s
- int 形式的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内。getSample(int, int, int, DataBuffer)
public void setSample(int x, int y, int b, float s, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。b
- 要设置的 band。s
- float 形式的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内。getSample(int, int, int, DataBuffer)
public void setSample(int x, int y, int b, double s, DataBuffer data)
x
- 像素位置的 X 坐标。y
- 像素位置的 Y 坐标。b
- 要设置的 band。s
- double 形式的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内。getSample(int, int, int, DataBuffer)
public void setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。b
- 要设置的 band。iArray
- int 数组中的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 iArray 或 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内,或者 iArray 太小不能容纳输入。getSamples(int, int, int, int, int, int[], DataBuffer)
public void setSamples(int x, int y, int w, int h, int b, float[] fArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。b
- 要设置的 band。fArray
- float 数组中的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 fArray 或 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内,或者 fArray 太小不能容纳输入。getSamples(int, int, int, int, int, float[], DataBuffer)
public void setSamples(int x, int y, int w, int h, int b, double[] dArray, DataBuffer data)
x
- 左上角像素位置的 X 坐标。y
- 左上角像素位置的 Y 坐标。w
- 像素矩形的宽度。h
- 像素矩形的高度。b
- 要设置的 band。dArray
- double 数组中的输入样本。data
- 包含图像数据的 DataBuffer。
NullPointerException
- 如果 dArray 或 data 为 null。
ArrayIndexOutOfBoundsException
- 如果坐标或 band 索引不在边界内,或者 dArray 太小不能容纳输入。getSamples(int, int, int, int, int, double[], DataBuffer)
public abstract SampleModel createCompatibleSampleModel(int w, int h)
w
- 图像数据的宽度h
- 图像数据的高度
SampleModel
相同但大小不同的 SampleModel
。public abstract SampleModel createSubsetSampleModel(int[] bands)
bands
- 此 SampleModel
的 band 子集
SampleModel
的 band 子集的 SampleModel
。public abstract DataBuffer createDataBuffer()
SampleModel
的 DataBuffer
。public abstract int[] getSampleSize()
public abstract int getSampleSize(int band)
band
- 指定的 band
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。