Java プラットフォーム 1.2

java.awt.image
クラス SampleModel

java.lang.Object
  |
  +--java.awt.image.SampleModel
直接の既知のサブクラス:
ComponentSampleModel, MultiPixelPackedSampleModel, SinglePixelPackedSampleModel

public abstract class SampleModel
extends Object

この抽象クラスは、イメージのピクセルのサンプルを抽出するためのインタフェースを定義します。すべてのイメージデータはピクセルのコレクションとして表されます。各ピクセルは数多くのサンプルからなります。サンプルとは、イメージの 1 つのバンドのデータです。Java 2D API では、すべての組み込みイメージ処理および表示演算子は、符号なし整数値を表すサンプルを処理します。

ピクセルのコレクションは、DataBuffer と SampleModel からなる Raster として表されます。SampleModel を使うと、DataBuffer 内のサンプルにアクセスできます。また、DataBuffer でサンプルおよびピクセルを直接操作するためにプログラマが使用できる低レベルの情報を提供します。

このクラスは、一般にはイメージ処理のためのフォールバックメソッドです。より効果的にコードを記述すれば、適切なサブクラスに SampleModel をキャストして、DataBuffer のピクセルを直接操作するために必要な情報を取り出すこともできます。

関連項目:
DataBuffer, Raster, ComponentSampleModel, PixelInterleavedSampleModel, BandedSampleModel, MultiPixelPackedSampleModel, SinglePixelPackedSampleModel

フィールドの概要
protected  int dataType
          ピクセルデータを格納する DataBuffer のデータ型です。
protected  int height
          この SampleModel が記述するイメージデータの領域の高さ (ピクセル数) です。
protected  int numBands
          この SampleModel が記述するイメージデータのバンド数です。
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 を作成します。
 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 型のプリミティブ配列内の 1 つのピクセルのデータを返します。
 int getDataType()
          ピクセルデータが格納されている DataBuffer のデータ型を返します。
 int getHeight()
          高さをピクセル数で返します。
 int getNumBands()
          イメージデータのバンドの総数を返します。
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)
          (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 として返します。
 double[] getSamples(int x, int y, int w, int h, int b, double[] dArray, DataBuffer data)
          double 配列内の指定されたピクセル矩形の、指定されたバンドのサンプルを返します。
 float[] getSamples(int x, int y, int w, int h, int b, float[] fArray, DataBuffer data)
          float 配列内の指定されたピクセル矩形の、指定されたバンドのサンプルを返します。
 int[] getSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
          int 配列内の指定されたピクセルの矩形の、指定されたバンドのサンプルを返します。
abstract  int[] getSampleSize()
          すべてのバンドについて、サンプルのビットのサイズを返します。
abstract  int getSampleSize(int 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 内の 1 つのピクセルのデータを設定します。
 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)
          配列要素ごとに 1 つのサンプルが格納されている double 配列から、ピクセルの矩形のすべてのサンプルを設定します。
 void setPixels(int x, int y, int w, int h, float[] fArray, DataBuffer data)
          配列要素ごとに 1 つのサンプルが格納されている float 配列から、ピクセルの矩形のすべてのサンプルを設定します。
 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) に位置するピクセルの、指定されたバンド内のサンプルを設定します。
abstract  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, double[] dArray, DataBuffer data)
          配列要素ごとに 1 つのサンプルが格納されている double 配列から、指定されたピクセルの矩形の指定されたバンド内のサンプルを設定します。
 void setSamples(int x, int y, int w, int h, int b, float[] fArray, DataBuffer data)
          配列要素ごとに 1 つのサンプルが格納されている float 配列から、指定されたピクセルの矩形の指定されたバンド内のサンプルを設定します。
 void setSamples(int x, int y, int w, int h, int b, int[] iArray, DataBuffer data)
          配列要素ごとに 1 つのサンプルが格納されている int 配列から、指定されたピクセルの矩形の指定されたバンド内のサンプルを設定します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

width

protected int width
この SampleModel が記述するイメージデータの領域の幅 (ピクセル数) です。

height

protected int height
この SampleModel が記述するイメージデータの領域の高さ (ピクセル数) です。

numBands

protected int numBands
この SampleModel が記述するイメージデータのバンド数です。

dataType

protected int dataType
ピクセルデータを格納する DataBuffer のデータ型です。
関連項目:
DataBuffer
コンストラクタの詳細

SampleModel

public SampleModel(int dataType,
                   int w,
                   int h,
                   int numBands)
