在 transfertype 类型基本数组中返回单个像素的数据。对于 bandedsamplemodel,返回的数据与 data 类型相同,并将对每个数组元素返回一个样本。通常,obj 作为 null 传入,从而 object 将被自动创建,并具有正确的基本数据类型。
以下代码说明了如何将一个像素的数据从 databuffer db1
(其存储布局由 bandedsamplemodel bsm1
描述)传输到 databuffer db2
(其存储布局由 bandedsamplemodel bsm2
描述)。通常,该传输比使用 布局
iis7站长之家/setpixel 方法更高效。
bandedsamplemodel bsm1, bsm2;
databufferint db1, db2;
bsm2.setdataelements(x, y, bsm1.getdataelements(x, y, null, db1),
db2);
如果两个 samplemodel 具有相同的 band 数,相应 band 的每个样本具有相同的位数,且 transfertype 相同,则使用 getdataelements/setdataelements 在这两个 databuffer/samplemodel 对之间传输数据是合法的。
如果 obj 不为 null,则它应该是一个 transfertype 类型基本数组。否则抛出 classcastexception。如果坐标不在边界内部,或者 obj 不为 null 且大小不足以容纳像素数据,则抛出 arrayindexoutofboundsexception。
- 覆盖:
- 类
componentsamplemodel
中的 getdataelements
- 参数:
x
- 像素位置的 x 坐标y
- 像素位置的 y 坐标obj
- 如果不为 null,则为一个接收返回像素数据的基本数组。data
- 包含图像数据的 databuffer。
- 返回:
- 指定像素的数据。
- 另请参见:
setdataelements(int, int, object, databuffer)