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に設定されます。 -
コンストラクタのサマリー
コンストラクタ説明ConvolveOp
(Kernel kernel) 指定されたKernelでConvolveOpを構築します。ConvolveOp
(Kernel kernel, int edgeCondition, RenderingHints hints) 指定されたKernel、縁の条件、およびRenderingHintsオブジェクト(これはnullでも可)でConvolveOpを構築します。 -
メソッドのサマリー
修飾子と型メソッド説明createCompatibleDestImage
(BufferedImage src, ColorModel destCM) 適切なサイズおよびバンド数で、ゼロ化された転送先イメージを生成します。指定された転送元で、正しいサイズおよびバンド数を持つゼロ化された転送先Rasterを作成します。final BufferedImage
filter
(BufferedImage src, BufferedImage dst) BufferedImagesで畳込み演算を実行します。final WritableRaster
filter
(Raster src, WritableRaster dst) Rasterの畳込み演算を実行します。final Rectangle2D
getBounds2D
(BufferedImage src) フィルタ処理された転送先イメージのバウンディング・ボックスを返します。final Rectangle2D
getBounds2D
(Raster src) フィルタ処理された転送先Rasterのバウンディング・ボックスを返します。int
縁の条件を返します。final Kernel
Kernelを返します。final Point2D
getPoint2D
(Point2D srcPt, Point2D dstPt) 指定された転送元のポイントに対応する、転送先のポイントの位置を返します。final RenderingHints
この操作の描画ヒントを返します。
-
フィールド詳細
-
コンストラクタの詳細
-
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を返します。- 戻り値:
- この
ConvolveOp
のKernel
。
-
filter
public final BufferedImage filter(BufferedImage src, BufferedImage dst) BufferedImagesで畳込み演算を実行します。 転送元イメージの各成分は畳込み演算され、アルファ成分もある場合はそれも含めて畳込み演算されます。 転送元イメージのカラー・モデルが転送先イメージのカラー・モデルと異なる場合、転送先でピクセルが変換されます。 転送先のイメージがnullの場合、転送元のColorModelを使用してBufferedImageが生成されます。 転送元と転送先が同じ場合は、IllegalArgumentExceptionがスローされます。- 定義:
filter
、インタフェースBufferedImageOp
- パラメータ:
src
- フィルタ処理対象の転送元のBufferedImage
dst
- フィルタ処理対象のsrc
の転送先のBufferedImage
- 戻り値:
- フィルタ処理された
BufferedImage
- 例外:
NullPointerException
-src
がnull
である場合IllegalArgumentException
-src
がdst
の場合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
-src
がnull
である場合ImagingOpException
-src
とdst
が同じバンド数を持っていない場合ImagingOpException
-src
をフィルタにかけられない場合IllegalArgumentException
-src
がdst
の場合
-
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
指定された転送元のポイントに対応する、転送先のポイントの位置を返します。 dstPtがnullでない場合は、戻り値の格納先として使用されます。 幾何学的な操作ではないため、srcPtはdstPtと等しくなります。- 定義:
getPoint2D
、インタフェースBufferedImageOp
- 定義:
getPoint2D
、インタフェースRasterOp
- パラメータ:
srcPt
- 転送元イメージのポイントを表すPoint2D
dstPt
- 結果が格納されるPoint2D
- 戻り値:
- 指定された転送元イメージの指定されたポイントに対応する転送先イメージの
Point2D
。
-
getRenderingHints
public final RenderingHints getRenderingHints()この操作の描画ヒントを返します。- 定義:
getRenderingHints
、インタフェースBufferedImageOp
- 定義:
getRenderingHints
、インタフェースRasterOp
- 戻り値:
- この
BufferedImageOp
のRenderingHints
オブジェクト。 ヒントが設定されていない場合はnullを返す
-