指定されたパラメータを使って SampleModel を構築します。
パラメータ:
dataType - ピクセルデータを格納する DataBuffer のデータ型
w - イメージデータの領域の幅 (ピクセル数)
h - イメージデータの領域の高さ (ピクセル数)
numBands - イメージデータのバンド数
メソッドの詳細

getWidth

public final int getWidth()
幅をピクセル数で返します。

getHeight

public final int getHeight()
高さをピクセル数で返します。

getNumBands

public final int getNumBands()
イメージデータのバンドの総数を返します。

getNumDataElements

public abstract int getNumDataElements()
getDataElements メソッドおよび setDataElements メソッドを使ってピクセルを転送するときに必要なデータ要素の数を返します。これらのメソッドを使って転送されるとき、SampleModel の実装に応じて、ピクセルはパックされた形式で転送される場合と、アンパックされた形式で転送される場合があります。これらのメソッドを使用した場合、ピクセルは getTransferType() で指定されたプリミティブ型の getNumDataElements() 要素の配列として転送されます。transferType はストレージデータ型と同じでも異なっていてもかまいません。
関連項目:
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()

getDataType

public final int getDataType()
ピクセルデータが格納されている DataBuffer のデータ型を返します。

getTransferType

public int getTransferType()
getDataElements メソッドおよび setDataElements メソッドを使ってピクセルを転送するときに使用される transferType を返します。これらのメソッドを使って転送されるとき、SampleModel の実装に応じて、ピクセルはパックされた形式で転送される場合と、アンパックされた形式で転送される場合があります。これらのメソッドを使用した場合、ピクセルは getTransferType() で指定されたプリミティブ型の getNumDataElements() 要素の配列として転送されます。transferType はストレージデータ型と同じも異なっていてもかまいません。transferType は DataBuffer で定義されている型のどれかになります。
関連項目:
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

getPixel

public int[] getPixel(int x,
                      int y,
                      int[] iArray,
                      DataBuffer data)
int 配列内の指定されたピクセルのサンプルを返します。配列要素ごとに 1 つのサンプルが返されます。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
iArray - null でない場合は、この配列内のサンプルを返す
data - イメージデータが格納されている DataBuffer

getDataElements

public abstract Object getDataElements(int x,
                                       int y,
                                       Object obj,
                                       DataBuffer data)
transferType 型のプリミティブ配列内の 1 つのピクセルのデータを返します。Java 2D API によってサポートされているイメージデータの場合は、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、または DataBuffer.TYPE_INT のどれかになります。データはパックされた形式で返されることもあり、その場合、データ転送の効率が上がります。通常は、Object が適切なプリミティブデータ型で自動的に作成されるように、obj には null を渡します。

次のコードは、SampleModel sm1 によってストレージレイアウトが記述されている DataBuffer db1 から、SampleModel sm2 によってストレージレイアウトが記述されている DataBuffer db2 へ、1 ピクセルのデータを転送する例です。通常、転送は getPixel/setPixel を使うよりも効率的です。

 	     SampleModel sm1, sm2;
	     DataBuffer db1, db2;
 	     sm2.setDataElements(x, y, sm1.getDataElements(x, y, null, db1), db2);
 
SampleModel のバンド数が同じで、対応するバンドのサンプル当りのビット数が同じで、transferType も同じである場合、2 つの DataBuffer/SampleModel のペアの間での転送のときは、getDataElements/setDataElements を使用するのが適切です。

obj が null でない場合は、transferType 型のプリミティブ配列になります。そうでない場合は、ClassCastException がスローされます。座標が境界内にない場合、または obj が null でなく、ピクセルデータを格納するために十分なサイズでない場合は、ArrayIndexOutOfBoundsException がスローされることもあります。

パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
obj - null でない場合は、返されたピクセルデータの入るプリミティブ配列
data - イメージデータが格納されている DataBuffer
関連項目:
getNumDataElements(), getTransferType(), DataBuffer

getDataElements

public Object getDataElements(int x,
                              int y,
                              int w,
                              int h,
                              Object obj,
                              DataBuffer data)
transferType 型のプリミティブ配列の、指定されたピクセル矩形のピクセルデータを返します。Java 2D API によってサポートされているイメージデータの場合は、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、または DataBuffer.TYPE_INT のどれかになります。データはパックされた形式で返されることもあり、その場合、データ転送の効率が上がります。通常は、Object が正しいプリミティブデータ型で自動的に作成されるように、obj には null を渡します。

