|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.awt.image.Raster java.awt.image.WritableRaster
public class WritableRaster
このクラスは、Raster を拡張しピクセル書き込み機能を提供します。Raster がどのようにピクセルを格納するかについては、Raster クラスの説明を参照してください。
このクラスのコンストラクタは protected です。WritableRaster のインスタンスを生成するには、Raster クラスの createWritableRaster ファクトリメソッドのいずれかを使用します。
フィールドの概要 |
---|
クラス java.awt.image.Raster から継承されたフィールド |
---|
dataBuffer, height, minX, minY, numBands, numDataElements, parent, sampleModel, sampleModelTranslateX, sampleModelTranslateY, width |
コンストラクタの概要 | |
---|---|
protected |
WritableRaster(SampleModel sampleModel,
DataBuffer dataBuffer,
Point origin)
指定された SampleModel および DataBuffer を持つ WritableRaster を構築します。 |
protected |
WritableRaster(SampleModel sampleModel,
DataBuffer dataBuffer,
Rectangle aRegion,
Point sampleModelTranslate,
WritableRaster parent)
指定された SampleModel、DataBuffer、および親を使って WritableRaster を構築します。 |
protected |
WritableRaster(SampleModel sampleModel,
Point origin)
指定された SampleModel を持つ WritableRaster を構築します。 |
メソッドの概要 | |
---|---|
WritableRaster |
createWritableChild(int parentX,
int parentY,
int w,
int h,
int childMinX,
int childMinY,
int[] bandList)
この WritableRaster の DataBuffer の全部または一部を共有する新しい WritableRaster を返します。 |
WritableRaster |
createWritableTranslatedChild(int childMinX,
int childMinY)
この WritableRaster と同じサイズ、SampleModel、および DataBuffer で、位置が異なる WritableRaster を生成します。 |
WritableRaster |
getWritableParent()
この WritableRaster の親の WritableRaster (存在する場合)、または null を返します。 |
void |
setDataElements(int x,
int y,
int w,
int h,
Object inData)
ピクセル矩形のデータを TransferType 型のプリミティブ配列から設定します。 |
void |
setDataElements(int x,
int y,
Object inData)
1 つのピクセルのデータを transferType 型のプリミティブ配列から設定します。 |
void |
setDataElements(int x,
int y,
Raster inRaster)
ピクセルの矩形のデータを入力 Raster から設定します。 |
void |
setPixel(int x,
int y,
double[] dArray)
サンプルの double 配列を入力として、DataBuffer 内のピクセルを設定します。 |
void |
setPixel(int x,
int y,
float[] fArray)
サンプルの float 配列を入力として使って DataBuffer 内のピクセルを設定します。 |
void |
setPixel(int x,
int y,
int[] iArray)
サンプルの int 配列を入力として使って DataBuffer 内のピクセルを設定します。 |
void |
setPixels(int x,
int y,
int w,
int h,
double[] dArray)
矩形のピクセルのサンプルすべてを、配列要素ごとに 1 つのサンプルが格納されている double 配列から設定します。 |
void |
setPixels(int x,
int y,
int w,
int h,
float[] fArray)
矩形のピクセルのサンプルすべてを、配列要素ごとに 1 つのサンプルが格納されている float 配列から設定します。 |
void |
setPixels(int x,
int y,
int w,
int h,
int[] iArray)
矩形のピクセルのサンプルすべてを、配列要素ごとに 1 つのサンプルが格納されている int 配列から設定します。 |
void |
setRect(int dx,
int dy,
Raster srcRaster)
この WritableRaster に Raster srcRaster からピクセルをコピーします。 |
void |
setRect(Raster srcRaster)
この WritableRaster に Raster srcRaster からピクセルをコピーします。 |
void |
setSample(int x,
int y,
int b,
double s)
double を入力として使用し、DataBuffer 内の (x, y) に位置するピクセルの、指定されたバンド内のサンプルを設定します。 |
void |
setSample(int x,
int y,
int b,
float s)
float を入力として使用し、DataBuffer 内の (x, y) に位置するピクセルの、指定されたバンド内のサンプルを設定します。 |
void |
setSample(int x,
int y,
int b,
int s)
int を入力として使用し、DataBuffer 内の (x, y) に位置するピクセルの、指定されたバンド内のサンプルを設定します。 |
void |
setSamples(int x,
int y,
int w,
int h,
int b,
double[] dArray)
指定された矩形ピクセルの指定されたバンドのサンプルを、配列要素ごとに 1 つのサンプルが格納されている double 配列から設定します。 |
void |
setSamples(int x,
int y,
int w,
int h,
int b,
float[] fArray)
指定された矩形ピクセルの指定されたバンドのサンプルを、配列要素ごとに 1 つのサンプルが格納されている float 配列から設定します。 |
void |
setSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray)
指定された矩形ピクセルの指定されたバンドのサンプルを、配列要素ごとに 1 つのサンプルが格納されている int 配列から設定します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
protected WritableRaster(SampleModel sampleModel, Point origin)
sampleModel
- レイアウトを指定する SampleModelorigin
- 原点を指定する Point
RasterFormatException
- origin.x + sampleModel.getWidth()
または origin.y + sampleModel.getHeight()
の計算で、整数型オーバーフローが発生した場合protected WritableRaster(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)
sampleModel
- レイアウトを指定する SampleModeldataBuffer
- イメージデータを格納する DataBufferorigin
- 原点を指定する Point
RasterFormatException
- origin.x + sampleModel.getWidth()
または origin.y + sampleModel.getHeight()
の計算で、整数型オーバーフローが発生した場合protected WritableRaster(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, WritableRaster parent)
sampleModel
- レイアウトを指定する SampleModeldataBuffer
- イメージデータを格納する DataBufferaRegion
- イメージ領域を指定する RectanglesampleModelTranslate
- SampleModel から Raster 座標への変換を指定する Pointparent
- このラスタの親 (存在する場合)
RasterFormatException
- aRegion
の幅または高さがゼロ以下の場合、または aRegion.x + aRegion.width
と aRegion.y + aRegion.height
のいずれかの計算で整数型オーバーフローが発生した場合メソッドの詳細 |
---|
public WritableRaster getWritableParent()
WritableRaster
の親、または null
public WritableRaster createWritableTranslatedChild(int childMinX, int childMinY)
childMinX
- 新しい Raster の左上隅の X 座標childMinY
- 新しい Raster の左上隅の Y 座標
WritableRaster
RasterFormatException
- childMinX + this.getWidth()
と childMinY + this.getHeight()
のいずれかの計算で整数型オーバーフローが発生した場合public WritableRaster createWritableChild(int parentX, int parentY, int w, int h, int childMinX, int childMinY, int[] bandList)
この WritableRaster の座標空間に、parentX、parentY、width、height の各パラメータによって Rectangle が形成され、共有されるピクセル領域を示します。この Rectangle が現在の WritableRaster の境界内にない場合は、エラーがスローされます。
新しい WritableRaster はさらに、同じ平面上で現在の WritableRaster が使用する座標体系とは異なる座標体系に変換できます。childMinX パラメータと childMinY パラメータにより、返された WritableRaster の左上隅にあるピクセルの新しい座標 (x, y) が指定されます。 新しい WritableRaster 内の座標 (childMinX, childMinY) は、現在の WritableRaster 内の座標 (parentX, parentY) と同じピクセルにマップされます。
bandList パラメータを使用して、現在の WritableRaster のバンドのサブセットだけを、場合によっては順序を変更して格納する新しい WritableRaster を定義できます。bandList が null の場合は、現在の WritableRaster のすべてのバンドが現在と同じ順序で格納されます。
現在の WritableRaster の一部の領域を含み、座標系とバンドを共有する新しい WritableRaster を生成するには、childMinX を parentX と同じ値に、childMinY を parentY と同じ値に、bandList を null にそれぞれ指定して、このメソッドを呼び出します。
parentX
- この WritableRaster の座標での左上隅の X 座標parentY
- この WritableRaster の座標での左上隅の Y 座標w
- (parentX, parentY) から始まる領域の幅h
- (parentX, parentY) から始まる領域の高さchildMinX
- 返される WritableRaster の左上隅の X 座標childMinY
- 返される WritableRaster の左上隅の Y 座標bandList
- バンドインデックスの配列。すべてのバンドを使用する場合は null
WritableRaster
のすべて、または一部の DataBuffer
を共有する WritableRaster
RasterFormatException
- 部分領域がラスタの境界の外側にある場合
RasterFormatException
- w
または h
のいずれかがゼロ以下の場合、または parentX + w
、parentY + h
、childMinX + w
、childMinY + h
のいずれかの計算で整数型オーバーフローが発生した場合public void setDataElements(int x, int y, Object inData)
x
- ピクセル位置の X 座標y
- ピクセル位置の Y 座標inData
- getTransferType() によって定義された型と getNumDataElements() によって定義された長さを持ち、x,y に配置するピクセルデータを格納する配列へのオブジェクト参照
ArrayIndexOutOfBoundsException
- 座標が境界内に存在しない場合、または inData が小さすぎて入力を保持できない場合SampleModel.setDataElements(int, int, Object, DataBuffer)
public void setDataElements(int x, int y, Raster inRaster)
x
- ピクセル位置の X 座標y
- ピクセル位置の Y 座標inRaster
- x,y に配置するデータが格納されている Raster
NullPointerException
- inRaster が null の場合
ArrayIndexOutOfBoundsException
- 座標が範囲外にある場合public void setDataElements(int x, int y, int w, int h, Object inData)
x
- 左上のピクセル位置の X 座標y
- 左上のピクセル位置の Y 座標w
- ピクセル矩形の幅h
- ピクセル矩形の高さinData
- getTransferType() によって定義された型を持ち、長さが w*h*getNumDataElements() で、x,y と x+w-1, y+h-1 の間に配置するピクセルデータが格納されている配列へのオブジェクト参照
NullPointerException
- inData が null の場合
ArrayIndexOutOfBoundsException
- 座標が境界内に存在しない場合、または inData が小さすぎて入力を保持できない場合SampleModel.setDataElements(int, int, int, int, Object, DataBuffer)
public void setRect(Raster srcRaster)
転送元および転送先の Raster のすべてのサンプルが整数型で、サイズが 32 ビット以下の場合、このメソッドの呼び出しは、両方の Raster で有効なすべての x,y
アドレスで次のコードを実行するのと同じ結果になります。
Raster srcRaster; WritableRaster dstRaster; for (int b = 0; b < srcRaster.getNumBands(); b++) { dstRaster.setSample(x, y, b, srcRaster.getSample(x, y, b)); }整数型の転送元から整数型の転送先にコピーが実行される場合、転送元サンプルのサイズが転送先サンプルのサイズより大きいバンドがあると、転送元サンプルの上位ビットが切り詰められます。転送元サンプルのサイズが転送先サンプルのサイズより小さいバンドがあると、転送先サンプルの上位ビットには、srcRaster の SampleModel がサンプルを符号付きの数量として扱うときは符号が設定され、符号なしの数量として扱うときはゼロが設定されます。
float または double の転送元から整数型の転送先にコピーが実行される場合、転送元サンプルが転送先の型にキャストされます。整数型の転送元から float または double の転送先にコピーされる場合、必要に応じて、上記の整数型に関する規則に基づき転送元が最初に 32 ビットの整数型に変換され、float または double にキャストされます。
srcRaster
- ピクセルのコピー元の Raster
NullPointerException
- srcRaster が null の場合public void setRect(int dx, int dy, Raster srcRaster)
setRect(Raster)
を参照してください。
dx
- コピーの src 空間から dst 空間への X の変換係数dy
- コピーの src 空間から dst 空間への Y の変換係数srcRaster
- ピクセルのコピー元の Raster
NullPointerException
- srcRaster が null の場合public void setPixel(int x, int y, int[] iArray)
x
- ピクセル位置の X 座標y
- ピクセル位置の Y 座標iArray
- int 配列の入力サンプル
NullPointerException
- iArray が null の場合
ArrayIndexOutOfBoundsException
- 座標が境界内に存在しない場合、または iArray が小さすぎて入力を保持できない場合public void setPixel(int x, int y, float[] fArray)
x
- ピクセル位置の X 座標y
- ピクセル位置の Y 座標fArray
- float 配列の入力サンプル
NullPointerException
- fArray が null の場合
ArrayIndexOutOfBoundsException
- 座標が境界内に存在しない場合、または fArray が小さすぎて入力を保持できない場合public void setPixel(int x, int y, double[] dArray)
x
- ピクセル位置の X 座標y
- ピクセル位置の Y 座標dArray
- double 配列の入力サンプル
NullPointerException
- dArray が null の場合
ArrayIndexOutOfBoundsException
- 座標が境界内に存在しない場合、または dArray が小さすぎて入力を保持できない場合public void setPixels(int x, int y, int w, int h, int[] iArray)
x
- 左上のピクセル位置の X 座標y
- 左上のピクセル位置の Y 座標w
- ピクセル矩形の幅h
- ピクセル矩形の高さiArray
- 入力 int ピクセル配列
NullPointerException
- iArray が null の場合
ArrayIndexOutOfBoundsException
- 座標が境界内に存在しない場合、または iArray が小さすぎて入力を保持できない場合public void setPixels(int x, int y, int w, int h, float[] fArray)
x
- 左上のピクセル位置の X 座標y
- 左上のピクセル位置の Y 座標w
- ピクセル矩形の幅h
- ピクセル矩形の高さfArray
- 入力 float ピクセル配列
NullPointerException
- fArray が null の場合
ArrayIndexOutOfBoundsException
- 座標が境界内に存在しない場合、または fArray が小さすぎて入力を保持できない場合public void setPixels(int x, int y, int w, int h, double[] dArray)
x
- 左上のピクセル位置の X 座標y
- 左上のピクセル位置の Y 座標w
- ピクセル矩形の幅h
- ピクセル矩形の高さdArray
- 入力 double ピクセル配列
NullPointerException
- dArray が null の場合
ArrayIndexOutOfBoundsException
- 座標が境界内に存在しない場合、または dArray が小さすぎて入力を保持できない場合public void setSample(int x, int y, int b, int s)
x
- ピクセル位置の X 座標y
- ピクセル位置の Y 座標b
- 設定されるバンドs
- 入力サンプル
ArrayIndexOutOfBoundsException
- 座標またはバンドインデックスが境界内にない場合public void setSample(int x, int y, int b, float s)
x
- ピクセル位置の X 座標y
- ピクセル位置の Y 座標b
- 設定されるバンドs
- float の入力サンプル
ArrayIndexOutOfBoundsException
- 座標またはバンドインデックスが境界内にない場合public void setSample(int x, int y, int b, double s)
x
- ピクセル位置の X 座標y
- ピクセル位置の Y 座標b
- 設定されるバンドs
- double の入力サンプル
ArrayIndexOutOfBoundsException
- 座標またはバンドインデックスが境界内にない場合public void setSamples(int x, int y, int w, int h, int b, int[] iArray)
x
- 左上のピクセル位置の X 座標y
- 左上のピクセル位置の Y 座標w
- ピクセル矩形の幅h
- ピクセル矩形の高さb
- 設定されるバンドiArray
- 入力 int のサンプル配列
NullPointerException
- iArray が null の場合
ArrayIndexOutOfBoundsException
- 座標またはバンドインデックスが境界内に存在しない場合、または iArray が小さすぎて入力を保持できない場合public void setSamples(int x, int y, int w, int h, int b, float[] fArray)
x
- 左上のピクセル位置の X 座標y
- 左上のピクセル位置の Y 座標w
- ピクセル矩形の幅h
- ピクセル矩形の高さb
- 設定されるバンドfArray
- 入力 float サンプル配列
NullPointerException
- fArray が null の場合
ArrayIndexOutOfBoundsException
- 座標またはバンドインデックスが境界内に存在しない場合、または fArray が小さすぎて入力を保持できない場合public void setSamples(int x, int y, int w, int h, int b, double[] dArray)
x
- 左上のピクセル位置の X 座標y
- 左上のピクセル位置の Y 座標w
- ピクセル矩形の幅h
- ピクセル矩形の高さb
- 設定されるバンドdArray
- 入力 double サンプル配列
NullPointerException
- dArray が null の場合
ArrayIndexOutOfBoundsException
- 座標またはバンドインデックスが境界内に存在しない場合、または dArray が小さすぎて入力を保持できない場合
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。