クラスConvolveOp

java.lang.Object
java.awt.image.ConvolveOp
すべての実装されたインタフェース:
BufferedImageOp, RasterOp

public class ConvolveOp extends Object implements BufferedImageOp, RasterOp
このクラスは、転送元から転送先への畳込み演算を実装します。 畳込み演算カーネルを使用する畳込み演算は空間オペレーションであり、入力ピクセルから出力ピクセルを求めるには、畳込み演算カーネルに入力ピクセルの周囲の値を乗算します。 これにより、出力ピクセルが隣接するピクセルから受ける影響は、畳込み演算カーネルによって数学的に指定できます。

このクラスは、色成分のアルファ成分をあらかじめ乗算するBufferedImageデータを使って演算を行います。 転送元となるBufferedImageにアルファ成分があり、色成分にそのアルファ成分があらかじめ乗算されていない場合、データは畳込み演算の前にあらかじめ乗算されます。 まだ乗算されていない色成分が転送先にある場合、アルファは転送先に格納される前に除算されます。アルファが0の場合、色成分は0に設定されます。 転送先にアルファ成分がない場合、結果として得られるアルファは、色成分で1回除算されたあとで破棄されます。

Rasterは、アルファ・チャネルを持たないものとして扱われます。 BufferedImagesでのアルファ・チャネルの上述のような扱いが望ましくない場合、それを避けるには、転送元であるBufferedImageのRasterを取得し、Rasterを扱うこのクラスのfilterメソッドを使います。

コンストラクタでRenderingHintsオブジェクトが指定された場合、色変換が必要なときに、カラー描画ヒントおよびディザリング・ヒントを使用できます。

転送元と転送先を同じオブジェクトにはしないでください。