次のコードは、SampleModel sm1 によってストレージレイアウトが記述されている DataBuffer db1 から、SampleModel sm2 によってストレージレイアウトが記述されている DataBuffer db2 へ、ピクセルの矩形領域のデータを転送する例です。通常、転送は getPixels/setPixels を使うよりも効率的です。

 	     SampleModel sm1, sm2;
	     DataBuffer db1, db2;
 	     sm2.setDataElements(x, y, w, h, sm1.getDataElements(x, y, w,
                           h, null, db1), db2);
 
SampleModel のバンド数が同じで、対応するバンドのサンプル当りのビット数が同じで、transferType が同じである場合、2 つの DataBuffer/SampleModel のペアの間での転送のときは、getDataElements/setDataElements を使用するのが適切です。

obj が null でない場合は、transferType 型のプリミティブ配列になります。そうでない場合は、ClassCastException がスローされます。座標が境界内にない場合、または obj が null でなく、ピクセルデータを格納するために十分なサイズでない場合は、ArrayIndexOutOfBoundsException がスローされることもあります。

パラメータ:
x - ピクセル矩形の最小の X 座標
y - ピクセル矩形の最小の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
obj - null でない場合は、返されたピクセルデータが入るプリミティブ配列
data - イメージデータが格納されている DataBuffer
関連項目:
getNumDataElements(), getTransferType(), DataBuffer

setDataElements

public abstract void setDataElements(int x,
                                     int y,
                                     Object obj,
                                     DataBuffer data)
transferType 型のプリミティブ配列からの、指定された DataBuffer 内の 1 つのピクセルのデータを設定します。Java 2D API によってサポートされているイメージデータの場合、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、または DataBuffer.TYPE_INT のどれかになります。配列内のデータはパックされた形式になることもあり、その場合、データ転送の効率が上がります。

次のコードは、SampleModel sm1 によってストレージレイアウトが記述されている DataBuffer db1 から、SampleModel sm2 によってストレージレイアウトが記述されている DataBuffer db2 へ、1 ピクセルのデータを転送する例です。通常、転送は getPixel/setPixel を使うよりも効率的です。

 	     SampleModel sm1, sm2;
	     DataBuffer db1, db2;
 	     sm2.setDataElements(x, y, sm1.getDataElements(x, y, null, db1),
                           db2);
 
SampleModel のバンド数が同じで、対応するバンドのサンプル当りのビット数が同じで、transferType が同じである場合、2 つの DataBuffer/SampleModel のペアの間での転送のときは、getDataElements/setDataElements を使用するのが適切です。

obj は transferType 型のプリミティブ配列でなければなりません。そうでない場合は、ClassCastException がスローされます。座標が境界内にない場合、または obj がピクセルデータを格納するために十分なサイズでない場合は、ArrayIndexOutOfBoundsException がスローされることもあります。

パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
obj - ピクセルデータが格納されているプリミティブ配列
data - イメージデータが格納されている DataBuffer
関連項目:
getNumDataElements(), getTransferType(), DataBuffer

setDataElements

public void setDataElements(int x,
                            int y,
                            int w,
                            int h,
                            Object obj,
                            DataBuffer data)
transferType 型のプリミティブ配列からの、指定された DataBuffer 内のピクセルの矩形のデータを設定します。Java 2D API によってサポートされているイメージデータの場合、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、または DataBuffer.TYPE_INT のどれかになります。配列内のデータはパックされた形式になることもあり、その場合、データ転送の効率が上がります。

次のコードは、SampleModel sm1 によってストレージレイアウトが記述されている DataBuffer db1 から、SampleModel sm2 によってストレージレイアウトが記述されている DataBuffer db2 へ、ピクセルの矩形領域のデータを転送する例です。通常、転送は getPixels/setPixels を使うよりも効率的です。

 	     SampleModel sm1, sm2;
	     DataBuffer db1, db2;
 	     sm2.setDataElements(x, y, w, h, sm1.getDataElements(x, y, w, h,
                           null, db1), db2);
 
SampleModel のバンド数が同じで、対応するバンドのサンプル当りのビット数が同じで、transferType が同じである場合、2 つの DataBuffer/SampleModel のペアの間での転送のときは、getDataElements/setDataElements を使用するのが適切です。

obj は transferType 型のプリミティブ配列でなければなりません。そうでない場合は、ClassCastException がスローされます。座標が境界内にない場合、または obj がピクセルデータを格納するために十分なサイズでない場合は、ArrayIndexOutOfBoundsException がスローされることもあります。

パラメータ:
x - ピクセル矩形の最小の X 座標
y - ピクセル矩形の最小の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
obj - ピクセルデータが格納されているプリミティブ配列
data - イメージデータが格納されている DataBuffer
関連項目:
getNumDataElements(), getTransferType(), DataBuffer

getPixel

