JavaTM 2 Platform
Std. Ed. v1.3

java.awt.image
インタフェース ImageConsumer

既知の実装クラスの一覧:
ImageFilter, PixelGrabber

public interface ImageConsumer

ImageProducer インタフェースを通してイメージデータを表示するオブジェクトのためのインタフェースです。コンシューマがイメージプロデューサに追加されると、プロデューサはこのインタフェースで定義されたメソッドを呼び出すことによってイメージデータを転送します。

関連項目:
ImageProducer

フィールドの概要
static int COMPLETESCANLINES
          ピクセルは、1 度に (複数の) 完全な走査線で転送されます。
static int IMAGEABORTED
          イメージ生成が故意に中断されたことを表します。
static int IMAGEERROR
          イメージの生成中にエラーが発生したことを表します。
static int RANDOMPIXELORDER
          ピクセルの転送順序はランダムです。
static int SINGLEFRAME
          イメージデータは、1 枚の静止画像を含んでいます。
static int SINGLEFRAMEDONE
          イメージの 1 フレームの転送が完了しましたが、転送すべきフレームがまだあることを表します。
static int SINGLEPASS
          ピクセルは 1 回のパスで転送されます。
static int STATICIMAGEDONE
          イメージの転送が完了し、転送するピクセルもフレームもないことを表します。
static int TOPDOWNLEFTRIGHT
          ピクセルは上下左右の順で転送されます。
 
メソッドの概要
 void imageComplete(int status)
          このメソッドは、ImageProducer がソースイメージのすべてのピクセルを転送し終えたとき、マルチフレームアニメーションの 1 フレームを転送し終えたとき、またはイメージの生成中およびローディング中にエラーが発生したときに呼び出されます。
 void setColorModel(ColorModel model)
          setPixels メソッドを使って設定されるピクセルの大部分に対して使用される ColorModel オブジェクトを設定します。
 void setDimensions(int width, int height)
          setDimensions メソッド呼び出しを使って、ソースイメージの大きさを報告します。
 void setHints(int hintflags)
          ImageProducer は、どのような順序でもピクセルを転送することができますが、どのようにしてピクセルが転送されるかを ImageConsumer が知っていれば、ImageConsumer は ColorModel へのピクセルのスケーリングや変換をより能率的かつ高品質に行うことができます。
 void setPixels(int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize)
          イメージのピクセルは、1 回以上の setPixels メソッドの呼び出しによって転送されます。
 void setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize)
          イメージのピクセルは、1 回以上の setPixels メソッドの呼び出しによって転送されます。
 void setProperties(Hashtable props)
          このイメージに関して、拡張可能なプロパティのリストを設定します。
 

フィールドの詳細

RANDOMPIXELORDER

public static final int RANDOMPIXELORDER
ピクセルの転送順序はランダムです。すなわち ImageConsumer は、ピクセルの転送順序の最適化を行いません。setHints メソッドが呼び出されていないときは、ランダムな順序での転送がデフォルトとなります。
関連項目:
setHints(int)

TOPDOWNLEFTRIGHT

public static final int TOPDOWNLEFTRIGHT
ピクセルは上下左右の順で転送されます。
関連項目:
setHints(int)

COMPLETESCANLINES

public static final int COMPLETESCANLINES
ピクセルは、1 度に (複数の) 完全な走査線で転送されます。
関連項目:
setHints(int)

SINGLEPASS

public static final int SINGLEPASS
ピクセルは 1 回のパスで転送されます。各ピクセルは、setPixels メソッドの呼び出しで 1 回しか転送されません。この基準と異なるイメージ形式の例として、プログレッシブ JPEG イメージがあります。この形式は、複数のパスでピクセルを定義し、より洗練されたイメージを構成します。
関連項目:
setHints(int)

SINGLEFRAME

public static final int SINGLEFRAME
イメージデータは、1 枚の静止画像を含んでいます。ピクセルを setPixels メソッドの呼び出しで定義したあと、転送すべきデータがなくなると、imageComplete メソッドを STATICIMAGEDONE フラグ付きで呼び出します。この基準と異なるイメージの例は、ユーザが操作する 3D レンダリングの表示やビデオ出力です。これらの各フレームの終りには、SINGLEFRAMEDONE フラグ付きの imageComplete の呼び出しが指示されています。
関連項目:
setHints(int), imageComplete(int)

IMAGEERROR

