public class LookupOp extends Object implements BufferedImageOp, RasterOp
Rasterの場合、ルックアップはバンドを操作します。ルックアップ配列数が1つの場合は同じ配列がすべてのバンドに適用されます。ルックアップ配列が複数の場合、その数は転送元Rasterのバンド数と一致しなければいけません。
BufferedImageの場合は、カラー成分とアルファ成分に対して行われます。ルックアップ配列数が1つの場合は同じ配列がすべての色成分に適用されますが、アルファ成分には適用されません。ルックアップ配列が複数あり、その数が転送元の色成分数と一致する場合、アルファ成分が存在してもルックアップは実行されません。ルックアップ配列が複数あり、その数が転送元の色成分数とアルファ成分数の合計と一致する場合、ルックアップはすべての色成分およびアルファ成分に対して実行されます。複数バンドのBufferedImageに対して、画一的でない再スケーリングが可能になります。
ルックアップでは、あらかじめ乗算されたアルファ・データを持つBufferedImageソースは、あらかじめ乗算されていないイメージと同様に扱われます。つまり、データがあらかじめ乗算されていることを考慮せずに、BufferedImageソースのrawデータについて、バンドごとにルックアップが実行されます。転送先のColorModelで色の変換が必要な場合、このステップでは、あらかじめ乗算されていることが転送元と転送先の両方で考慮されます。
IndexColorModelを持つイメージは使用できません。
コンストラクタでRenderingHintsオブジェクトが指定された場合、色変換が必要なときに、カラー描画ヒントおよびディザリング・ヒントを使用できます。
このクラスでは転送元と転送先に同じオブジェクトを指定できます。
コンストラクタと説明 |
---|
LookupOp(LookupTable lookup, RenderingHints hints)
指定されたルックアップ表と
RenderingHints オブジェクトでLookupOp オブジェクトを構築します。RenderingHintsオブジェクトはnull の場合もあります。 |
修飾子と型 | メソッドと説明 |
---|---|
BufferedImage |
createCompatibleDestImage(BufferedImage src, ColorModel destCM)
適切なサイズおよびバンド数で、ゼロ化された転送先イメージを生成します。
|
WritableRaster |
createCompatibleDestRaster(Raster src)
指定されたソースで、適切なサイズ、適切な数のバンドを持つゼロ化された転送先
Raster を生成します。 |
BufferedImage |
filter(BufferedImage src, BufferedImage dst)
BufferedImage に対するルックアップ操作を行います。 |
WritableRaster |
filter(Raster src, WritableRaster dst)
Raster に対するルックアップ操作を行います。 |
Rectangle2D |
getBounds2D(BufferedImage src)
フィルタ処理された転送先イメージのバウンディング・ボックスを返します。
|
Rectangle2D |
getBounds2D(Raster src)
フィルタ処理された転送先Rasterのバウンディング・ボックスを返します。
|
Point2D |
getPoint2D(Point2D srcPt, Point2D dstPt)
指定された転送元のポイントに対応する、転送先のポイントの位置を返します。
|
RenderingHints |
getRenderingHints()
この操作の描画ヒントを返します。
|
LookupTable |
getTable()
LookupTable を返します。 |
public LookupOp(LookupTable lookup, RenderingHints hints)
RenderingHints
オブジェクトでLookupOp
オブジェクトを構築します。RenderingHintsオブジェクトはnull
の場合もあります。lookup
- 指定されたLookupTable
hints
- 指定されたRenderingHints
、またはnull
public final LookupTable getTable()
LookupTable
を返します。LookupOp
のLookupTable
。public final BufferedImage filter(BufferedImage src, BufferedImage dst)
BufferedImage
に対するルックアップ操作を行います。転送元イメージのカラー・モデルが転送先イメージのカラー・モデルと異なる場合、転送先でピクセルが変換されます。転送先イメージがnull
の場合、BufferedImage
は適切なColorModel
で作成されます。LookupTable
の配列数が、上記のクラス・コメントの要件を満たさない場合、または転送元イメージがIndexColorModel
を持つ場合、IllegalArgumentException
がスローされます。filter
、インタフェース: BufferedImageOp
src
- フィルタ処理されるBufferedImage
。dst
- フィルタ処理の結果を格納するBufferedImage
BufferedImage
。IllegalArgumentException
- LookupTable
の配列数がクラスのクラス・コメントの要件を満たさない場合、または転送元のイメージがIndexColorModel
を持つ場合。public final WritableRaster filter(Raster src, WritableRaster dst)
Raster
に対するルックアップ操作を行います。転送先Raster
がnull
の場合、新しいRaster
が生成されます。転送元のRaster
と転送先のRaster
バンド数が一致しない場合、あるいはLookupTable
の配列数が上記のクラス・コメントの要件を満たさない場合、IllegalArgumentException
がスローされます。filter
、インタフェース: RasterOp
src
- フィルタ処理対象の転送元のRaster
dst
- フィルタ処理対象のsrc
の転送先のWritableRaster
WritableRaster
。IllegalArgumentException
- 転送元と転送先のRasterのバンド数が異なる場合、あるいはLookupTable
の配列数がクラス・コメントの要件を満たさない場合。public final Rectangle2D getBounds2D(BufferedImage src)
getBounds2D
、インタフェース: BufferedImageOp
src
- フィルタ処理されるBufferedImage
。public final Rectangle2D getBounds2D(Raster src)
getBounds2D
、インタフェース: RasterOp
src
- フィルタ処理されるRaster
。Raster
の境界。public BufferedImage createCompatibleDestImage(BufferedImage src, ColorModel destCM)
null
の場合は、適切なColorModel
が使用されます。createCompatibleDestImage
、インタフェース: BufferedImageOp
src
- フィルタ・オペレーションのソース・イメージ。destCM
- 転送先のColorModel
。null
も可。BufferedImage
。public WritableRaster createCompatibleDestRaster(Raster src)
Raster
を生成します。createCompatibleDestRaster
、インタフェース: RasterOp
src
- 変換対象のRaster
Raster
。public final Point2D getPoint2D(Point2D srcPt, Point2D dstPt)
dstPt
がnull
でない場合、戻り値の格納先として使用されます。幾何学的な操作ではないため、srcPt
はdstPt
と等しくなります。getPoint2D
、インタフェース: BufferedImageOp
getPoint2D
、インタフェース: RasterOp
srcPt
- 転送元イメージのポイントを表すPoint2D
dstPt
- 転送先の位置を表すPoint2D
Point2D
。public final RenderingHints getRenderingHints()
getRenderingHints
、インタフェース: BufferedImageOp
getRenderingHints
、インタフェース: RasterOp
RenderingHints
オブジェクト。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2016, Oracle and/or its affiliates. All rights reserved.Use is subject to license termsDocumentation Redistribution Policyも参照してください。