モジュール java.desktop
パッケージ java.awt.image

クラスBandCombineOp

  • すべての実装されたインタフェース:
    RasterOp


    public class BandCombineOp
    extends Object
    implements 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 ]
     

    転送元と転送先には、同じオブジェクトを指定できます。

    • コンストラクタの詳細

      • 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

        public final Point2D getPoint2D​(Point2D srcPt,
                                        Point2D dstPt)
        指定された転送元Rasterのポイントに対応する転送先のポイントの位置を返します。 dstPtが指定されている場合、そのdstPtが戻り値を保持します。 幾何学的な操作ではないため、返されるポイントはsrcPtと等しくなります。
        定義:
        getPoint2D、インタフェース: RasterOp
        パラメータ:
        srcPt - 転送元Rasterのポイントを表すPoint2D
        dstPt - 結果が格納されるPoint2D
        戻り値:
        指定された転送元イメージの指定されたポイントに対応する転送先イメージのPoint2D
      • getRenderingHints

        public final RenderingHints getRenderingHints​()
        このオペレーションの描画ヒントを返します。
        定義:
        getRenderingHints、インタフェース: RasterOp
        戻り値:
        このオペレーションに関連したRenderingHintsオブジェクト。 ヒントが設定されていない場合はnullを返す