public final class BandedSampleModel extends ComponentSampleModel
TYPE_BYTE,
TYPE_USHORT,
TYPE_SHORT,
TYPE_INT,
TYPE_FLOAT,和
TYPE_DOUBLE数据类型
bandOffsets, bankIndices, numBands, numBanks, pixelStride, scanlineStridedataType, height, width| Constructor and Description |
|---|
BandedSampleModel(int dataType, int w, int h, int numBands)
构建一个与指定的参数bandedsamplemodel。
|
BandedSampleModel(int dataType, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets)
构建一个与指定的参数bandedsamplemodel。
|
| Modifier and Type | Method and Description |
|---|---|
SampleModel |
createCompatibleSampleModel(int w, int h)
创建具有指定宽度和高度的一种新的bandedsamplemodel。
|
DataBuffer |
createDataBuffer()
创建一个数据缓冲区,对应于这bandedsamplemodel,数据的缓存的数据类型,一些银行和规模将与BandedSampleModel一致。
|
SampleModel |
createSubsetSampleModel(int[] bands)
创建与这BandedSampleModel的一个子集带一个新的bandedsamplemodel。
|
Object |
getDataElements(int x, int y, Object obj, DataBuffer data)
返回在一个原始的数组类型transfertype单个像素数据。
|
int[] |
getPixel(int x, int y, int[] iArray, DataBuffer data)
返回一个int数组的指定像素样本。
|
int[] |
getPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
返回指定矩形的像素在一个int数组的所有样本,每一样本数据的数组元素。
|
int |
getSample(int x, int y, int b, DataBuffer data)
返回int样品在规定的频带的像素位于(x,y)。
|
double |
getSampleDouble(int x, int y, int b, DataBuffer data)
返回位于(X,Y)为双的像素指定的带中的样本。
|
float |
getSampleFloat(int x, int y, int b, DataBuffer data)
返回位于(X,Y)作为一个浮动的像素指定的带中的样本。
|
int[] |
getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
返回指定矩形的像素在一个int数组中指定带样本,每一样本数据的数组元素。
|
int |
hashCode()
返回一个对象的哈希代码值。
|
void |
setDataElements(int x, int y, Object obj, DataBuffer data)
设置从原始数组中指定的DataBuffer型transfertype单个像素的数据。
|
void |
setPixel(int x, int y, int[] iArray, DataBuffer data)
设置一个像素使用的样本输入一个int数组的数据缓存。
|
void |
setPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
设置从一个数组的数组元素包含每一个样本像素矩形样品。
|
void |
setSample(int x, int y, int b, double s, DataBuffer data)
设置指定的带样的像素位于(x,y)使用一个双输入的数据缓存。
|
void |
setSample(int x, int y, int b, float s, DataBuffer data)
设置指定的带样的像素位于(x,y)用于输入一个浮在数据缓存。
|
void |
setSample(int x, int y, int b, int s, DataBuffer data)
设置指定的带样的像素位于(x,y)用于输入一个int的数据缓存。
|
void |
setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
设置指定矩形的像素从一个int数组包含每一样本数据数组元素中指定带样品。
|
equals, getBandOffsets, getBankIndices, getNumDataElements, getOffset, getOffset, getPixelStride, getSampleSize, getSampleSize, getScanlineStridegetDataElements, getDataType, getHeight, getNumBands, getPixel, getPixel, getPixels, getPixels, getSamples, getSamples, getTransferType, getWidth, setDataElements, setPixel, setPixel, setPixels, setPixels, setSamples, setSamplespublic BandedSampleModel(int dataType,
int w,
int h,
int numBands)
dataType -样品的存储的数据类型。
w的宽度(像素)的图像数据描述区域。
h -高度(像素)的图像数据描述区域。
numBands -图像数据条带数。
IllegalArgumentException -如果
dataType之一是不支持的数据类型
public BandedSampleModel(int dataType,
int w,
int h,
int scanlineStride,
int[] bankIndices,
int[] bandOffsets)
dataType -样品的存储的数据类型。
w的宽度(像素)的图像数据描述区域。
h -高度(像素)的图像数据描述区域。
scanlineStride对图像数据的行步。
bankIndices -每个波段的银行指数。
bandOffsets -带偏移每个波段。
IllegalArgumentException -如果
dataType之一是不支持的数据类型
public SampleModel createCompatibleSampleModel(int w, int h)
createCompatibleSampleModel 方法重写,继承类
ComponentSampleModel
w -产生的
BandedSampleModel宽度
h -产生的
BandedSampleModel高度
BandedSampleModel。
IllegalArgumentException -如果
w或
h等于或
Integer.MIN_VALUE
Integer.MAX_VALUE
IllegalArgumentException -如果
dataType之一是不支持的数据类型
public SampleModel createSubsetSampleModel(int[] bands)
createSubsetSampleModel 方法重写,继承类
ComponentSampleModel
bands -从这个
ComponentSampleModel一个子带
ComponentSampleModel
ComponentSampleModel子集乐队创造了。
RasterFormatException如果带的数量大于该样本模型的银行数量。
IllegalArgumentException -如果
dataType之一是不支持的数据类型
public DataBuffer createDataBuffer()
createDataBuffer 方法重写,继承类
ComponentSampleModel
DataBuffer其数据类型、银行和数与本
ComponentSampleModel一致。
IllegalArgumentException -如果
dataType是不受支持的类型。
public Object getDataElements(int x, int y, Object obj, DataBuffer data)
下面的代码演示了一个像素传输数据从缓冲db1,其存储布局是通过bandedsamplemodel bsm1描述,对数据缓存db2,其存储布局是通过bandedsamplemodel bsm2描述。转移通常会比使用GetPixel / SetPixel更有效。
bandedsamplemodel BSM1,BSM2;databufferint DB1、DB2;BSM2。setdataelements(x,y,Bsm1。getdataelements(x,y,null,DB1),DB2);使用getdataelements / setdataelements两缓冲/ samplemodel如果SampleModels有相同数量的频带对合法之间传送带,对应每个样本的位数相同的号码,和transfertypes是相同的。
如果obj是非空的,它应该是一个原始的阵列式transfertype。否则,抛出ClassCastException。一个对象的大小时抛出可能如果坐标不界泛起,或如果obj是非空,不足以容纳像素数据。
getDataElements 方法重写,继承类
ComponentSampleModel
x的像素位置的x坐标
y的像素位置的y坐标
obj如果非空,其中原始数组返回像素数据。
data -包含图像数据的数据缓冲区。
setDataElements(int, int, Object, DataBuffer)
public int[] getPixel(int x,
int y,
int[] iArray,
DataBuffer data)
getPixel 方法重写,继承类
ComponentSampleModel
x的像素位置的x坐标
y的像素位置的y坐标
iArray如果非零,返回这个数组的样品
data -包含图像数据的数据缓冲区
setPixel(int, int, int[], DataBuffer)
public int[] getPixels(int x,
int y,
int w,
int h,
int[] iArray,
DataBuffer data)
getPixels 方法重写,继承类
ComponentSampleModel
x -左上角像素位置的x坐标
y -左上角像素位置的y坐标
w -像素矩形的宽度
h -像素矩形的高度
iArray如果非零,返回这个数组的样品
data -包含图像数据的数据缓冲区
setPixels(int, int, int, int, int[], DataBuffer)
public int getSample(int x,
int y,
int b,
DataBuffer data)
getSample 方法重写,继承类
ComponentSampleModel
x的像素位置的x坐标
y的像素位置的y坐标
b -带回来
data -包含图像数据的数据缓冲区
setSample(int, int, int, int, DataBuffer)
public float getSampleFloat(int x,
int y,
int b,
DataBuffer data)
getSampleFloat 方法重写,继承类
ComponentSampleModel
x的像素位置的x坐标
y的像素位置的y坐标
b -带回来
data -包含图像数据的数据缓冲区
public double getSampleDouble(int x,
int y,
int b,
DataBuffer data)
getSampleDouble 方法重写,继承类
ComponentSampleModel
x的像素位置的x坐标
y的像素位置的y坐标
b -带回来
data -包含图像数据的数据缓冲区
public int[] getSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray,
DataBuffer data)
getSamples 方法重写,继承类
ComponentSampleModel
x -左上角像素位置的x坐标
y -左上角像素位置的y坐标
w -像素矩形的宽度
h -像素矩形的高度
b -带回来
iArray如果非零,返回这个数组的样品
data -包含图像数据的数据缓冲区
setSamples(int, int, int, int, int, int[], DataBuffer)
public void setDataElements(int x,
int y,
Object obj,
DataBuffer data)
下面的代码演示了一个像素数据传输从DataBuffer db1,其存储布局是通过bandedsamplemodel bsm1描述,DataBuffer db2,其存储布局是通过bandedsamplemodel bsm2描述。转移通常会比使用GetPixel / SetPixel更有效。
bandedsamplemodel BSM1,BSM2;databufferint DB1、DB2;BSM2。setdataelements(x,y,Bsm1。getdataelements(x,y,null,DB1),DB2);使用getdataelements / setdataelements两缓冲/ samplemodel如果SampleModels有相同数量的频带对合法之间传送带,对应每个样本的位数相同的号码,和transfertypes是相同的。
目标必须是一个原始的数组类型transfertype。否则,抛出ClassCastException。一个对象的大小时抛出可能如果坐标不界泛起,或如果obj是不够容纳的像素数据。
setDataElements 方法重写,继承类
ComponentSampleModel
x的像素位置的x坐标
y的像素位置的y坐标
obj如果非零,返回此对象的原始数组
data -包含图像数据的数据缓冲区
getDataElements(int, int, Object, DataBuffer)
public void setPixel(int x,
int y,
int[] iArray,
DataBuffer data)
setPixel 方法重写,继承类
ComponentSampleModel
x的像素位置的x坐标
y的像素位置的y坐标
iArray -在一个int数组的输入样本
data -包含图像数据的数据缓冲区
getPixel(int, int, int[], DataBuffer)
public void setPixels(int x,
int y,
int w,
int h,
int[] iArray,
DataBuffer data)
setPixels 方法重写,继承类
ComponentSampleModel
x -左上角像素位置的x坐标
y -左上角像素位置的y坐标
w -像素矩形的宽度
h -像素矩形的高度
iArray -在一个int数组的输入样本
data -包含图像数据的数据缓冲区
getPixels(int, int, int, int, int[], DataBuffer)
public void setSample(int x,
int y,
int b,
int s,
DataBuffer data)
setSample 方法重写,继承类
ComponentSampleModel
x的像素位置的x坐标
y的像素位置的y坐标
b -带套
s -输入样本作为int
data -包含图像数据的数据缓冲区
getSample(int, int, int, DataBuffer)
public void setSample(int x,
int y,
int b,
float s,
DataBuffer data)
setSample 方法重写,继承类
ComponentSampleModel
x的像素位置的x坐标
y的像素位置的y坐标
b -带套
s -输入样本为一个浮动
data -包含图像数据的数据缓冲区
getSample(int, int, int, DataBuffer)
public void setSample(int x,
int y,
int b,
double s,
DataBuffer data)
setSample 方法重写,继承类
ComponentSampleModel
x的像素位置的x坐标
y的像素位置的y坐标
b -带套
s -输入样本为双
data -包含图像数据的数据缓冲区
getSample(int, int, int, DataBuffer)
public void setSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray,
DataBuffer data)
setSamples 方法重写,继承类
ComponentSampleModel
x -左上角像素位置的x坐标
y -左上角像素位置的y坐标
w -像素矩形的宽度
h -像素矩形的高度
b -带套
iArray -输入样本阵列
data -包含图像数据的数据缓冲区
getSamples(int, int, int, int, int, int[], DataBuffer)
public int hashCode()
Object
HashMap利益支持。
对hashCode一般合同:
hashCode方法总是返回相同的整数,没有提供信息用于equals比较的对象被修改。这个整数不需要保持一致,从一个应用程序的一个执行到另一个执行相同的应用程序。equals(Object)法两个对象是相等的,那么调用hashCode方法每一个对象必须产生相同的整数结果。Object.equals(java.lang.Object)法两个对象是不平等的,然后调用hashCode方法每一个对象必须产生不同的整数结果。然而,程序员应该意识到,产生不同的整数结果的不平等的对象可能会提高哈希表的性能。尽合理的切实可行,由类Object定义hashCode方法返回不同的对象不同的整数。(这通常是通过将该对象的内部地址转换成一个整数,但这不是实现实现技术的™java编程语言。要求)
hashCode 方法重写,继承类
ComponentSampleModel
Object.equals(java.lang.Object),
System.identityHashCode(java.lang.Object)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.