public float[] getPixel(int x,
                        int y,
                        float[] fArray,
                        DataBuffer data)
float の配列内の指定されたピクセルのサンプルを返します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
fArray - null でない場合は、この配列内のサンプルを返す
data - イメージデータが格納されている DataBuffer

getPixel

public double[] getPixel(int x,
                         int y,
                         double[] dArray,
                         DataBuffer data)
double の配列内の指定されたピクセルのサンプルを返します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
dArray - null でない場合は、この配列内のサンプルを返す
data - イメージデータが格納されている DataBuffer

getPixels

public int[] getPixels(int x,
                       int y,
                       int w,
                       int h,
                       int[] iArray,
                       DataBuffer data)
int 配列のピクセル矩形のすべてのサンプルを返します。配列要素ごとに 1 つのサンプルが返されます。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
iArray - null でない場合は、この配列内のサンプルを返す
data - イメージデータが格納されている DataBuffer

getPixels

public float[] getPixels(int x,
                         int y,
                         int w,
                         int h,
                         float[] fArray,
                         DataBuffer data)
float 配列のピクセル矩形のすべてのサンプルを返します。配列要素ごとに 1 つのサンプルが返されます。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
fArray - null でない場合は、この配列内のサンプルを返す
data - イメージデータが格納されている DataBuffer

getPixels

public double[] getPixels(int x,
                          int y,
                          int w,
                          int h,
                          double[] dArray,
                          DataBuffer data)
double 配列のピクセル矩形のすべてのサンプルを返します。配列要素ごとに 1 つのサンプルが返されます。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
dArray - null でない場合は、この配列内のサンプルを返す
data - イメージデータが格納されている DataBuffer

getSample

public abstract int getSample(int x,
                              int y,
                              int b,
                              DataBuffer data)
(x,y) に位置するピクセルの指定されたバンド内のサンプルを int として返します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
b - 返すバンド
data - イメージデータが格納されている DataBuffer

getSampleFloat

public float getSampleFloat(int x,
                            int y,
                            int b,
                            DataBuffer data)
(x,y) に位置するピクセルの指定されたバンド内のサンプルを float として返します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
b - 返すバンド
data - イメージデータが格納されている DataBuffer

getSampleDouble

public double getSampleDouble(int x,
                              int y,
                              int b,
                              DataBuffer data)
(x,y) に位置するピクセルの指定されたバンド内のサンプルを double として返します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
b - 返すバンド
data - イメージデータが格納されている DataBuffer

getSamples

public int[] getSamples(int x,
                        int y,
                        int w,
                        int h,
                        int b,
                        int[] iArray,
                        DataBuffer data)
int 配列内の指定されたピクセルの矩形の、指定されたバンドのサンプルを返します。配列要素ごとに 1 つのサンプルが返されます。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
b - 返すバンド
iArray - null でない場合は、この配列内のサンプルを返す
data - イメージデータを格納する DataBuffer

getSamples

public float[] getSamples(int x,
                          int y,
                          int w,
                          int h,
                          int b,
                          float[] fArray,
                          DataBuffer data)
float 配列内の指定されたピクセル矩形の、指定されたバンドのサンプルを返します。配列要素ごとに 1 つのサンプルが返されます。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
b - 返すバンド
fArray - null でない場合は、この配列内のサンプルを返す
data - イメージデータが格納されている DataBuffer

getSamples

public double[] getSamples(int x,
                           int y,
                           int w,
                           int h,
                           int b,
                           double[] dArray,
                           DataBuffer data)
double 配列内の指定されたピクセル矩形の、指定されたバンドのサンプルを返します。配列要素ごとに 1 つのサンプルが返されます。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
b - 返すバンド
dArray - null でない場合は、この配列内のサンプルを返す
data - イメージデータが格納されている DataBuffer

setPixel

public void setPixel(int x,
                     int y,
                     int[] iArray,
                     DataBuffer data)
サンプルの int 配列を入力として使って DataBuffer 内のピクセルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
iArray - int 配列の入力サンプル
data - イメージデータが格納されている DataBuffer

setPixel

public void setPixel(int x,
                     int y,
                     float[] fArray,
                     DataBuffer data)
サンプルの float 配列を入力として使って DataBuffer 内のピクセルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
fArray - float 配列の入力サンプル
data - イメージデータが格納されている DataBuffer

setPixel

public void setPixel(int x,
                     int y,
                     double[] dArray,
                     DataBuffer data)
サンプルの double 配列を入力として使って DataBuffer 内のピクセルを設定します。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
dArray - double 配列の入力サンプル
data - イメージデータが格納されている DataBuffer

