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

クラスBandCombineOp

java.lang.Object
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を返す