関連項目:
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    static final int
    転送元イメージの縁にあるピクセルは、転送先の対応するピクセルにそのままコピーされます。
    static final int
    転送先イメージの縁にあるピクセルは0に設定されます。
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    指定されたKernelでConvolveOpを構築します。
    ConvolveOp(Kernel kernel, int edgeCondition, RenderingHints hints)
    指定されたKernel、縁の条件、およびRenderingHintsオブジェクト(これはnullでも可)でConvolveOpを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    適切なサイズおよびバンド数で、ゼロ化された転送先イメージを生成します。
    指定された転送元で、正しいサイズおよびバンド数を持つゼロ化された転送先Rasterを作成します。
    BufferedImagesで畳込み演算を実行します。
    Rasterの畳込み演算を実行します。
    フィルタ処理された転送先イメージのバウンディング・ボックスを返します。
    フィルタ処理された転送先Rasterのバウンディング・ボックスを返します。
    int
    縁の条件を返します。
    final Kernel
    Kernelを返します。
    final Point2D
    getPoint2D(Point2D srcPt, Point2D dstPt)
    指定された転送元のポイントに対応する、転送先のポイントの位置を返します。
    この操作の描画ヒントを返します。

    クラスオブジェクトで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    オブジェクトの文字列表現を返します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • フィールド詳細

    • EDGE_ZERO_FILL

      @Native public static final int EDGE_ZERO_FILL
      転送先イメージの縁にあるピクセルは0に設定されます。 これはデフォルトです。
      関連項目:
    • EDGE_NO_OP

      @Native public static final int EDGE_NO_OP
      転送元イメージの縁にあるピクセルは、転送先の対応するピクセルにそのままコピーされます。
      関連項目:
  • コンストラクタの詳細

    • ConvolveOp

      public ConvolveOp(Kernel kernel, int edgeCondition, RenderingHints hints)
      指定されたKernel、縁の条件、およびRenderingHintsオブジェクト(これはnullでも可)でConvolveOpを構築します。
      パラメータ:
      kernel - 指定されたKernel
      edgeCondition - 指定された縁の条件
      hints - 指定されたRenderingHintsオブジェクト
      関連項目:
    • ConvolveOp

      public ConvolveOp(Kernel kernel)
      指定されたKernelでConvolveOpを構築します。 縁の条件はEDGE_ZERO_FILLになります。
      パラメータ:
      kernel - 指定されたKernel
      関連項目:
  • メソッドの詳細

    • getEdgeCondition

      public int getEdgeCondition()
      縁の条件を返します。
      戻り値:
      このConvolveOpの縁の条件。
      関連項目:
    • getKernel

      public final Kernel getKernel()
      Kernelを返します。
      戻り値:
      このConvolveOpKernel
    • filter

      public final BufferedImage filter(BufferedImage src, BufferedImage dst)
      BufferedImagesで畳込み演算を実行します。 転送元イメージの各成分は畳込み演算され、アルファ成分もある場合はそれも含めて畳込み演算されます。 転送元イメージのカラー・モデルが転送先イメージのカラー・モデルと異なる場合、転送先でピクセルが変換されます。 転送先のイメージがnullの場合、転送元のColorModelを使用してBufferedImageが生成されます。 転送元と転送先が同じ場合は、IllegalArgumentExceptionがスローされます。
      定義:
      filter、インタフェースBufferedImageOp
      パラメータ:
      src - フィルタ処理対象の転送元のBufferedImage
      dst - フィルタ処理対象のsrcの転送先のBufferedImage
      戻り値:
      フィルタ処理されたBufferedImage
      スロー:
      NullPointerException - srcnullである場合
      IllegalArgumentException - srcdstの場合
      ImagingOpException - srcをフィルタにかけられない場合
    • filter

      public final WritableRaster filter(Raster src, WritableRaster dst)
      Rasterの畳込み演算を実行します。 転送元となるRasterの各バンドが畳込み演算されます。 転送元と転送先のバンドの数は一致しなければいけません。 転送先Rasterがnullの場合、新しいRasterが生成されます。 転送元と転送先が同じ場合は、IllegalArgumentExceptionがスローされます。
      定義:
      filter、インタフェースRasterOp
      パラメータ:
      src - フィルタ処理対象の転送元のRaster
      dst - フィルタ処理対象のsrcの転送先のWritableRaster
      戻り値:
      フィルタ処理されたWritableRaster
      スロー:
      NullPointerException - srcnullである場合
      ImagingOpException - srcdstが同じバンド数を持っていない場合
      ImagingOpException - srcをフィルタにかけられない場合
      IllegalArgumentException - srcdstの場合
    • createCompatibleDestImage

      public BufferedImage createCompatibleDestImage(BufferedImage src, ColorModel destCM)
      適切なサイズおよびバンド数で、ゼロ化された転送先イメージを生成します。 destCMがnullの場合は、適切なColorModelが使用されます。
      定義:
      createCompatibleDestImage、インタフェースBufferedImageOp
      パラメータ:
      src - フィルタ・オペレーションのソース・イメージ。
      destCM - 転送先のColorModel。 nullも可。
      戻り値:
      適切なサイズおよびバンド数を持つ転送先BufferedImage
    • createCompatibleDestRaster

      public WritableRaster createCompatibleDestRaster(Raster src)
      指定された転送元で、正しいサイズおよびバンド数を持つゼロ化された転送先Rasterを作成します。
      定義:
      createCompatibleDestRaster、インタフェースRasterOp
      パラメータ:
      src - 転送元Raster
      戻り値:
      srcと互換性のあるWritableRaster
    • getBounds2D

      public final Rectangle2D getBounds2D(BufferedImage src)
      フィルタ処理された転送先イメージのバウンディング・ボックスを返します。 これは幾何学的な操作ではないので、バウンディング・ボックスは変化しません。
      定義:
      getBounds2D、インタフェースBufferedImageOp
      パラメータ:
      src - フィルタ処理されるBufferedImage
      戻り値:
      転送先のイメージのバウンディング・ボックスを表すRectangle2D
    • getBounds2D

      public final Rectangle2D getBounds2D(Raster src)
      フィルタ処理された転送先Rasterのバウンディング・ボックスを返します。 これは幾何学的な操作ではないので、バウンディング・ボックスは変化しません。
      定義:
      getBounds2D、インタフェースRasterOp
      パラメータ:
      src - 転送元Raster
      戻り値:
      フィルタ・リング操作によるRasterのバウンディング・ボックスを表すRectangle2D
    • getPoint2D

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

      public final RenderingHints getRenderingHints()
      この操作の描画ヒントを返します。
      定義:
      getRenderingHints、インタフェースBufferedImageOp
      定義:
      getRenderingHints、インタフェースRasterOp
      戻り値:
      このBufferedImageOpRenderingHintsオブジェクト。 ヒントが設定されていない場合はnullを返す