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 int
EDGE_NO_OP
転送元イメージの縁にあるピクセルは、転送先の対応するピクセルにそのままコピーされます。static int
EDGE_ZERO_FILL
転送先イメージの縁にあるピクセルは0に設定されます。 -
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 ConvolveOp(Kernel kernel)
指定されたKernelでConvolveOpを構築します。ConvolveOp(Kernel kernel, int edgeCondition, RenderingHints hints)
指定されたKernel、縁の条件、およびRenderingHintsオブジェクト(これはnullでも可)でConvolveOpを構築します。 -
メソッドのサマリー
修飾子と型 メソッド 説明 BufferedImage
createCompatibleDestImage(BufferedImage src, ColorModel destCM)
適切なサイズおよびバンド数で、ゼロ化された転送先イメージを生成します。WritableRaster
createCompatibleDestRaster(Raster src)
指定された転送元で、正しいサイズおよびバンド数を持つゼロ化された転送先Rasterを作成します。BufferedImage
filter(BufferedImage src, BufferedImage dst)
BufferedImagesで畳込み演算を実行します。WritableRaster
filter(Raster src, WritableRaster dst)
Rasterの畳込み演算を実行します。Rectangle2D
getBounds2D(BufferedImage src)
フィルタ処理された転送先イメージのバウンディング・ボックスを返します。Rectangle2D
getBounds2D(Raster src)
フィルタ処理された転送先Rasterのバウンディング・ボックスを返します。int
getEdgeCondition()
縁の条件を返します。Kernel
getKernel()
Kernelを返します。Point2D
getPoint2D(Point2D srcPt, Point2D dstPt)
指定された転送元のポイントに対応する、転送先のポイントの位置を返します。RenderingHints
getRenderingHints()
この操作の描画ヒントを返します。
-
フィールド詳細
-
コンストラクタの詳細
-
ConvolveOp
public ConvolveOp(Kernel kernel, int edgeCondition, RenderingHints hints)指定されたKernel、縁の条件、およびRenderingHintsオブジェクト(これはnullでも可)でConvolveOpを構築します。- パラメータ:
kernel
- 指定されたKernel
edgeCondition
- 指定された縁の条件hints
- 指定されたRenderingHints
オブジェクト- 関連項目:
Kernel
,EDGE_NO_OP
,EDGE_ZERO_FILL
,RenderingHints
-
ConvolveOp
public ConvolveOp(Kernel kernel)指定されたKernelでConvolveOpを構築します。 縁の条件はEDGE_ZERO_FILLになります。- パラメータ:
kernel
- 指定されたKernel
- 関連項目:
Kernel
、EDGE_ZERO_FILL
-
-
メソッドの詳細
-
getEdgeCondition
public int getEdgeCondition()縁の条件を返します。- 戻り値:
- この
ConvolveOp
の縁の条件。 - 関連項目:
EDGE_NO_OP
,EDGE_ZERO_FILL
-
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を返す
-