|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Object | +--java.awt.image.ColorModel
ColorModel 抽象クラスは、ピクセル値を色成分 (赤、緑、青など) およびアルファ成分に変換するメソッドをカプセル化します。イメージをスクリーン、プリンタ、またはほかのイメージに描画するには、ピクセル値を色成分およびアルファ成分に変換する必要があります。このクラスのメソッドの引数または戻り値として、ピクセルは 32 ビット int またはプリミティブ型の配列として表されます。ColorModel の色成分の数、順序、および解釈は、ColorSpace で指定します。アルファ情報を持たないピクセルデータとともに使用される ColorModel は、すべてのピクセルを不透明 (アルファ値 1.0) として処理します。
この ColorModel クラスでは、ピクセル値の 2 つの表現をサポートします。ピクセル値は、単一の 32 ビット int またはプリミティブ型の配列として表すことができます。Java(tm) Platform 1.0 および 1.1 API では、ピクセルを単一の byte 値または単一の int 値で表現しました。ColorModel クラスでは、ピクセル値引数は int として渡されました。Java(tm) 2 Platform API は、イメージを表すための新しいクラスを導入しました。Raster クラスおよび SampleModel クラスに基づく BufferedImage オブジェクトまたは RenderedImage オブジェクトの場合、ピクセル値は単一の int としては表現できません。このため、現在、ColorModel にはプリミティブ型の配列として表示されたピクセル値を受け入れるメソッドがあります。特定の ColorModel オブジェクトによって使用されるプリミティブ型は、転送型と呼ばれます。
ピクセル値を単一の int として表現できないイメージとともに使用される ColorModel オブジェクトは、単一の int ピクセル引数をとるメソッドが呼び出されると IllegalArgumentException をスローします。ColorModel のサブクラスでは、この例外が発生する条件を指定しなければなりません。DirectColorModel オブジェクトや IndexColorModel オブジェクトでは、この例外は発生しません。
現在 Java 2D(tm) 2D API でサポートされている転送型は、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、および DataBuffer.TYPE_INT です。特定の ColorModel オブジェクトの転送型は、オブジェクトが生成されるときに明示的にまたはデフォルトで指定されます。ColorModel の各サブクラスでは、利用可能な転送型がどれか、およびピクセルを表すプリミティブ配列の要素数がどのように決められるかを指定する必要があります。
BufferedImage の場合、Raster および Raster オブジェクトの SampleModel の転送型 (それらのクラスの getTransferType メソッドを介して取得できる) は、ColorModel の転送型と一致する必要があります。Raster および SampleModel のピクセルを表す配列の要素数 (それらのクラスの getNumDataElements メソッドを介して取得できる) は、ColorModel と一致しなければなりません。
ピクセル値から色成分およびアルファ成分に変換するために使用されるアルゴリズムは、サブクラスによって異なります。たとえば、BufferedImage オブジェクトの Raster の SampleModel によって得られるサンプルと色成分およびアルファ成分の間は 1 対 1 で対応していなくてもかまいません。1 対 1 の対応がある場合でも、サンプルのビット数は、対応する色成分およびアルファ成分のビット数と同じでなくてもかまいません。各サブクラスでは、ピクセル値から色成分およびアルファ成分への変換がどのように行われるかを指定する必要があります。
ColorModel クラスのメソッドは、色成分およびアルファ成分の 2 つの異なる表現を使用します。非標準化形式では、各成分は 0 と 2n - 1 の間の符号なし整数値です。n は、特定の成分の有効ビットの数です。特定の ColorModel のピクセル値がアルファサンプルであらかじめ乗算されているカラーサンプルを表す場合、非標準化色成分値も同じようにあらかじめ乗算されます。標準化形式の場合、各成分は 0.0 と 1.0 の間の float 値です。標準化色成分値はあらかじめ乗算されません。
IndexColorModel,
ComponentColorModel,
PackedColorModel,
DirectColorModel,
Image,
BufferedImage,
RenderedImage,
ColorSpace,
SampleModel,
Raster,
DataBuffer| フィールドの概要 | |
protected int |
pixel_bits
ピクセルのビットの総数です。 |
protected int |
transferType
ピクセル値を表すために使用される配列のデータ型です。 |
| インタフェース java.awt.Transparency から継承したフィールド |
BITMASK, OPAQUE, TRANSLUCENT |
| コンストラクタの概要 | |
|
ColorModel(int bits)
指定されたビット数のピクセルを色成分およびアルファ成分に変換する ColorModel を構築します。 |
protected |
ColorModel(int pixel_bits,
int[] bits,
ColorSpace cspace,
boolean hasAlpha,
boolean isAlphaPremultiplied,
int transparency,
int transferType)
ピクセル値を色成分およびアルファ成分に変換する ColorModel を構築します。 |
| メソッドの概要 | |
ColorModel |
coerceData(WritableRaster raster,
boolean isAlphaPremultiplied)
ラスタデータが isAlphaPremultiplied 変数で指定された状態と一致するようにします。 |
SampleModel |
createCompatibleSampleModel(int w,
int h)
指定された幅と高さで、 ColorModel と互換性のある SampleModel を生成します。 |
WritableRaster |
createCompatibleWritableRaster(int w,
int h)
指定された幅と高さで、 ColorModel と互換性のあるデータレイアウト (SampleModel) を持つ WritableRaster を生成します。 |
boolean |
equals(Object obj)
指定された Object が ColorModel のインスタンスであり、この ColorModel と等しいかどうかを判定します。 |
void |
finalize()
この ColorModel が参照されなくなったときに、関連しているシステムリソースを破棄します。 |
abstract int |
getAlpha(int pixel)
指定されたピクセルのアルファ成分を 0 〜 255 の範囲でスケーリングして返します。 |
int |
getAlpha(Object inData)
指定されたピクセルのアルファ成分を 0 〜 255 の範囲でスケーリングして返します。 |
WritableRaster |
getAlphaRaster(WritableRaster raster)
この ColorModel のピクセル値が別々の空間バンドとして色情報およびアルファ情報を表す場合 (ComponentColorModel および DirectColorModel など) に、入力 Raster から抽出された、イメージのアルファチャネルを表す Raster を返します。 |
abstract int |
getBlue(int pixel)
指定されたピクセルの青色成分を、デフォルト RGB ColorSpace (sRGB) の 0 〜 255 の範囲でスケーリングして返します。 |
int |
getBlue(Object inData)
指定されたピクセルの青色成分をデフォルト RGB ColorSpace (sRGB) の 0 〜 255 の範囲でスケーリングして返します。 |
ColorSpace |
getColorSpace()
この ColorModel に関連した ColorSpace を返します。 |
int[] |
getComponents(int pixel,
int[] components,
int offset)
この ColorModel のピクセルを指定して、標準化されていない色成分およびアルファ成分の配列を返します。 |
int[] |
getComponents(Object pixel,
int[] components,
int offset)
この ColorModel のピクセルを指定して、標準化されていない色成分およびアルファ成分の配列を返します。 |
int[] |
getComponentSize()
色成分およびアルファ成分ごとのビット数の配列を返します。 |
int |
getComponentSize(int componentIdx)
指定された色成分およびアルファ成分のビット数を返します。 |
int |
getDataElement(int[] components,
int offset)
標準化されていない色成分およびアルファ成分の配列を指定して、この ColorModel に int として表されるピクセル値を返します。 |
Object |
getDataElements(int[] components,
int offset,
Object obj)
標準化されていない色成分およびアルファ成分の配列を指定して、この ColorModel のピクセルのデータ要素配列表現を返します。 |
Object |
getDataElements(int rgb,
Object pixel)
デフォルト RGB カラーモデルの整数型ピクセル表現を指定して、この ColorModel のピクセルのデータ要素配列表現を返します。 |
abstract int |
getGreen(int pixel)
指定されたピクセルの緑色成分を、デフォルト RGB ColorSpace (sRGB) の 0 〜 255 の範囲でスケーリングして返します。 |
int |
getGreen(Object inData)
指定されたピクセルの緑色成分をデフォルト RGB ColorSpace (sRGB) の 0 〜 255 の範囲でスケーリングして返します。 |
float[] |
getNormalizedComponents(int[] components,
int offset,
float[] normComponents,
int normOffset)
非標準化成分配列を指定して、標準化形式ですべての色成分およびアルファ成分の配列を返します。 |
int |
getNumColorComponents()
この ColorModel の色成分数を返します。 |
int |
getNumComponents()
この ColorModel の成分 (アルファを含む) の数を返します。 |
int |
getPixelSize()
この ColorModel によって記述されるピクセルごとのビット数を返します。 |
abstract int |
getRed(int pixel)
指定されたピクセルの赤色成分を、デフォルト RGB ColorSpace (sRGB) の 0 〜 255 の範囲でスケーリングして返します。 |
int |
getRed(Object inData)
指定されたピクセルの赤色成分をデフォルト RGB ColorSpace (sRGB) の 0 〜 255 の範囲でスケーリングして返します。 |
int |
getRGB(int pixel)
ピクセルの色成分およびアルファ成分をデフォルト RGB カラーモデル形式で返します。 |
int |
getRGB(Object inData)
指定されたピクセルの色成分およびアルファ成分をデフォルト RGB カラーモデル形式で返します。 |
static ColorModel |
getRGBdefault()
プログラマのために、AWT イメージインタフェースの多くのメソッドで使用される整数型 RGB 値のデフォルト形式を記述する DirectColorModel を返します。 |
int |
getTransferType()
この ColorModel の転送型を返します。 |
int |
getTransparency()
透明度を返します。 |
int[] |
getUnnormalizedComponents(float[] normComponents,
int normOffset,
int[] components,
int offset)
標準化成分配列を指定して、非標準化形式ですべての色成分およびアルファ成分の配列を返します。 |
boolean |
hasAlpha()
アルファがこの ColorModel でサポートされているかどうかを返します。 |
int |
hashCode()
この ColorModel のハッシュコードを返します。 |
boolean |
isAlphaPremultiplied()
この ColorModel で変換されるピクセル値でアルファがあらかじめ乗算されているかどうかを返します。 |
boolean |
isCompatibleRaster(Raster raster)
raster がこの ColorModel と互換性がある場合は true、そうでない場合は false を返します。 |
boolean |
isCompatibleSampleModel(SampleModel sm)
SampleModel がこの ColorModel と互換性があるかどうかを判定します。 |
String |
toString()
この ColorModel オブジェクトの内容を表す String を返します。 |
| クラス java.lang.Object から継承したメソッド |
clone, getClass, notify, notifyAll, wait, wait, wait |
| フィールドの詳細 |
protected int pixel_bits
protected int transferType
| コンストラクタの詳細 |
public ColorModel(int bits)
ColorModel を構築します。カラースペースはデフォルトの RGB ColorSpace (sRGB) です。ピクセル値には、アルファ情報が含まれていると見なされます。色およびアルファの情報が別々の空間バンドとしてピクセル値で表される場合、カラーバンドにはアルファ値があらかじめ乗算されていません。透明度型は、java.awt.Transparency.TRANSLUCENT です。転送型は、単一ピクセルを保持することができる DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、または DataBuffer.TYPE_INT の最小値です (ビットが 32 より大きい場合は DataBuffer.TYPE_UNDEFINED)。このコンストラクタは色成分およびアルファ成分ごとのビット数に関する情報を持たないので、このコンストラクタを呼び出すサブクラスは、この情報を必要とするメソッドをオーバーライドします。bits - ピクセルのビット数IllegalArgumentException - bits のビット数が 1 より小さい場合
protected ColorModel(int pixel_bits,
int[] bits,
ColorSpace cspace,
boolean hasAlpha,
boolean isAlphaPremultiplied,
int transparency,
int transferType)
ColorModel を構築します。色成分は、指定された ColorSpace にあります。pixel_bits は、ピクセル値のビット数です。bits 配列は、色成分およびアルファ成分ごとの有効ビット数を指定します。その長さは、ピクセル値にアルファ情報がない場合には ColorSpace の成分数、アルファ情報がある場合にはこの数字に 1 を加算します。hasAlpha は、アルファ情報が存在するかどうかを示します。boolean 型の isAlphaPremultiplied は、色情報およびアルファ情報が別々の空間バンドとして表されるピクセル値を解釈する方法を指定します。boolean が true の場合、カラーサンプルはアルファサンプルで乗算されたと見なされます。transparency は、このカラーモデルで表すことができるアルファ値を指定します。転送型は、ピクセル値を表すのに使用されたプリミティブ配列の型です。ビット配列は、ピクセル値からの変換後の色成分およびアルファ成分ごとの有効ビット数を格納します。たとえば、pixel_bits が 16 の IndexColorModel の場合、ビット配列は各要素が 8 に設定されている 4 つの要素を持ちます。pixel_bits - ピクセル値のビット数bits - 色成分およびアルファ成分ごとの有効ビット数を指定する配列cspace - 指定された ColorSpacehasAlpha - アルファ情報が存在する場合は true、そうでない場合は falseisAlphaPremultiplied - カラーサンプルがアルファサンプルによってあらかじめ乗算されていると見なされる場合は true、そうでない場合は falsetransparency - このカラーモデルで表すことができるアルファ値transferType - ピクセル値を表すのに使用される配列の型IllegalArgumentException - ビット配列の長さがこの ColorModel の色成分またはアルファ成分の数より小さい場合、または透明度が有効な値でない場合Transparency| メソッドの詳細 |
public static ColorModel getRGBdefault()
DirectColorModel を返します。カラースペースは、デフォルトの ColorSpace (sRGB) です。RGB 値の形式は、0xAARRGGBB のように、最上位バイトから最下位バイトまで、アルファ、赤、緑、および青の各成分をこの順に並べた、それぞれ 8 ビットの整数です。色成分は、アルファ成分によってあらかじめ乗算されません。この形式は、特定のデバイスまたはすべてのイメージのネイティブまたはもっとも効率的な ColorModel を必ずしも表しません。共通のカラーモデル形式として使用されます。DirectColorModel オブジェクトpublic final boolean hasAlpha()
ColorModel でサポートされているかどうかを返します。ColorModel でアルファがサポートされている場合は true、そうでない場合は falsepublic final boolean isAlphaPremultiplied()
ColorModel で変換されるピクセル値でアルファがあらかじめ乗算されているかどうかを返します。boolean が true の場合、この ColorModel は色情報およびアルファ情報が別々の空間バンドとして表されるピクセル値を解釈するために使用され、カラーサンプルはアルファサンプルによって乗算されたと見なされます。ColorModel で変換されるピクセル値でアルファがあらかじめ乗算されている場合は true、そうでない場合は falsepublic final int getTransferType()
ColorModel の転送型を返します。転送型は、ピクセル値を配列として表すのに使われるプリミティブ配列の型です。public int getPixelSize()
ColorModel によって記述されるピクセルごとのビット数を返します。public int getComponentSize(int componentIdx)
ColorSpace で指定された順序でインデックスが付けられます。通常、この順序はカラースペースタイプの名前を反映します。たとえば、TYPE_RGB の場合、インデックス 0 は赤、インデックス 1 は緑、インデックス 2 は青に対応します。この ColorModel がアルファをサポートする場合、アルファ成分は最後に指定された色成分のあとのインデックスに対応します。componentIdx - 色成分およびアルファ成分のインデックスArrayIndexOutOfBoundsException - componentIdx が成分の数より大きいか、0 より小さい場合NullPointerException - ビット配列の数が null の場合public int[] getComponentSize()
ColorSpace で指定された順序で色成分を格納し、アルファ成分がある場合は、次にアルファ成分が続きます。public int getTransparency()
Transparency 内の getTransparencyColorModel の透明度Transparency.OPAQUE,
Transparency.BITMASK,
Transparency.TRANSLUCENTpublic int getNumComponents()
ColorModel の成分 (アルファを含む) の数を返します。これは、色成分の数 (アルファ成分がある場合は 1 を加算) と等しくなります。ColorModel の成分数public int getNumColorComponents()
ColorModel の色成分数を返します。これは、ColorSpace.getNumComponents() によって返された成分数です。ColorModel の色成分数ColorSpace.getNumComponents()public abstract int getRed(int pixel)
ColorModel のピクセル値が単一の int として表現できない場合は IllegalArgumentException がスローされます。戻り値はあらかじめ乗算されていない値になります。たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が 0 の場合、赤の値は 0 になります。pixel - 指定されたピクセルpublic abstract int getGreen(int pixel)
ColorModel のピクセル値が単一の int として表現できない場合は IllegalArgumentException がスローされます。戻り値は、あらかじめ乗算されていない値になります。たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が 0 の場合、緑の値は 0 になります。pixel - 指定されたピクセルpublic abstract int getBlue(int pixel)
ColorModel のピクセル値が単一の int として表現できない場合は IllegalArgumentException がスローされます。戻り値は、あらかじめ乗算されていない値になります。たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が 0 の場合、青の値は 0 になります。pixel - 指定されたピクセルpublic abstract int getAlpha(int pixel)
ColorModel のピクセル値が単一の int として表現できない場合は IllegalArgumentException がスローされます。pixel - 指定されたピクセルpublic int getRGB(int pixel)
ColorModel のピクセル値が単一の int として表現できない場合は IllegalArgumentException がスローされます。戻り値は、あらかじめ乗算されていない形式になります。たとえば、アルファがあらかじめ乗算されている場合、このメソッドはそれを色成分で除算します。アルファ値が 0 の場合、色の値は 0 になります。pixel - 指定されたピクセルgetRGBdefault()public int getRed(Object inData)
ColorSpace (sRGB) の 0 〜 255 の範囲でスケーリングして返します。必要な場合は、色変換が行われます。ピクセル値は、オブジェクト参照として渡された transferType 型のデータ要素の配列で指定されます。戻り値は、あらかじめ乗算されていない値になります。たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が 0 の場合、赤の値は 0 になります。inData が transferType 型のプリミティブ配列でない場合は、ClassCastException がスローされます。inData の大きさがこの ColorModel のピクセル値を保持するのに十分でない場合は、ArrayIndexOutOfBoundsException がスローされます。この transferType がサポートされていない場合は、UnsupportedOperationException がスローされます。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスでなければなりません。サブクラスはこのメソッドの実装を継承します。サブクラスがその実装をオーバーライドしない場合、サブクラスが DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、または DataBuffer.TYPE_INT 以外の transferType を使用すると、このメソッドは例外をスローします。inData - ピクセル値の配列ClassCastException - inData が transferType 型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException - inData がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException - この ColorModel でこの tranferType がサポートされていない場合public int getGreen(Object inData)
ColorSpace (sRGB) の 0 〜 255 の範囲でスケーリングして返します。必要な場合は、色変換が行われます。ピクセル値は、オブジェクト参照として渡された transferType 型のデータ要素の配列で指定されます。戻り値は、あらかじめ乗算されていない値になります。たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が 0 の場合、緑の値は 0 になります。inData が transferType 型のプリミティブ配列でない場合は、ClassCastException がスローされます。inData の大きさがこの ColorModel のピクセル値を保持するのに十分でない場合は、ArrayIndexOutOfBoundsException がスローされます。この transferType がサポートされていない場合は、UnsupportedOperationException がスローされます。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスでなければなりません。サブクラスはこのメソッドの実装を継承します。サブクラスがその実装をオーバーライドしない場合、サブクラスが DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、または DataBuffer.TYPE_INT 以外の transferType を使用すると、このメソッドは例外をスローします。inData - ピクセル値の配列ClassCastException - inData が transferType 型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException - inData がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException - この ColorModel でこの tranferType がサポートされていない場合public int getBlue(Object inData)
ColorSpace (sRGB) の 0 〜 255 の範囲でスケーリングして返します。必要な場合は、色変換が行われます。ピクセル値は、オブジェクト参照として渡された transferType 型のデータ要素の配列で指定されます。戻り値は、あらかじめ乗算されていない値になります。たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が 0 の場合、青の値は 0 になります。inData が transferType 型のプリミティブ配列でない場合は、ClassCastException がスローされます。inData の大きさがこの ColorModel のピクセル値を保持するのに十分でない場合は、ArrayIndexOutOfBoundsException がスローされます。この transferType がサポートされていない場合は、UnsupportedOperationException がスローされます。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスでなければなりません。サブクラスはこのメソッドの実装を継承します。サブクラスがその実装をオーバーライドしない場合、サブクラスが DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、または DataBuffer.TYPE_INT 以外の transferType を使用すると、このメソッドは例外をスローします。inData - ピクセル値の配列ClassCastException - inData が transferType 型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException - inData がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException - この ColorModel でこの tranferType がサポートされていない場合public int getAlpha(Object inData)
ClassCastException がスローされます。inData の大きさが ColorModel のピクセル値を保持するのに十分でない場合は、ArrayIndexOutOfBoundsException がスローされます。この transferType がサポートされていない場合は、UnsupportedOperationException がスローされます。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスでなければなりません。サブクラスはこのメソッドの実装を継承します。サブクラスがその実装をオーバーライドしない場合、サブクラスが DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、または DataBuffer.TYPE_INT 以外の transferType を使用すると、このメソッドは例外をスローします。inData - 指定されたピクセルClassCastException - inData が transferType 型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException - inData がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException - この ColorModel でこの tranferType がサポートされていない場合public int getRGB(Object inData)
ClassCastException がスローされます。inData の大きさがこの ColorModel のピクセル値を格納するのに十分でない場合は、ArrayIndexOutOfBoundsException がスローされます。戻り値は、あらかじめ乗算されていない形式になります。つまり、アルファがあらかじめ乗算されている場合、このメソッドは色成分でそれを除算します。アルファ値が 0 の場合、色の値は 0 になります。inData - 指定されたピクセルgetRGBdefault()
public Object getDataElements(int rgb,
Object pixel)
ColorModel のピクセルのデータ要素配列表現を返します。この配列は、WritableRaster オブジェクトの WritableRaster.setDataElements(int, int, java.lang.Object) メソッドに渡すことができます。pixel 変数が null の場合は、新しい配列が割り当てられます。pixel が null でない場合は、transferType 型のプリミティブ配列にする必要があります。そうでない場合は ClassCastException がスローされます。pixel の大きさがこの ColorModel のピクセル値を保持するのに十分でない場合は、ArrayIndexOutOfBoundsException がスローされます。ピクセル配列は返されます。この transferType がサポートされていない場合は、UnsupportedOperationException がスローされます。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この abstract クラスの実装は UnsupportedOperationException をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。rgb - デフォルト RGB カラーモデルの整数型ピクセル表現pixel - 指定されたピクセルColorModel の指定されたピクセルの配列表現ClassCastException - pixel が transferType 型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException - pixel がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException - この ColorModel でこのメソッドがサポートされていない場合WritableRaster.setDataElements(int, int, java.lang.Object),
SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)
public int[] getComponents(int pixel,
int[] components,
int offset)
ColorModel のピクセルを指定して、標準化されていない色成分およびアルファ成分の配列を返します。pixel 値は、int として指定されます。この ColorModel のピクセル値が単一の int として表現できない場合は、IllegalArgumentException がスローされます。たとえば、このメソッドは、DirectColorModel の特定のピクセル値の成分を取り出すために使用できます。components 配列が null の場合は、新しい配列が割り当てられます。components 配列が返されます。色成分およびアルファ成分は、offset を起点に components 配列に格納されます (配列がこのメソッドによって割り当てられた場合も同様)。components 配列が null でない場合に、(offset を起点に) すべての色成分およびアルファ成分を保持するのに十分な大きさでないときは、ArrayIndexOutOfBoundsException がスローされます。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この abstract クラスの実装は UnsupportedOperationException をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。pixel - 指定されたピクセルcomponents - 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset - 色成分およびアルファ成分の格納を開始する、components 配列内のオフセットUnsupportedOperationException - この ColorModel でこのメソッドがサポートされていない場合
public int[] getComponents(Object pixel,
int[] components,
int offset)
ColorModel のピクセルを指定して、標準化されていない色成分およびアルファ成分の配列を返します。pixel 値は、オブジェクト参照として渡された transferType 型のデータ要素の配列で指定されます。pixel が transferType 型のプリミティブ配列でない場合は、ClassCastException がスローされます。pixel がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException がスローされます。このメソッドは、任意の ColorModel の特定のピクセル値の成分を取り出すために使用できます。components 配列が null の場合は、新しい配列が割り当てられます。components 配列が返されます。色成分およびアルファ成分は、offset を起点に components 配列に格納されます (配列がこのメソッドによって割り当てられた場合も同様)。components 配列が null でない場合に、(offset を起点に) すべての色成分およびアルファ成分を保持するのに十分な大きさでないときは、ArrayIndexOutOfBoundsException がスローされます。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この abstract クラスの実装は UnsupportedOperationException をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。pixel - 指定されたピクセルcomponents - 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset - 指定されたピクセルの色成分およびアルファ成分の格納を開始する components 配列内のインデックスUnsupportedOperationException - この ColorModel でこのメソッドがサポートされていない場合
public int[] getUnnormalizedComponents(float[] normComponents,
int normOffset,
int[] components,
int offset)
components 配列が null の場合は、新しい配列が割り当てられます。components 配列が返されます。色成分およびアルファ成分は、offset を起点に components 配列に格納されます (配列がこのメソッドによって割り当てられた場合も同様)。components 配列が null でない場合に、(offset を起点に) すべての色成分およびアルファ成分を格納するのに十分な大きさでないときは、ArrayIndexOutOfBoundsException がスローされます。normComponents 配列が normOffset を起点にすべての色成分およびアルファ成分を格納するのに十分な大きさでない場合は、IllegalArgumentException がスローされます。normComponents - 標準化成分を格納している配列normOffset - 標準化成分の取り出しを開始する、normComponents 配列内のオフセットcomponents - normComponents から成分を受け取る配列offset - normComponents から標準化成分の格納を開始する、components 内のインデックスIllegalArgumentException - normComponents から normOffset を引いた長さが numComponents より小さい場合UnsupportedOperationException - この ColorModel メソッドのコンストラクタが super(bits) コンストラクタを呼び出し、かつこのメソッドをオーバーライドしなかった場合。ColorModel(int) のコンストラクタ参照
public float[] getNormalizedComponents(int[] components,
int offset,
float[] normComponents,
int normOffset)
normComponents 配列が null の場合は、新しい配列が割り当てられます。normComponents 配列が返されます。色成分およびアルファ成分は、normOffset を起点に normComponents 配列に格納されます (配列がこのメソッドによって割り当てられた場合も同様)。normComponents 配列が null でない場合に、(normOffset を起点に) すべての色成分およびアルファ成分を格納するのに十分な大きさでないときは、ArrayIndexOutOfBoundsException がスローされます。components 配列が offset を起点にすべての色成分およびアルファ成分を格納するのに十分な大きさでない場合は、IllegalArgumentException がスローされます。components - 標準化されていない成分を格納している配列offset - 標準化されていない成分の取り出しを開始する、components 配列内のオフセットnormComponents - components から成分を受け取る配列normOffset - components から標準化されていない成分の格納を開始する、normComponents 内のインデックスUnsupportedOperationException - この ColorModel メソッドのコンストラクタが super(bits) コンストラクタを呼び出し、かつこのメソッドをオーバーライドしなかった場合。ColorModel(int) のコンストラクタ参照UnsupportedOperationException - このメソッドが成分ごとのビット数を判定できなかった場合
public int getDataElement(int[] components,
int offset)
ColorModel に int として表されるピクセル値を返します。この ColorModel のピクセル値が単一の int として表現できない場合、このメソッドは IllegalArgumentException をスローします。components 配列が (offset を起点に) すべての色成分およびアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException がスローされます。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この abstract クラスの実装は UnsupportedOperationException をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。components - 標準化されていない色成分およびアルファ成分の配列offset - 色成分およびアルファ成分の取り出しを開始する、components 内のインデックスColorModel 内の int ピクセル値IllegalArgumentException - この ColorModel のピクセル値が単一の int として表現できない場合ArrayIndexOutOfBoundsException - components 配列の大きさが offset を起点にすべての色成分およびアルファ成分を保持するのに十分でない場合UnsupportedOperationException - この ColorModel でこのメソッドがサポートされていない場合
public Object getDataElements(int[] components,
int offset,
Object obj)
ColorModel のピクセルのデータ要素配列表現を返します。この配列は、WritableRaster オブジェクトの setDataElements メソッドに渡すことができます。components 配列が (offset を起点に) すべての色成分およびアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException がスローされます。obj 変数が null の場合は、新しい配列が割り当てられます。obj が null でない場合は、transferType 型のプリミティブ配列にする必要があります。そうでない場合は、ClassCastException がスローされます。obj がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException がスローされます。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この abstract クラスの実装は UnsupportedOperationException をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。components - 標準化されていない色成分およびアルファ成分の配列offset - 色成分およびアルファ成分の取り出しを開始する、components 内のインデックスobj - 色成分およびアルファ成分の配列を表す ObjectObjectClassCastException - obj が transferType 型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException - obj がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合、あるいは components 配列が offset を起点にすべての色成分およびアルファ成分を保持するのに十分な大きさでない場合UnsupportedOperationException - この ColorModel でこのメソッドがサポートされていない場合WritableRaster.setDataElements(int, int, java.lang.Object),
SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)public boolean equals(Object obj)
Object が ColorModel のインスタンスであり、この ColorModel と等しいかどうかを判定します。Object 内の equalsobj - 等しいかどうかが判定される ObjectObject が ColorModel のインスタンスであり、この ColorModel と等しい場合は true、そうでない場合は falsepublic int hashCode()
Object 内の hashCodepublic final ColorSpace getColorSpace()
ColorModel に関連した ColorSpace を返します。ColorModel の ColorSpace
public ColorModel coerceData(WritableRaster raster,
boolean isAlphaPremultiplied)
isAlphaPremultiplied 変数で指定された状態と一致するようにします。このとき、データはこの ColorModel によって現在正しく記述されていると見なされます。このメソッドは、カラーラスタデータをアルファで乗算または除算します。データが正しい状態にある場合には、処理は行いません。データが強制的に型変換される必要がある場合、このメソッドは isAlphaPremultiplied フラグを正しく設定した、この ColorModel のインスタンスも返します。この ColorModel によってサポートされていない場合、このメソッドは UnsupportedOperationException をスローします。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この abstract クラスの実装は UnsupportedOperationException をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。raster - WritableRaster データisAlphaPremultiplied - アルファがあらかじめ乗算される場合は true、そうでない場合は falseColorModel オブジェクトpublic boolean isCompatibleRaster(Raster raster)
raster がこの ColorModel と互換性がある場合は true、そうでない場合は false を返します。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この abstract クラスの実装は UnsupportedOperationException をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。raster - 互換性を判定する Raster オブジェクトraster がこの ColorModel と互換性がある場合は trueUnsupportedOperationException - この ColorModel でこのメソッドが実装されていない場合
public WritableRaster createCompatibleWritableRaster(int w,
int h)
ColorModel と互換性のあるデータレイアウト (SampleModel) を持つ WritableRaster を生成します。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この abstract クラスの実装は UnsupportedOperationException をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。w - 新しい WritableRaster に適用される幅h - 新しい WritableRaster に適用される高さWritableRaster オブジェクトUnsupportedOperationException - この ColorModel でこのメソッドがサポートされていない場合WritableRaster,
SampleModel
public SampleModel createCompatibleSampleModel(int w,
int h)
ColorModel と互換性のある SampleModel を生成します。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この abstract クラスの実装は UnsupportedOperationException をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。w - 新しい SampleModel に適用される幅h - 新しい SampleModel に適用される高さSampleModel オブジェクトUnsupportedOperationException - この ColorModel でこのメソッドがサポートされていない場合SampleModelpublic boolean isCompatibleSampleModel(SampleModel sm)
SampleModel がこの ColorModel と互換性があるかどうかを判定します。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この abstract クラスの実装は UnsupportedOperationException をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。sm - 指定された SampleModelSampleModel がこの ColorModel と互換性がある場合は true、そうでない場合は falseUnsupportedOperationException - この ColorModel でこのメソッドがサポートされていない場合SampleModelpublic void finalize()
ColorModel が参照されなくなったときに、関連しているシステムリソースを破棄します。Object 内の finalizejava.lang.Object からコピーされたタグ:Throwable - このメソッドで生じた Exceptionpublic WritableRaster getAlphaRaster(WritableRaster raster)
ColorModel のピクセル値が別々の空間バンドとして色情報およびアルファ情報を表す場合 (ComponentColorModel および DirectColorModel など) に、入力 Raster から抽出された、イメージのアルファチャネルを表す Raster を返します。そのような ColorModel に関連した Raster オブジェクトがアルファバンドを持っている場合、このメソッドは、このアルファバンドがイメージデータの最後のバンドとして格納されていると見なします。この ColorModel に関連している独立した空間アルファチャネルがない場合、このメソッドは null を返します。ルックアップテーブルにアルファを持つ IndexColorModel の場合、このメソッドは null を返します。これは、空間的に分離したアルファチャネルがないためです。このメソッドは、新しい Raster を生成します (ただしデータ配列は共有される)。ColorModel は abstract クラスなので、どのインスタンスもサブクラスのインスタンスになります。この抽象クラスの実装は null を返すので、サブクラスはこのメソッドをオーバーライドして null を返す以外の動作を取得する必要があります。raster - 指定された RasterRaster から取得される、イメージのアルファチャネルを表す Rasterpublic String toString()
ColorModel オブジェクトの内容を表す String を返します。Object 内の toStringColorModel オブジェクトの内容を表す String
|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
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.