|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object java.awt.image.SampleModel
public abstract class SampleModel
此抽象類別定義一個提取圖像像素樣本的介面。所有圖像資料都被表示成一個像素集合。每個像素由多個樣本組成。樣本是一個圖像 band 的基本資料,band 由圖像中某一特定型別的所有樣本組成。例如,一個像素可能包含三個樣本,分別表示紅、綠、藍的份量。在包含此相素的圖像中有三個 band。其中一個 band 由圖像中所有像素的紅色樣本組成。第二個 band 由所有綠色樣本組成,第三個 band 由所有藍色樣本組成。像素可以以各種格式存儲。例如,特定 band 中的所有樣本可以連續存儲,單個像素的所有樣本也可以連續存儲。
SampleModel 的子類別指定它們能夠表示的樣本型別(例如,無符號 8 位 byte、有符號 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 形式返回指定 band 中對應於 (x,y) 處像素的樣本。 |
double |
getSampleDouble(int x,
int y,
int b,
DataBuffer data)
以 double 形式返回指定 band 中對應於 (x,y) 處像素的樣本。 |
float |
getSampleFloat(int x,
int y,
int b,
DataBuffer data)
以 float 形式返回指定 band 中對應於 (x,y) 處像素的樣本。 |
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 設置指定 band 中對應於 DataBuffer (x,y) 處像素的樣本。 |
void |
setSample(int x,
int y,
int b,
float s,
DataBuffer data)
使用輸入的 float 設置指定 band 中對應於 DataBuffer (x,y) 處像素的樣本。 |
abstract void |
setSample(int x,
int y,
int b,
int s,
DataBuffer data)
使用輸入的 int 設置指定 band 中對應於 DataBuffer (x,y) 處像素的樣本。 |
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
- 像素位置的 X 坐標y
- 像素位置的 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
(其存儲佈局由 SampleModel sm1
描述)傳輸到 DataBuffer db2
(其存儲佈局由 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
(其存儲佈局由 SampleModel sm1
描述)傳輸到 DataBuffer db2
(其存儲佈局由 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
(其存儲佈局由 SampleModel sm1
描述)傳輸到 DataBuffer db2
(其存儲佈局由 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
(其存儲佈局由 SampleModel sm1
描述)傳輸到 DataBuffer db2
(其存儲佈局由 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)
setSample(int, int, int, DataBuffer)
方法。如果坐標不在邊界內,則拋出 ArrayIndexOutOfBoundsException。
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)
setSample(int, int, int, DataBuffer)
方法。如果坐標不在邊界內,則拋出 ArrayIndexOutOfBoundsException。
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. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。