モジュール java.desktop
パッケージ java.awt.image

クラスAffineTransformOp

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

public class AffineTransformOp
extends Object
implements BufferedImageOp, RasterOp
このクラスは、アフィン変換を使用して、転送元のイメージまたはRasterの2次元座標から転送先のイメージまたはRasterの2次元座標への線形マッピングを実行します。 使用される補間の型は、コンストラクタを介して、RenderingHintsオブジェクトまたはこのクラスで定義されている整数型補間型のうちの1つによって指定されます。

RenderingHintsオブジェクトがコンストラクタで指定される場合、補間ヒントおよび描画品質ヒントがこのオペレーションの補間型を設定するために使用されます。 カラー描画ヒントおよびディザリング・ヒントは、色変換が必要な場合に使用されます。

次の制約に従う必要があります。

  • 転送元と転送先は同じにはしない
  • Rasterオブジェクトの場合、転送元のバンド数は転送先のバンド数と同じにする。

関連項目:
AffineTransform, BufferedImageFilter, RenderingHints.KEY_INTERPOLATION, RenderingHints.KEY_RENDERING, RenderingHints.KEY_COLOR_RENDERING, RenderingHints.KEY_DITHERING
  • フィールド詳細

  • コンストラクタの詳細

    • AffineTransformOp

      public AffineTransformOp​(AffineTransform xform, RenderingHints hints)
      アフィン変換を指定してAffineTransformOpを構築します。 補間型は、RenderingHintsオブジェクトにより決まります。 補間ヒントが定義されている場合は、それを使用します。 補間ヒントが定義されていない場合、描画品質ヒントが定義されていれば、補間型はその値から決まります。 hintsが指定されていない場合(hintsがnullの場合)、補間型はTYPE_NEAREST_NEIGHBORです。
      パラメータ:
      xform - オペレーションに使用するAffineTransform
      hints - オペレーションの補間型を指定するために使用されるRenderingHintsオブジェクト。
      例外:
      ImagingOpException - 変換を逆変換できない場合。
      関連項目:
      RenderingHints.KEY_INTERPOLATION, RenderingHints.KEY_RENDERING
    • AffineTransformOp

      public AffineTransformOp​(AffineTransform xform, int interpolationType)
      アフィン変換および補間型を指定してAffineTransformOpを構築します。
      パラメータ:
      xform - オペレーションに使用するAffineTransform
      interpolationType - このクラスで定義されている整数値補間型定数の1つ。TYPE_NEAREST_NEIGHBORTYPE_BILINEARTYPE_BICUBIC
      例外:
      ImagingOpException - 変換を逆変換できない場合。
  • メソッドの詳細

    • getInterpolationType

      public final int getInterpolationType()
      このオペレーションに使用される補間型を返します。
      戻り値:
      補間型
      関連項目:
      TYPE_NEAREST_NEIGHBOR, TYPE_BILINEAR, TYPE_BICUBIC
    • filter

      public final BufferedImage filter​(BufferedImage src, BufferedImage dst)
      転送元のBufferedImageを変換し、その結果を転送先のBufferedImageに格納します。 2つのイメージのカラー・モデルが一致しない場合は、転送先のカラー・モデルへの変換が実行されます。 転送先のイメージがnullの場合、転送元のColorModelによりBufferedImageが作成されます。

      getBounds2D(BufferedImage)が返す矩形の座標と、このメソッドが返すBufferedImageの座標は必ず一致するとは限りません。 矩形の左上隅の座標が負の場合、矩形のこの部分は描画されません。 矩形の左上隅の座標が正の場合、フィルタを通したイメージは転送先BufferedImageのその位置に描画されます。

      転送元が転送先と同じ場合は、IllegalArgumentExceptionをスローします。

      定義:
      filter、インタフェース: BufferedImageOp
      パラメータ:
      src - 変換対象のBufferedImage
      dst - 変換の結果を格納するBufferedImage
      戻り値:
      フィルタ処理されたBufferedImage
      例外:
      IllegalArgumentException - srcdstが等しい場合
      ImagingOpException - 無効なイメージ形式、タイル形式、またはイメージ処理操作によって起こるデータ処理エラー、あるいはその他のサポートされていない操作のためにイメージを変換できない場合。
    • filter

      public final WritableRaster filter​(Raster src, WritableRaster dst)
      転送元のRasterを変換し、その結果を転送先のRasterに格納します。 このオペレーションは、バンドごとの変換を実行します。

      転送先のRasterがnullの場合は、新しいRasterが作成されます。 転送元が転送先と同一の場合、または転送元のバンド数と転送先のバンド数が等しくない場合には、IllegalArgumentExceptionがスローされます。

      getBounds2D(Raster)が返す矩形の座標と、このメソッドが返すWritableRasterの座標は必ず一致するとは限りません。 矩形の左上隅の座標が負の場合、矩形のこの部分は描画されません。 矩形の座標が正の場合、フィルタを通したイメージは転送先Rasterのその位置に描画されます。

      定義:
      filter、インタフェース: RasterOp
      パラメータ:
      src - 変換対象のRaster
      dst - 変換の結果を格納するRaster
      戻り値:
      変換されたRaster
      例外:
      ImagingOpException - 無効なイメージ形式、タイル形式、またはイメージ処理操作によって起こるデータ処理エラー、あるいはその他のサポートされていない操作のためにラスターを変換できない場合。
    • getBounds2D

      public final Rectangle2D getBounds2D​(BufferedImage src)
      変換された転送先のバウンディング・ボックスを返します。 返される矩形は、変換されたポイントの実際のバウンディング・ボックスです。 返される矩形の左上隅の座標は(0, 0)でない可能性があります。
      定義:
      getBounds2D、インタフェース: BufferedImageOp
      パラメータ:
      src - 変換対象のBufferedImage
      戻り値:
      転送先のバウンディング・ボックスを表すRectangle2D
    • getBounds2D

      public final Rectangle2D getBounds2D​(Raster src)
      変換された転送先のバウンディング・ボックスを返します。 返される矩形は、変換されたポイントの実際のバウンディング・ボックスです。 返される矩形の左上隅の座標は(0, 0)でない可能性があります。
      定義:
      getBounds2D、インタフェース: RasterOp
      パラメータ:
      src - 変換対象のRaster
      戻り値:
      転送先のバウンディング・ボックスを表すRectangle2D
    • createCompatibleDestImage

      public BufferedImage createCompatibleDestImage​(BufferedImage src, ColorModel destCM)
      適切なサイズおよびバンド数で、ゼロ化された転送先イメージを生成します。 変換された幅または高さが0に等しい場合は、RasterFormatExceptionがスローされます。

      destCMがnullの場合は、適切なColorModelが使用されます。使用されるColorModelは、転送元のColorModelが不透明な場合にも、アルファ・チャネルを持つ場合があります。

      定義:
      createCompatibleDestImage、インタフェース: BufferedImageOp
      パラメータ:
      src - 変換対象のBufferedImage
      destCM - 転送先のColorModel nullの場合、適切なColorModelが使用される。
      戻り値:
      ゼロ化された転送先イメージ
    • createCompatibleDestRaster

      public WritableRaster createCompatibleDestRaster​(Raster src)
      適切なサイズと数のバンドを持つゼロ化された転送先Rasterを作成します。 変換された幅または高さが0に等しい場合は、RasterFormatExceptionがスローされます。
      定義:
      createCompatibleDestRaster、インタフェース: RasterOp
      パラメータ:
      src - 変換対象のRaster
      戻り値:
      ゼロ化された転送先Raster
    • getPoint2D

      public final Point2D getPoint2D​(Point2D srcPt, Point2D dstPt)
      指定された転送元のポイントに対応する転送先のポイントの位置を返します。 dstPtが指定されている場合、そのdstPtが戻り値を保持します。
      定義:
      getPoint2D、インタフェース: BufferedImageOp
      定義:
      getPoint2D、インタフェース: RasterOp
      パラメータ:
      srcPt - 転送元のポイントを表すPoint2D
      dstPt - 結果が格納されるPoint2D
      戻り値:
      指定された転送元のポイントに対応する転送先のPoint2D
    • getTransform

      public final AffineTransform getTransform()
      この変換オペレーションに使用されるアフィン変換を返します。
      戻り値:
      このオペレーションに関連したAffineTransform
    • getRenderingHints

      public final RenderingHints getRenderingHints()
      この変換オペレーションに使用される描画ヒントを返します。
      定義:
      getRenderingHints、インタフェース: BufferedImageOp
      定義:
      getRenderingHints、インタフェース: RasterOp
      戻り値:
      この操作に関連付けられたRenderingHintsオブジェクト。