java.lang.Object
java.awt.image.BandCombineOp
- すべての実装されたインタフェース:
RasterOp
このクラスは、指定された行列を使用して、
Raster
内でバンドの任意の線形の組み合わせを実行します。
行列の幅を、転送元Raster
内のバンド数と等しくする必要があります(オプションで1を加算)。 バンド数よりも行列内の列が1つ多い場合は、ピクセルを表すバンド・サンプルのベクトルの最後に暗黙の1が存在します。 行列の高さを、転送先内のバンド数と等しくする必要があります。
たとえば、3バンドのRaster
は、Raster
の2番目のバンドを反転させるため、各ピクセルに適用される次の変換を保持します。
[ 1.0 0.0 0.0 0.0 ] [ b1 ] [ 0.0 -1.0 0.0 255.0 ] x [ b2 ] [ 0.0 0.0 1.0 0.0 ] [ b3 ] [ 1 ]
転送元と転送先には、同じオブジェクトを指定できます。
-
コンストラクタのサマリー
-
メソッドのサマリー
修飾子と型メソッド説明適切なサイズと数のバンドを持つゼロ化された転送先Raster
を作成します。filter
(Raster src, WritableRaster dst) コンストラクタで指定された行列を使用して、Raster
を変換します。final Rectangle2D
getBounds2D
(Raster src) 変換された転送先のバウンディング・ボックスを返します。final float[][]
線形組み合わせ行列のコピーを返します。final Point2D
getPoint2D
(Point2D srcPt, Point2D dstPt) 指定された転送元Raster
のポイントに対応する転送先のポイントの位置を返します。final RenderingHints
このオペレーションの描画ヒントを返します。
-
コンストラクタの詳細
-
BandCombineOp
public BandCombineOp(float[][] matrix, RenderingHints hints) 指定された行列で、BandCombineOp
を構築します。 行列の幅を、転送元Raster
内のバンド数と等しくする必要があります(オプションで1を加算)。 バンド数よりも行列内の列が1つ多い場合は、ピクセルを表すバンド・サンプルのベクトルの最後に暗黙の1が存在します。 行列の高さを、転送先内のバンド数と等しくする必要があります。最初の下付き文字は行インデックスで、2番目の下付き文字は列インデックスです。 このオペレーションは現在定義されているどの描画ヒントも使用しません。
RenderingHints
引数にはnullを指定できます。- パラメータ:
matrix
- バンド結合オペレーションに使用する行列。hints
- このオペレーションに使用されるRenderingHints
オブジェクト。 現在使用されていないためnullになる。
-
-
メソッドの詳細
-
getMatrix
public final float[][] getMatrix()線形組み合わせ行列のコピーを返します。- 戻り値:
- このバンド結合オペレーションに関連した行列
-
filter
public WritableRaster filter(Raster src, WritableRaster dst) コンストラクタで指定された行列を使用して、Raster
を変換します。 転送元または転送先のバンド数が行列と互換性がない場合は、IllegalArgumentException
がスローされます。 詳細は、クラスのコメントを参照してください。転送先がnullの場合は、行列の行数と等しいバンド数で作成されます。 オペレーションによってデータのオーバーフローが発生しても例外はスローされません。
- 定義:
filter
、インタフェースRasterOp
- パラメータ:
src
- フィルタ処理されるRaster
。dst
- フィルタ処理の結果を格納するRaster
。- 戻り値:
- フィルタ処理された
Raster
。 - 例外:
IllegalArgumentException
- 転送元または転送先のバンド数が行列と互換性がない場合。
-
getBounds2D
public final Rectangle2D getBounds2D(Raster src) 変換された転送先のバウンディング・ボックスを返します。 これは幾何学的な操作ではないので、転送元と転送先のバウンディング・ボックスは同一です。 転送元のバンド数が行列と互換性がない場合は、IllegalArgumentException
がスローされます。 詳細は、クラスのコメントを参照してください。- 定義:
getBounds2D
、インタフェースRasterOp
- パラメータ:
src
- フィルタ処理されるRaster
。- 戻り値:
- 転送先のイメージのバウンディング・ボックスを表す
Rectangle2D
。 - 例外:
IllegalArgumentException
- 転送元のバンド数が行列と互換性がない場合。
-
createCompatibleDestRaster
public WritableRaster createCompatibleDestRaster(Raster src) 適切なサイズと数のバンドを持つゼロ化された転送先Raster
を作成します。 転送元のバンド数が行列と互換性がない場合は、IllegalArgumentException
がスローされます。 詳細は、クラスのコメントを参照してください。- 定義:
createCompatibleDestRaster
、インタフェースRasterOp
- パラメータ:
src
- フィルタ処理されるRaster
。- 戻り値:
- ゼロ化された転送先
Raster
。
-
getPoint2D
指定された転送元Raster
のポイントに対応する転送先のポイントの位置を返します。dstPt
が指定されている場合、そのdstPtが戻り値を保持します。 幾何学的な操作ではないため、返されるポイントはsrcPt
と等しくなります。- 定義:
getPoint2D
、インタフェースRasterOp
- パラメータ:
srcPt
- 転送元Raster
のポイントを表すPoint2D
dstPt
- 結果が格納されるPoint2D
。- 戻り値:
- 指定された転送元イメージの指定されたポイントに対応する転送先イメージの
Point2D
。
-
getRenderingHints
public final RenderingHints getRenderingHints()このオペレーションの描画ヒントを返します。- 定義:
getRenderingHints
、インタフェースRasterOp
- 戻り値:
- このオペレーションに関連した
RenderingHints
オブジェクト。 ヒントが設定されていない場合はnullを返す
-