public static final int IMAGEERROR
イメージの生成中にエラーが発生したことを表します。
関連項目:
imageComplete(int)

SINGLEFRAMEDONE

public static final int SINGLEFRAMEDONE
イメージの 1 フレームの転送が完了しましたが、転送すべきフレームがまだあることを表します。
関連項目:
imageComplete(int)

STATICIMAGEDONE

public static final int STATICIMAGEDONE
イメージの転送が完了し、転送するピクセルもフレームもないことを表します。
関連項目:
imageComplete(int)

IMAGEABORTED

public static final int IMAGEABORTED
イメージ生成が故意に中断されたことを表します。
関連項目:
imageComplete(int)
メソッドの詳細

setDimensions

public void setDimensions(int width,
                          int height)
setDimensions メソッド呼び出しを使って、ソースイメージの大きさを報告します。

setProperties

public void setProperties(Hashtable props)
このイメージに関して、拡張可能なプロパティのリストを設定します。

setColorModel

public void setColorModel(ColorModel model)
setPixels メソッドを使って設定されるピクセルの大部分に対して使用される ColorModel オブジェクトを設定します。setPixels メソッドによって転送されるピクセルのセットは、それぞれ ColorModel オブジェクトを含んでいるので、ピクセル値の転送において指定された ColorModel だけが使われるわけではないことに注意してください。複数の ColorModel オブジェクトが使われる例としては、フィルタを通したイメージがあります。フィルタは、無修正で送るピクセルには元の ColorModel を使い、修正するピクセルにはより適した ColorModel を使います。
関連項目:
ColorModel

setHints

public void setHints(int hintflags)
ImageProducer は、どのような順序でもピクセルを転送することができますが、どのようにしてピクセルが転送されるかを ImageConsumer が知っていれば、ImageConsumer は ColorModel へのピクセルのスケーリングや変換をより能率的かつ高品質に行うことができます。引数は、ピクセルが転送される方法に関する情報のビットマスクを持つので、setHints メソッドは setPixels メソッドが呼び出されるより前に呼び出されなければなりません。ImageProducer が、このガイドラインに従っていない場合の結果は未定義です。

setPixels

public void setPixels(int x,
                      int y,
                      int w,
                      int h,
                      ColorModel model,
                      byte[] pixels,
                      int off,
                      int scansize)
イメージのピクセルは、1 回以上の setPixels メソッドの呼び出しによって転送されます。各呼び出しは、配列に入っているソースピクセルの位置と矩形の大きさを指定します。ピクセルを適切な色とアルファ成分に変換するには、指定された ColorModel オブジェクトを使用しなければなりません。(m, n の位置の) ピクセルは、インデックス (n * scansize + m + off) の pixels 配列に置かれます。このメソッドで転送されるピクセルは、すべて byte で格納されています。
関連項目:
ColorModel

setPixels

public void setPixels(int x,
                      int y,
                      int w,
                      int h,
                      ColorModel model,
                      int[] pixels,
                      int off,
                      int scansize)
イメージのピクセルは、1 回以上の setPixels メソッドの呼び出しによって転送されます。各呼び出しは、配列に入っているソースピクセルの位置と矩形の大きさを指定します。ピクセルを適切な色とアルファ成分に変換するには、指定された ColorModel オブジェクトを使用しなければなりません。(m, n の位置の) ピクセルは、インデックス (n * scansize + m + off) の pixels 配列に置かれます。このメソッドで転送されるピクセルは、すべて int で格納されています。
関連項目:
ColorModel

imageComplete

public void imageComplete(int status)
このメソッドは、ImageProducer がソースイメージのすべてのピクセルを転送し終えたとき、マルチフレームアニメーションの 1 フレームを転送し終えたとき、またはイメージの生成中およびローディング中にエラーが発生したときに呼び出されます。エラーが発生したとき、転送に成功したフレームが必要なければ、ImageConsumer は ImageProducer に登録されたコンシューマリストからそれ自体を削除すべきです。
関連項目:
ImageProducer.removeConsumer(java.awt.image.ImageConsumer)

JavaTM 2 Platform
Std. Ed. v1.3

バグや機能要求の報告
さらに詳しい API リファレンスおよび開発者ドキュメントについては、 Java 2 SDK SE Developer Documentation を参照してください。このドキュメントには、概念、用語の定義、回避策、 実用的なコード例など、開発者を対象にした詳細な解説が掲載されています。

Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.