public class WritableRaster extends Raster
このクラスのコンストラクタはprotectedです。WritableRasterのインスタンスを生成するには、RasterクラスのcreateWritableRasterファクトリ・メソッドのいずれかを使用します。
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配列から設定します。
|
createBandedRaster, createBandedRaster, createBandedRaster, createChild, createCompatibleWritableRaster, createCompatibleWritableRaster, createCompatibleWritableRaster, createCompatibleWritableRaster, createInterleavedRaster, createInterleavedRaster, createInterleavedRaster, createPackedRaster, createPackedRaster, createPackedRaster, createPackedRaster, createRaster, createTranslatedChild, createWritableRaster, createWritableRaster, getBounds, getDataBuffer, getDataElements, getDataElements, getHeight, getMinX, getMinY, getNumBands, getNumDataElements, getParent, getPixel, getPixel, getPixel, getPixels, getPixels, getPixels, getSample, getSampleDouble, getSampleFloat, getSampleModel, getSampleModelTranslateX, getSampleModelTranslateY, getSamples, getSamples, getSamples, getTransferType, getWidth
protected WritableRaster(SampleModel sampleModel, Point origin)
sampleModel
- レイアウトを指定するSampleModel。origin
- 原点を指定するPoint。RasterFormatException
- origin.x+sampleModel.getWidth()
またはorigin.y+sampleModel.getHeight()
のいずれかの計算で整数型オーバーフローが発生した場合protected WritableRaster(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)
sampleModel
- レイアウトを指定するSampleModel。dataBuffer
- イメージ・データを格納するDataBuffer。origin
- 原点を指定するPoint。RasterFormatException
- origin.x+sampleModel.getWidth()
またはorigin.y+sampleModel.getHeight()
のいずれかの計算で整数型オーバーフローが発生した場合protected WritableRaster(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, WritableRaster parent)
sampleModel
- レイアウトを指定するSampleModel。dataBuffer
- イメージ・データを格納するDataBuffer。aRegion
- イメージ領域を指定するRectangle。sampleModelTranslate
- SampleModelからRaster座標への変換を指定するPoint。parent
- このラスターの親(存在する場合)。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
が0以下の場合、または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が小さすぎて入力を保持できない場合。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2016, Oracle and/or its affiliates. All rights reserved.Use is subject to license termsDocumentation Redistribution Policyも参照してください。