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