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| コンストラクタと説明 |
|---|
BandedSampleModel(int dataType, int w, int h, int numBands)
指定されたパラメータを使って BandedSampleModel を構築します。
|
BandedSampleModel(int dataType, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets)
指定されたパラメータを使って BandedSampleModel を構築します。
|
| 修飾子と型 | メソッドと説明 |
|---|---|
SampleModel |
createCompatibleSampleModel(int w, int h)
指定された幅と高さを持つ新しい BandedSampleModel を作成します。
|
DataBuffer |
createDataBuffer()
この BandedSampleModel に対応する DataBuffer を作成します。DataBuffer のデータ型、バンク数、およびサイズは、この BandedSampleModel と一致します。
|
SampleModel |
createSubsetSampleModel(int[] bands)
この BandedSampleModel のバンドのサブセットを持つ新しい BandedSampleModel を作成します。
|
Object |
getDataElements(int x, int y, Object obj, DataBuffer data)
transferType 型のプリミティブ配列内の 1 つのピクセルのデータを返します。
|
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 配列として返します。サンプルは、データ配列要素ごとに 1 つです。
|
int |
getSample(int x, int y, int b, DataBuffer data)
(x, y) に位置するピクセルの、指定されたバンド内のサンプルを int として返します。
|
double |
getSampleDouble(int x, int y, int b, DataBuffer data)
(x, y) に位置するピクセルの指定されたバンド内のサンプルを double として返します。
|
float |
getSampleFloat(int x, int y, int b, DataBuffer data)
(x, y) に位置するピクセルの指定されたバンド内のサンプルを float として返します。
|
int[] |
getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
指定されたピクセル矩形に使う、指定されたバンド内のサンプルを int 配列として返します。データ配列要素にサンプル 1 個が対応します。
|
int |
hashCode()
オブジェクトのハッシュコード値を返します。
|
void |
setDataElements(int x, int y, Object obj, DataBuffer data)
指定された DataBuffer の 1 つのピクセルのデータを、TransferType 型のプリミティブ配列から設定します。
|
void |
setPixel(int x, int y, int[] iArray, DataBuffer data)
サンプルの int 配列を入力として使って DataBuffer 内のピクセルを設定します。
|
void |
setPixels(int x, int y, int w, int h, int[] iArray, DataBuffer data)
矩形のピクセルのサンプルすべてを、配列要素ごとに 1 つのサンプルが格納されている int 配列から設定します。
|
void |
setSample(int x, int y, int b, double s, DataBuffer data)
double を入力として使用し、DataBuffer 内の (x, y) に位置するピクセルの、指定されたバンド内のサンプルを設定します。
|
void |
setSample(int x, int y, int b, float s, DataBuffer data)
float を入力として使用し、DataBuffer 内の (x, y) に位置するピクセルの、指定されたバンド内のサンプルを設定します。
|
void |
setSample(int x, int y, int b, int s, DataBuffer data)
int を入力とし、DataBuffer の (x,y) に位置するピクセルの、指定されたバンドのサンプルを設定します。
|
void |
setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
データ配列要素あたり 1 個のサンプルを格納している 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、クラス: ComponentSampleModelw - 結果として得られる BandedSampleModel の幅h - 結果として得られる BandedSampleModel の高さBandedSampleModel。IllegalArgumentException - w または h が Integer.MAX_VALUE または Integer.MIN_VALUE と等しい場合IllegalArgumentException - dataType がサポートされているデータ型でない場合public SampleModel createSubsetSampleModel(int[] bands)
createSubsetSampleModel、クラス: ComponentSampleModelbands - この ComponentSampleModel のバンドのサブセットComponentSampleModel のバンドのサブセットで作成された ComponentSampleModel。RasterFormatException - バンド数がこのサンプルモデル内のバンク数より多い場合。IllegalArgumentException - dataType がサポートされているデータ型でない場合public DataBuffer createDataBuffer()
createDataBuffer、クラス: ComponentSampleModelComponentSampleModel とデータ型、バンク数、およびサイズが同じ DataBuffer。IllegalArgumentException - dataType がサポートされている型でない場合。public Object getDataElements(int x, int y, Object obj, DataBuffer data)
次のコードは、BandedSampleModel bsm1 によってストレージレイアウトが記述されている DataBuffer db1 から、BandedSampleModel bsm2 によってストレージレイアウトが記述されている DataBuffer db2 へ、1 ピクセルのデータを転送する例です。通常、この転送は getPixel と setPixel を使うよりも効率的です。
BandedSampleModel bsm1, bsm2;
DataBufferInt db1, db2;
bsm2.setDataElements(x, y, bsm1.getDataElements(x, y, null, db1),
db2);
SampleModel のバンド数が同じで、対応するバンドのサンプルあたりのビット数が同じで、TransferType が同じである場合、2 つの DataBuffer/SampleModel 間の転送には、getDataElements/setDataElements を使用するのが適切です。
obj が null でない場合は、TransferType 型のプリミティブ配列になります。そうでない場合は、ClassCastException がスローされます。座標が境界内にない場合、または obj が null でなく、ピクセルデータを格納するために十分なサイズでない場合は、ArrayIndexOutOfBoundsException がスローされます。
getDataElements、クラス: ComponentSampleModelx - ピクセル位置の X 座標y - ピクセル位置の Y 座標obj - null でない場合は、ピクセルデータが返されるプリミティブ配列。data - イメージデータを格納する DataBuffer。setDataElements(int, int, Object, DataBuffer)public int[] getPixel(int x,
int y,
int[] iArray,
DataBuffer data)
getPixel、クラス: ComponentSampleModelx - ピクセル位置の X 座標y - ピクセル位置の Y 座標iArray - null でない場合、この配列内のサンプルを返しますdata - イメージデータを格納する DataBuffersetPixel(int, int, int[], DataBuffer)public int[] getPixels(int x,
int y,
int w,
int h,
int[] iArray,
DataBuffer data)
getPixels、クラス: ComponentSampleModelx - 左上のピクセル位置の X 座標y - 左上のピクセル位置の Y 座標w - ピクセル矩形の幅h - ピクセル矩形の高さiArray - null でない場合、この配列内のサンプルを返しますdata - イメージデータを格納する DataBuffersetPixels(int, int, int, int, int[], DataBuffer)public int getSample(int x,
int y,
int b,
DataBuffer data)
getSample、クラス: ComponentSampleModelx - ピクセル位置の X 座標y - ピクセル位置の Y 座標b - 返されるバンドdata - イメージデータを格納する DataBuffersetSample(int, int, int, int, DataBuffer)public float getSampleFloat(int x,
int y,
int b,
DataBuffer data)
getSampleFloat、クラス: ComponentSampleModelx - ピクセル位置の X 座標y - ピクセル位置の Y 座標b - 返されるバンドdata - イメージデータを格納する DataBufferpublic double getSampleDouble(int x,
int y,
int b,
DataBuffer data)
getSampleDouble、クラス: ComponentSampleModelx - ピクセル位置の X 座標y - ピクセル位置の Y 座標b - 返されるバンドdata - イメージデータを格納する DataBufferpublic int[] getSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray,
DataBuffer data)
getSamples、クラス: ComponentSampleModelx - 左上のピクセル位置の X 座標y - 左上のピクセル位置の Y 座標w - ピクセル矩形の幅h - ピクセル矩形の高さb - 返されるバンドiArray - null でない場合、この配列内のサンプルを返しますdata - イメージデータを格納する DataBuffersetSamples(int, int, int, int, int, int[], DataBuffer)public void setDataElements(int x,
int y,
Object obj,
DataBuffer data)
次のコードは、BandedSampleModel bsm1 によってストレージレイアウトが記述されている DataBuffer db1 から、BandedSampleModel bsm2 によってストレージレイアウトが記述されている DataBuffer db2 へ、1 ピクセルのデータを転送する例です。通常、この転送は getPixel と setPixel を使うよりも効率的です。
BandedSampleModel bsm1, bsm2;
DataBufferInt db1, db2;
bsm2.setDataElements(x, y, bsm1.getDataElements(x, y, null, db1),
db2);
SampleModel のバンド数が同じで、対応するバンドのサンプルあたりのビット数が同じで、TransferType が同じである場合、2 つの DataBuffer/SampleModel 間の転送には、getDataElements/setDataElements を使用するのが適切です。
obj は、TransferType 型のプリミティブ配列になります。そうでない場合は、ClassCastException がスローされます。座標が境界内にない場合、または obj がピクセルデータを格納するために十分なサイズでない場合は、ArrayIndexOutOfBoundsException がスローされます。
setDataElements、クラス: ComponentSampleModelx - ピクセル位置の X 座標y - ピクセル位置の Y 座標obj - null でない場合は、このオブジェクト内のプリミティブ配列を返すdata - イメージデータを格納する DataBuffergetDataElements(int, int, Object, DataBuffer)public void setPixel(int x,
int y,
int[] iArray,
DataBuffer data)
setPixel、クラス: ComponentSampleModelx - ピクセル位置の X 座標y - ピクセル位置の Y 座標iArray - int 配列形式の入力サンプルdata - イメージデータを格納する DataBuffergetPixel(int, int, int[], DataBuffer)public void setPixels(int x,
int y,
int w,
int h,
int[] iArray,
DataBuffer data)
setPixels、クラス: ComponentSampleModelx - 左上のピクセル位置の X 座標y - 左上のピクセル位置の Y 座標w - ピクセル矩形の幅h - ピクセル矩形の高さiArray - int 配列形式の入力サンプルdata - イメージデータを格納する DataBuffergetPixels(int, int, int, int, int[], DataBuffer)public void setSample(int x,
int y,
int b,
int s,
DataBuffer data)
setSample、クラス: ComponentSampleModelx - ピクセル位置の X 座標y - ピクセル位置の Y 座標b - 設定されるバンドs - int の入力サンプルdata - イメージデータを格納する DataBuffergetSample(int, int, int, DataBuffer)public void setSample(int x,
int y,
int b,
float s,
DataBuffer data)
setSample、クラス: ComponentSampleModelx - ピクセル位置の X 座標y - ピクセル位置の Y 座標b - 設定されるバンドs - float での入力サンプルdata - イメージデータを格納する DataBuffergetSample(int, int, int, DataBuffer)public void setSample(int x,
int y,
int b,
double s,
DataBuffer data)
setSample、クラス: ComponentSampleModelx - ピクセル位置の X 座標y - ピクセル位置の Y 座標b - 設定されるバンドs - double での入力サンプルdata - イメージデータを格納する DataBuffergetSample(int, int, int, DataBuffer)public void setSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray,
DataBuffer data)
setSamples、クラス: ComponentSampleModelx - 左上のピクセル位置の X 座標y - 左上のピクセル位置の Y 座標w - ピクセル矩形の幅h - ピクセル矩形の高さb - 設定されるバンドiArray - 入力サンプル配列data - イメージデータを格納する DataBuffergetSamples(int, int, int, int, int, int[], DataBuffer)public int hashCode()
ObjectHashMap によって提供されるハッシュテーブルなどの、ハッシュテーブルの利点のためにサポートされています。
hashCode の一般的な規則は次のとおりです。
equals の比較で使用される情報が変更されていなければ、hashCode メソッドは常に同じ整数を返す必要があります。ただし、この整数は同じアプリケーションの実行ごとに同じである必要はありません。
equals(Object) メソッドに従って 2 つのオブジェクトが等しい場合は、2 つの各オブジェクトに対する hashCode メソッドの呼び出しによって同じ整数の結果が生成される必要があります。
Object.equals(java.lang.Object) メソッドに従って 2 つのオブジェクトが等しくない場合は、2 つの各オブジェクトに対する hashCode メソッドの呼び出しによって異なる整数の結果が生成される必要はありません。ただし、プログラマは、等しくないオブジェクトに対して異なる整数の結果を生成すると、ハッシュテーブルのパフォーマンスが向上する可能性があることに注意するようにしてください。
クラス Object によって定義された hashCode メソッドは、可能なかぎり、異なるオブジェクトに対して異なる整数を返します。(これは通常、オブジェクトの内部アドレスを整数に変換することによって実装されますが、この実装テクニックは JavaTM プログラミング言語では必要ありません。)
hashCode、クラス: ComponentSampleModelObject.equals(java.lang.Object), System.identityHashCode(java.lang.Object) バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.