setPixels

public void setPixels(int x,
                      int y,
                      int w,
                      int h,
                      int[] iArray,
                      DataBuffer data)
配列要素ごとに 1 つのサンプルが格納されている int 配列から、ピクセルの矩形のすべてのサンプルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
iArray - int 配列の入力サンプル
data - イメージデータが格納されている DataBuffer

setPixels

public void setPixels(int x,
                      int y,
                      int w,
                      int h,
                      float[] fArray,
                      DataBuffer data)
配列要素ごとに 1 つのサンプルが格納されている float 配列から、ピクセルの矩形のすべてのサンプルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
fArray - float 配列の入力サンプル
data - イメージデータが格納されている DataBuffer

setPixels

public void setPixels(int x,
                      int y,
                      int w,
                      int h,
                      double[] dArray,
                      DataBuffer data)
配列要素ごとに 1 つのサンプルが格納されている double 配列から、ピクセルの矩形のすべてのサンプルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
dArray - double 配列の入力サンプル
data - イメージデータが格納されている DataBuffer

setSample

public abstract void setSample(int x,
                               int y,
                               int b,
                               int s,
                               DataBuffer data)
int を入力として使って DataBuffer 内の (x,y) に位置するピクセルの、指定されたバンド内のサンプルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
b - 設定するバンド
s - int での入力サンプル
data - イメージデータが格納されている DataBuffer

setSample

public void setSample(int x,
                      int y,
                      int b,
                      float s,
                      DataBuffer data)
float を入力として使って DataBuffer 内の (x,y) に位置するピクセルの、指定されたバンド内のサンプルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
b - 設定するバンド
s - float での入力サンプル
data - イメージデータが格納されている DataBuffer

setSample

public void setSample(int x,
                      int y,
                      int b,
                      double s,
                      DataBuffer data)
double を入力として使って DataBuffer 内の (x,y) に位置するピクセルの、指定されたバンド内のサンプルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - ピクセル位置の X 座標
y - ピクセル位置の Y 座標
b - 設定するバンド
s - double での入力サンプル
data - イメージデータが格納されている DataBuffer

setSamples

public void setSamples(int x,
                       int y,
                       int w,
                       int h,
                       int b,
                       int[] iArray,
                       DataBuffer data)
配列要素ごとに 1 つのサンプルが格納されている int 配列から、指定されたピクセルの矩形の指定されたバンド内のサンプルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
b - 設定するバンド
iArray - int 配列の入力サンプル
data - イメージデータが格納されている DataBuffer

setSamples

public void setSamples(int x,
                       int y,
                       int w,
                       int h,
                       int b,
                       float[] fArray,
                       DataBuffer data)
配列要素ごとに 1 つのサンプルが格納されている float 配列から、指定されたピクセルの矩形の指定されたバンド内のサンプルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
b - 設定するバンド
fArray - float 配列の入力サンプル
data - イメージデータが格納されている DataBuffer

setSamples

public void setSamples(int x,
                       int y,
                       int w,
                       int h,
                       int b,
                       double[] dArray,
                       DataBuffer data)
配列要素ごとに 1 つのサンプルが格納されている double 配列から、指定されたピクセルの矩形の指定されたバンド内のサンプルを設定します。座標が境界内にない場合は、ArrayIndexOutOfBoundsException がスローされることがあります。
パラメータ:
x - 左上のピクセル位置の X 座標
y - 左上のピクセル位置の Y 座標
w - ピクセル矩形の幅
h - ピクセル矩形の高さ
b - 設定するバンド
dArray - double 配列の入力サンプル
data - イメージデータが格納されている DataBuffer

createCompatibleSampleModel

public abstract SampleModel createCompatibleSampleModel(int w,
                                                        int h)
この SampleModel の形式でデータが記述されている、幅と高さが異なる SampleModel を作成します。

createSubsetSampleModel

public abstract SampleModel createSubsetSampleModel(int[] bands)
この SampleModel のバンドのサブセットを使って新しい SampleModel を作成します。

createDataBuffer

public abstract DataBuffer createDataBuffer()
この SampleModel に対応する DataBuffer を作成します。DataBuffer の幅と高さはこの SampleModel の幅と高さと一致します。

getSampleSize

public abstract int[] getSampleSize()
すべてのバンドについて、サンプルのビットのサイズを返します。

getSampleSize

public abstract int getSampleSize(int band)
指定されたバンドについて、サンプルのビットのサイズを返します。

Java プラットフォーム 1.2

バグや機能要求の報告
新しい javadoc の表示についてのコメントやご提案
Java は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.