- すべての実装されたインタフェース:
Transparency
- 直系の既知のサブクラス:
ComponentColorModel
,IndexColorModel
,PackedColorModel
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) APIでサポートされている転送型は、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、DataBuffer.TYPE_INT、DataBuffer.TYPE_SHORT、DataBuffer.TYPE_FLOAT、およびDataBuffer.TYPE_DOUBLEです。 転送型の初めの3つに基づくColorModelとイメージを使用すると、ほとんどの描画操作がより速く実行されます。 また、残りの3つの転送型に基づくColorModelとイメージについては、イメージのフィルタ操作のうちのいくつかがサポートされていません。 特定のColorModel
オブジェクトの転送型は、オブジェクトが生成されるときに明示的にまたはデフォルトで指定されます。 ColorModel
の各サブクラスでは、利用可能な転送型がいずれか、およびピクセルを表すプリミティブ配列の要素数がどのように決められるかを指定する必要があります。
BufferedImages
の場合、Raster
およびRaster
オブジェクトのSampleModel
の転送型(それらのクラスのgetTransferType
メソッドを介して取得できます)は、ColorModel
の転送型と一致する必要があります。 Raster
およびSampleModel
のピクセルを表す配列の要素数(それらのクラスのgetNumDataElements
メソッドを介して取得できます)は、ColorModel
と一致する必要があります。
ピクセル値から色成分およびアルファ成分への変換に使用するアルゴリズムは、サブクラスによって異なります。 たとえば、BufferedImage
オブジェクトのRaster
のSampleModel
によって得られるサンプルと色成分およびアルファ成分の間は1対1で対応していなくてもかまいません。 1対1の対応がある場合でも、サンプルのビット数は、対応する色成分およびアルファ成分のビット数と同じでなくてもかまいません。 各サブクラスでは、ピクセル値から色成分およびアルファ成分への変換がどのように行われるかを指定する必要があります。
ColorModel
クラスのメソッドは、色成分およびアルファ成分の2つの異なる表現である標準化形式と非標準化形式を使用します。 標準化形式では、各成分は最小値と最大値の間のfloat
値です。 アルファ成分では、最小値は0.0、最大値は1.0です。 色成分では、各成分の最小値と最大値はColorSpace
オブジェクトから取得でき、 値は通常0.0と1.0 (デフォルトのsRGBカラー領域にある標準化成分の値の範囲は0.0 - 1.0、など)ですが、これと異なる上限と下限の成分値を持つカラー領域もあります。 これらの限界値はColorSpace
クラスのgetMinValue
メソッドおよびgetMaxValue
メソッドを使用して取得できます。 標準化色成分値はあらかじめ乗算されません。 すべてのColorModels
は標準化形式をサポートする必要があります。
非標準化形式では、各成分は0と2n - 1の間の符号なし整数値です。nは、特定の成分の有効ビットの数です。 特定のColorModel
のピクセル値がアルファ・サンプルであらかじめ乗算されているカラー・サンプルを表す場合、非標準化色成分も同じようにあらかじめ乗算されます。 非標準化形式は、ColorSpace
がすべての成分に対して最小成分値が0.0、最大成分値が1.0であるColorModel
のインスタンスのみとともに使用されます。 非標準化形式の色成分とアルファ成分は、標準化成分値がすべて0.0と1.0の間にあるColorModels
を表すことができます。 このような場合、整数値0は0.0にマップされ、値2n -1は1.0にマップされます。 これ以外の、たとえば標準化成分値が正または負の場合は、非標準化形式は適切ではありません。 このようなColorModel
オブジェクトは、非標準化引数を含むメソッドが呼び出されるとIllegalArgumentException
をスローします。 ColorModel
のサブクラスでは、この例外が発生する条件を指定する必要があります。
- 関連項目:
-
フィールドのサマリー
フィールド修飾子と型フィールド説明protected int
ピクセルの総ビット数です。protected int
ピクセル値の表現に使用される配列のデータ型です。インタフェース 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
を構築します。 -
メソッドのサマリー
修飾子と型メソッド説明coerceData
(WritableRaster raster, boolean isAlphaPremultiplied) ラスター・データがisAlphaPremultiplied
変数で指定された状態と一致するようにします。このとき、データはこのColorModel
によって現在正しく記述されていると見なされます。createCompatibleSampleModel
(int w, int h) このColorModel
と互換性のあるデータ・レイアウトを持つ、指定された幅と高さのSampleModel
を作成します。createCompatibleWritableRaster
(int w, int h) このColorModel
と互換性のあるデータ・レイアウト(SampleModel
)を持つ、指定された幅と高さのWritableRaster
を作成します。boolean
このメソッドは、複数の独立したサブクラス分岐の間で適切な等価性テストの問題を強制することができないため、==
テストと同じObject
のデフォルト実装に単純に委譲します。abstract int
getAlpha
(int pixel) 指定されたピクセルのアルファ成分を、0 - 255の範囲でスケーリングして返します。int
指定されたピクセルのアルファ成分を、0 - 255の範囲でスケーリングして返します。getAlphaRaster
(WritableRaster raster) このColorModel
のピクセル値が別々の空間バンドとして色情報およびアルファ情報を表す場合に、入力Raster
から抽出された、イメージのアルファ・チャネルを表すRaster
を返します。abstract int
getBlue
(int pixel) 指定されたピクセルの青の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。int
指定されたピクセルの青の色成分を、デフォルトのRGBColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。final ColorSpace
このColorModel
に関連付けられたColorSpace
を返します。int[]
getComponents
(int pixel, int[] components, int offset) このColorModel
でピクセルを指定して、標準化されていない色成分とアルファ成分の配列を返します。int[]
getComponents
(Object pixel, int[] components, int offset) このColorModel
でピクセルを指定して、標準化されていない色成分とアルファ成分の配列を返します。int[]
色成分およびアルファ成分ごとのビット数の配列を返します。int
getComponentSize
(int componentIdx) 指定された色成分およびアルファ成分のビット数を返します。int
getDataElement
(float[] normComponents, int normOffset) 標準化された色成分およびアルファ成分の配列を指定して、このColorModel
にint
として表されるピクセル値を返します。int
getDataElement
(int[] components, int offset) 標準化されていない色成分あるいはアルファ成分の配列を指定して、このColorModel
のint
として表現されるピクセル値を返します。getDataElements
(float[] normComponents, int normOffset, Object obj) 標準化された色成分およびアルファ成分の配列を指定して、このColorModel
のピクセルのデータ要素配列表現を返します。getDataElements
(int[] components, int offset, Object obj) 標準化されていない色成分およびアルファ成分の配列を指定して、このColorModel
のピクセルのデータ要素配列表現を返します。getDataElements
(int rgb, Object pixel) デフォルトRGBカラー・モデルの整数型ピクセル表現を指定して、このColorModel
のピクセルのデータ要素配列表現を返します。abstract int
getGreen
(int pixel) 指定されたピクセルの緑の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。int
指定されたピクセルの緑の色成分を、デフォルトのRGBColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。float[]
getNormalizedComponents
(int[] components, int offset, float[] normComponents, int normOffset) 非標準化成分配列を指定して、標準化形式ですべての色成分およびアルファ成分の配列を返します。float[]
getNormalizedComponents
(Object pixel, float[] normComponents, int normOffset) このColorModel
の指定されたピクセルについて、標準化形式で色成分とアルファ成分の配列を返します。int
このColorModel
の色成分数を返します。int
このColorModel
の成分(アルファを含む)の数を返します。int
このColorModel
によって記述されるピクセルごとのビット数を返します。abstract int
getRed
(int pixel) 指定されたピクセルの赤の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。int
指定されたピクセルの赤の色成分を、デフォルトのRGBColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。int
getRGB
(int pixel) ピクセルの色成分とアルファ成分を、デフォルトのRGBカラー・モデル形式で返します。int
指定されたピクセルの色成分およびアルファ成分をデフォルトRGBカラー・モデル形式で返します。static ColorModel
プログラマのために、AWTイメージ・インタフェースの多くのメソッドで使用される整数型RGB値のデフォルト形式を記述するDirectColorModel
を返します。final int
このColorModel
の転送型を返します。int
透明度を返します。int[]
getUnnormalizedComponents
(float[] normComponents, int normOffset, int[] components, int offset) 標準化成分配列を指定して、非標準化形式ですべての色成分およびアルファ成分の配列を返します。final boolean
hasAlpha()
アルファがこのColorModel
でサポートされているかどうかを返します。int
hashCode()
このメソッドは、クラスのシステムIDを返すObject
のデフォルト実装に委譲します。final boolean
このColorModel
で変換されるピクセル値でアルファがあらかじめ乗算されているかどうかを返します。boolean
isCompatibleRaster
(Raster raster) raster
がこのColorModel
と互換性がある場合にはtrue
を返し、そうでない場合にはfalse
を返します。boolean
SampleModel
がこのColorModel
と互換性があるかどうかを判定します。toString()
このColorModel
オブジェクトの内容を表すString
を返します。
-
フィールド詳細
-
pixel_bits
protected int pixel_bitsピクセルの総ビット数です。 -
transferType
protected int transferTypeピクセル値の表現に使用される配列のデータ型です。
-
-
コンストラクタの詳細
-
ColorModel
public ColorModel(int bits) 指定されたビット数のピクセルを色成分およびアルファ成分に変換するColorModel
を構築します。 カラー・スペースはデフォルトのRGBColorSpace
(sRGB)です。 ピクセル値には、アルファ情報が含まれていると見なされます。 色およびアルファの情報が別々の空間バンドとしてピクセル値で表される場合、カラー・バンドにはアルファ値があらかじめ乗算されていません。 透明度型は、java.awt.Transparency.TRANSLUCENTです。 転送型は、単一ピクセルを保持することができるDataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、またはDataBuffer.TYPE_INTの最小値です(ビットが32より大きい場合はDataBuffer.TYPE_UNDEFINED)。 このコンストラクタは色成分およびアルファ成分ごとのビット数に関する情報を持たないので、このコンストラクタを呼び出すサブクラスは、この情報を必要とするメソッドをオーバーライドします。- パラメータ:
bits
- ピクセルのビット数- 例外:
IllegalArgumentException
-bits
のビット数が1より小さい場合
-
ColorModel
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
- 指定されたColorSpace
hasAlpha
- アルファ情報が存在する場合はtrue
、そうでない場合はfalse
isAlphaPremultiplied
- カラー・サンプルがアルファ・サンプルによってあらかじめ乗算されていると見なされる場合はtrue
、そうでない場合はfalse
transparency
- このカラー・モデルで表すことができるアルファ値transferType
- ピクセル値の表現に使用される配列の型- 例外:
IllegalArgumentException
- ビット配列の長さがこのColorModel
の色成分またはアルファ成分の数より小さい場合、または透明度が有効な値でない場合。IllegalArgumentException
-bits
のビット数の合計が1より小さい場合、またはbits
の要素が0より小さい場合。- 関連項目:
-
-
メソッドの詳細
-
getRGBdefault
public static ColorModel getRGBdefault()プログラマのために、AWTイメージ・インタフェースの多くのメソッドで使用される整数型RGB値のデフォルト形式を記述するDirectColorModel
を返します。 カラー・スペースは、デフォルトのColorSpace
(sRGB)です。 RGB値の形式は、0xAARRGGBBのように、最上位バイトから最下位バイトまで、アルファ、赤、緑、および青の各成分をこの順に並べた、それぞれ8ビットの整数です。 色成分は、アルファ成分によってあらかじめ乗算されません。 この形式は、特定のデバイスまたはすべてのイメージのネイティブまたはもっとも効率的なColorModel
を必ずしも表しません。 共通のカラー・モデル形式として使用されます。- 戻り値:
- デフォルトのRGB値を表す
DirectColorModel
オブジェクト。
-
hasAlpha
public final boolean hasAlpha()アルファがこのColorModel
でサポートされているかどうかを返します。- 戻り値:
- この
ColorModel
でアルファがサポートされている場合はtrue
、そうでない場合はfalse
。
-
isAlphaPremultiplied
public final boolean isAlphaPremultiplied()このColorModel
で変換されるピクセル値でアルファがあらかじめ乗算されているかどうかを返します。 booleanがtrue
の場合、このColorModel
は色情報およびアルファ情報が別々の空間バンドとして表されるピクセル値を解釈するために使用され、カラー・サンプルはアルファ・サンプルによって乗算されたと見なされます。- 戻り値:
- この
ColorModel
で変換されるピクセル値でアルファ値があらかじめ乗算されている場合はtrue
、そうでない場合はfalse
。
-
getTransferType
public final int getTransferType()このColorModel
の転送型を返します。 転送型は、ピクセル値を配列として表すのに使われるプリミティブ配列の型です。- 戻り値:
- 転送型
- 導入されたバージョン:
- 1.3
-
getPixelSize
public int getPixelSize()このColorModel
によって記述されるピクセルごとのビット数を返します。- 戻り値:
- ピクセルごとのビット数
-
getComponentSize
public int getComponentSize(int componentIdx) 指定された色成分およびアルファ成分のビット数を返します。 色成分は、ColorSpace
で指定された順序でインデックスが付けられます。 通常、この順序はカラー・スペースの型の名前を反映します。 たとえば、TYPE_RGBの場合、インデックス0は赤、インデックス1は緑、インデックス2は青に対応します。 このColorModel
がアルファをサポートする場合、アルファ成分は最後に指定された色成分のあとのインデックスに対応します。- パラメータ:
componentIdx
- 色成分およびアルファ成分のインデックス- 戻り値:
- 指定されたインデックスにある色成分およびアルファ成分のビット数
- 例外:
ArrayIndexOutOfBoundsException
-componentIdx
がコンポーネント数以上またはゼロ未満の場合NullPointerException
- ビット配列の数がnull
の場合
-
getComponentSize
public int[] getComponentSize()色成分およびアルファ成分ごとのビット数の配列を返します。 この配列は、ColorSpace
で指定された順序で色成分を格納し、アルファ成分がある場合は、次にアルファ成分が続きます。- 戻り値:
- 色成分およびアルファ成分ごとのビット数の配列
-
getTransparency
public int getTransparency()透明度を返します。 OPAQUE、BITMASK、TRANSLUCENTのいずれかを返します。- 定義:
getTransparency
、インタフェースTransparency
- 戻り値:
- この
ColorModel
の透明度。 - 関連項目:
-
getNumComponents
public int getNumComponents()このColorModel
の成分(アルファを含む)の数を返します。 これは、色成分の数(アルファ成分がある場合は1を加算)と等しくなります。- 戻り値:
- この
ColorModel
の成分数
-
getNumColorComponents
public int getNumColorComponents()このColorModel
の色成分数を返します。 これは、ColorSpace.getNumComponents()
によって返された成分数です。- 戻り値:
- この
ColorModel
の色成分数。 - 関連項目:
-
getRed
public abstract int getRed(int pixel) 指定されたピクセルの赤の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。 必要な場合、色変換が行われます。 ピクセル値はintとして指定されます。 このColorModel
のピクセル値が単一のintとして表現できない場合はIllegalArgumentException
がスローされます。 戻り値はあらかじめ乗算されていない値になります。 たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。 アルファ値が0の場合、赤の値は0になります。- パラメータ:
pixel
- 指定されたピクセル- 戻り値:
- 指定されたピクセルの赤色成分の値
-
getGreen
public abstract int getGreen(int pixel) 指定されたピクセルの緑の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。 必要な場合、色変換が行われます。 ピクセル値はintとして指定されます。 このColorModel
のピクセル値が単一のintとして表現できない場合はIllegalArgumentException
がスローされます。 戻り値は、あらかじめ乗算されていない値になります。 たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。 アルファ値が0の場合、緑の値は0になります。- パラメータ:
pixel
- 指定されたピクセル- 戻り値:
- 指定されたピクセルの緑色成分の値
-
getBlue
public abstract int getBlue(int pixel) 指定されたピクセルの青の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。 必要な場合、色変換が行われます。 ピクセル値はintとして指定されます。 このColorModel
のピクセル値が単一のintとして表現できない場合はIllegalArgumentException
がスローされます。 戻り値は、あらかじめ乗算されていない値になります。たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。 アルファ値が0の場合、青の値は0になります。- パラメータ:
pixel
- 指定されたピクセル- 戻り値:
- 指定されたピクセルの青色成分の値
-
getAlpha
public abstract int getAlpha(int pixel) 指定されたピクセルのアルファ成分を、0 - 255の範囲でスケーリングして返します。 ピクセル値はintとして指定されます。 このColorModel
のピクセル値が単一のintとして表現できない場合はIllegalArgumentException
がスローされます。- パラメータ:
pixel
- 指定されたピクセル- 戻り値:
- 指定されたピクセルのアルファ成分の値
-
getRGB
public int getRGB(int pixel) ピクセルの色成分とアルファ成分を、デフォルトのRGBカラー・モデル形式で返します。 必要な場合、色変換が行われます。 ピクセル値はintとして指定されます。 このColorModel
のピクセル値が単一のintとして表現できない場合はIllegalArgumentException
がスローされます。 戻り値は、あらかじめ乗算されていない形式になります。 たとえば、アルファがあらかじめ乗算されている場合、このメソッドはそれを色成分で除算します。 アルファ値が0の場合、色の値は0になります。- パラメータ:
pixel
- 指定されたピクセル- 戻り値:
- 指定されたピクセルの色成分およびアルファ成分のRGB値
- 関連項目:
-
getRed
public int getRed(Object inData) 指定されたピクセルの赤の色成分を、デフォルトのRGBColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。 必要な場合、色変換が行われます。 pixel値は、オブジェクト参照として渡されたtransferType型のデータ要素からなる配列によって指定されます。 戻り値は、あらかじめ乗算されていない値になります。 たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。 アルファ値が0の場合、赤の値は0になります。inData
がtransferType型のプリミティブ配列でない場合、ClassCastException
がスローされます。inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。 このtransferType
がサポートされていない場合は、UnsupportedOperationException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスである必要があります。 サブクラスはこのメソッドの実装を継承します。サブクラスがその実装をオーバーライドしない場合、サブクラスがDataBuffer.TYPE_BYTE
、DataBuffer.TYPE_USHORT
、またはDataBuffer.TYPE_INT
以外のtransferType
を使用すると、このメソッドは例外をスローします。- パラメータ:
inData
- ピクセル値の配列- 戻り値:
- 指定されたピクセルの赤色成分の値
- 例外:
ClassCastException
-inData
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
-inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException
- このColorModel
でこのtransferType
がサポートされていない場合
-
getGreen
public int getGreen(Object inData) 指定されたピクセルの緑の色成分を、デフォルトのRGBColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。 必要な場合、色変換が行われます。 pixel値は、オブジェクト参照として渡されたtransferType型のデータ要素からなる配列によって指定されます。 戻り値は、あらかじめ乗算されていない値です。 たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。 アルファ値が0の場合、緑の値は0になります。inData
がtransferType型のプリミティブ配列でない場合、ClassCastException
がスローされます。inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。 このtransferType
がサポートされていない場合は、UnsupportedOperationException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスである必要があります。 サブクラスはこのメソッドの実装を継承します。サブクラスがその実装をオーバーライドしない場合、サブクラスがDataBuffer.TYPE_BYTE
、DataBuffer.TYPE_USHORT
、またはDataBuffer.TYPE_INT
以外のtransferType
を使用すると、このメソッドは例外をスローします。- パラメータ:
inData
- ピクセル値の配列- 戻り値:
- 指定されたピクセルの緑色成分の値
- 例外:
ClassCastException
-inData
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
-inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException
- このColorModel
でこのtransferType
がサポートされていない場合
-
getBlue
public int getBlue(Object inData) 指定されたピクセルの青の色成分を、デフォルトのRGBColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。 必要な場合、色変換が行われます。 pixel値は、オブジェクト参照として渡されたtransferType型のデータ要素からなる配列によって指定されます。 戻り値は、あらかじめ乗算されていない値になります。 たとえば、アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。 アルファ値が0の場合、青の値は0になります。inData
がtransferType型のプリミティブ配列でない場合、ClassCastException
がスローされます。inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。 このtransferType
がサポートされていない場合は、UnsupportedOperationException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスである必要があります。 サブクラスはこのメソッドの実装を継承します。サブクラスがその実装をオーバーライドしない場合、サブクラスがDataBuffer.TYPE_BYTE
、DataBuffer.TYPE_USHORT
、またはDataBuffer.TYPE_INT
以外のtransferType
を使用すると、このメソッドは例外をスローします。- パラメータ:
inData
- ピクセル値の配列- 戻り値:
- 指定されたピクセルの青色成分の値
- 例外:
ClassCastException
-inData
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
-inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException
- このColorModel
でこのtransferType
がサポートされていない場合
-
getAlpha
public int getAlpha(Object inData) 指定されたピクセルのアルファ成分を、0 - 255の範囲でスケーリングして返します。 pixel値は、オブジェクト参照として渡されたtransferType型のデータ要素からなる配列によって指定されます。 inDataがtransferType型のプリミティブ配列でない場合は、ClassCastException
がスローされます。inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。 このtransferType
がサポートされていない場合は、UnsupportedOperationException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスである必要があります。 サブクラスはこのメソッドの実装を継承します。サブクラスがその実装をオーバーライドしない場合、サブクラスがDataBuffer.TYPE_BYTE
、DataBuffer.TYPE_USHORT
、またはDataBuffer.TYPE_INT
以外のtransferType
を使用すると、このメソッドは例外をスローします。- パラメータ:
inData
- 指定されたピクセル- 戻り値:
- 0 - 255の範囲でスケーリングされた、指定されたピクセルのアルファ成分
- 例外:
ClassCastException
-inData
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
-inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException
- このColorModel
でこのtranferType
がサポートされていない場合
-
getRGB
public int getRGB(Object inData) 指定されたピクセルの色成分およびアルファ成分をデフォルトRGBカラー・モデル形式で返します。 必要な場合、色変換が行われます。 pixel値は、オブジェクト参照として渡されたtransferType型のデータ要素からなる配列によって指定されます。 inDataがtransferType型のプリミティブ配列でない場合は、ClassCastException
がスローされます。inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。 戻り値は、あらかじめ乗算されていない値です。つまり、アルファがあらかじめ乗算されている場合、このメソッドは色成分でそれを除算します。アルファ値が0の場合、色の値は0になります。- パラメータ:
inData
- 指定されたピクセル- 戻り値:
- 指定されたピクセルの色成分およびアルファ成分
- 関連項目:
-
getDataElements
デフォルトRGBカラー・モデルの整数型ピクセル表現を指定して、このColorModel
のピクセルのデータ要素配列表現を返します。 次に、この配列はWritableRaster
オブジェクトのWritableRaster.setDataElements(int, int, java.lang.Object)
メソッドに渡すことができます。 pixel変数がnull
の場合は、新しい配列が割り当てられます。pixel
がnull
でない場合、transferType
型のプリミティブ配列でなければならず、そうでない場合はClassCastException
がスローされます。pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。 ピクセル配列が返されます。 このtransferType
がサポートされていない場合は、UnsupportedOperationException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はUnsupportedOperationException
をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。- パラメータ:
rgb
- デフォルトRGBカラー・モデルの整数型ピクセル表現pixel
- 指定されたピクセル- 戻り値:
- この
ColorModel
の指定されたピクセルの配列表現。 - 例外:
ClassCastException
-pixel
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
-pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException
- このColorModel
でこのメソッドがサポートされていない場合- 関連項目:
-
getComponents
public int[] getComponents(int pixel, int[] components, int offset) このColorModel
でピクセルを指定して、標準化されていない色成分とアルファ成分の配列を返します。 ピクセル値はint
として指定されます。 このColorModel
のピクセル値が単一のint
として表現できない場合、またはこのColorModel
の色成分値が非標準化形式で表現できない場合は、IllegalArgumentException
がスローされます。 たとえば、このメソッドは、DirectColorModel
の特定のピクセル値の成分を取り出すために使用できます。 components配列がnull
の場合は、新しい配列が割り当てられます。 components配列が返されます。 色成分およびアルファ成分は、offset
を起点にcomponents配列に格納されます。配列がこのメソッドで割り当てられている場合も同様です。 components配列がnull
でなく、offsetを起点にした場合に、色成分とアルファ成分のすべてを保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はUnsupportedOperationException
をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。- パラメータ:
pixel
- 指定されたピクセルcomponents
- 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset
- 色成分およびアルファ成分の格納を開始する、components
配列へのオフセット- 戻り値:
- 指定されたオフセット以降に、指定されたピクセルの色成分およびアルファ成分が格納されている配列
- 例外:
UnsupportedOperationException
- このColorModel
でこのメソッドがサポートされていない場合
-
getComponents
public int[] getComponents(Object pixel, int[] components, int offset) このColorModel
でピクセルを指定して、標準化されていない色成分とアルファ成分の配列を返します。 pixel値は、オブジェクト参照として渡されたtransferType型のデータ要素からなる配列によって指定されます。pixel
がtransferType型のプリミティブ配列でない場合は、ClassCastException
がスローされます。 このColorModel
の色成分値が非標準化形式で表現できない場合は、IllegalArgumentException
がスローされます。pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。 このメソッドは、任意のColorModel
の特定のピクセル値の成分を取り出すために使用できます。 components配列がnull
の場合は、新しい配列が割り当てられます。 components配列が返されます。 色成分とアルファ成分は、offset
から始まるcomponents
配列に格納されます。これは、配列がこのメソッドで割り当てられても変わりません。 components配列がnull
でなく、offset
を起点にした場合に、色成分とアルファ成分のすべてを保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はUnsupportedOperationException
をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。- パラメータ:
pixel
- 指定されたピクセルcomponents
- 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset
- 指定されたピクセルの色成分およびアルファ成分の格納を開始する、components
配列へのインデックス- 戻り値:
- 指定されたオフセット以降に、指定されたピクセルの色成分およびアルファ成分が格納されている配列
- 例外:
UnsupportedOperationException
- このColorModel
でこのメソッドがサポートされていない場合
-
getUnnormalizedComponents
public int[] getUnnormalizedComponents(float[] normComponents, int normOffset, int[] components, int offset) 標準化成分配列を指定して、非標準化形式ですべての色成分およびアルファ成分の配列を返します。 非標準化成分は、0と2n - 1の間の符号なし整数値です。nは、特定の成分のビット数です。 標準化成分は、このColorModel
のColorSpace
オブジェクトによって指定された成分ごとの最小と最大の間のfloat値です。 このColorModel
の色成分値が非標準化形式で表現できない場合は、IllegalArgumentException
がスローされます。components
の配列がnull
の場合は、新しい配列が割り当てられます。components
配列が返されます。 色成分とアルファ成分は、offset
から始まるcomponents
配列に格納されます。これは、配列がこのメソッドで割り当てられても変わりません。components
配列がnull
でない場合に、(offset
を起点に)すべての色成分およびアルファ成分を保持するのに十分な大きさでないときは、ArrayIndexOutOfBoundsException
がスローされます。normComponents
配列がnormOffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、IllegalArgumentException
がスローされます。- パラメータ:
normComponents
- 標準化成分を格納している配列normOffset
- 標準化成分の取得を開始する、normComponents
配列へのオフセットcomponents
-normComponents
から成分を受け取る配列offset
-normComponents
から標準化成分の格納を開始する、components
のインデックス- 戻り値:
- 標準化されていない色成分およびアルファ成分が格納されている配列
- 例外:
IllegalArgumentException
- このColorModel
の成分値が非標準化形式で表現できない場合。IllegalArgumentException
-normComponents
の長さマイナスnormOffset
が、numComponents
より小さい場合UnsupportedOperationException
- このColorModel
のコンストラクタがsuper(bits)
コンストラクタを呼び出したが、このメソッドをオーバーライドしなかった場合。 コンストラクタColorModel(int)
を参照してください。
-
getNormalizedComponents
public float[] getNormalizedComponents(int[] components, int offset, float[] normComponents, int normOffset) 非標準化成分配列を指定して、標準化形式ですべての色成分およびアルファ成分の配列を返します。 非標準化成分は、0と2n - 1の間の符号なし整数値です。nは、特定の成分のビット数です。 標準化成分は、このColorModel
のColorSpace
オブジェクトによって指定された成分ごとの最小と最大の間のfloat値です。 このColorModel
の色成分値が非標準化形式で表現できない場合は、IllegalArgumentException
がスローされます。normComponents
の配列がnull
の場合は、新しい配列が割り当てられます。normComponents
配列が返されます。 色成分とアルファ成分は、normOffset
から始まるnormComponents
配列に格納されます。これは、配列がこのメソッドで割り当てられても変わりません。normComponents
配列がnull
でない場合に、(normOffset
を起点に)すべての色成分およびアルファ成分を保持するのに十分な大きさでないときは、ArrayIndexOutOfBoundsException
がスローされます。components
配列がoffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、IllegalArgumentException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスでの、このメソッドのデフォルトの実装は、このクラスの成分値が非標準化形式で表現されると見なします。 したがって、非標準化形式をサポートしないインスタンスを持つサブクラスは、このメソッドをオーバーライドする必要があります。- パラメータ:
components
- 標準化されていない成分を格納している配列offset
- 標準化されていない成分の取得を開始する、components
配列へのオフセットnormComponents
- 標準化成分を受け取る配列normOffset
- 標準化成分の格納を開始する、normComponents
のインデックス- 戻り値:
- 標準化された色成分およびアルファ成分が格納されている配列
- 例外:
IllegalArgumentException
- このColorModel
の成分値が非標準化形式で表現できない場合。UnsupportedOperationException
- このColorModel
のコンストラクタがsuper(bits)
コンストラクタを呼び出したが、このメソッドをオーバーライドしなかった場合。 コンストラクタColorModel(int)
を参照してください。UnsupportedOperationException
- このメソッドが成分ごとのビット数を判定できなかった場合
-
getDataElement
public int getDataElement(int[] components, int offset) 標準化されていない色成分あるいはアルファ成分の配列を指定して、このColorModel
のint
として表現されるピクセル値を返します。 このColorModel
の成分値が単一のint
として表現できない場合、またはこのColorModel
の色成分値が非標準化形式で表現できない場合は、このメソッドはIllegalArgumentException
をスローします。components
配列がoffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はUnsupportedOperationException
をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。- パラメータ:
components
- 標準化されていない色成分およびアルファ成分の配列offset
- 色成分およびアルファ成分の取得を開始する、components
のインデックス- 戻り値:
- 指定された成分に対応する、この
ColorModel
内のint
ピクセル値。 - 例外:
IllegalArgumentException
- このColorModel
のピクセル値が単一のint
として表現できない場合IllegalArgumentException
- このColorModel
の成分値が非標準化形式で表現できない場合ArrayIndexOutOfBoundsException
-components
配列がoffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合UnsupportedOperationException
- このColorModel
でこのメソッドがサポートされていない場合
-
getDataElements
標準化されていない色成分およびアルファ成分の配列を指定して、このColorModel
のピクセルのデータ要素配列表現を返します。 次に、この配列はWritableRaster
オブジェクトのsetDataElements
メソッドに渡すことができます。 このColorModel
の色成分値が非標準化形式で表現できない場合、このメソッドはIllegalArgumentException
をスローします。components
配列がoffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。obj
変数がnull
の場合は、新しい配列が割り当てられます。obj
がnull
でない場合、transferType型のプリミティブ配列でなければならず、そうでない場合はClassCastException
がスローされます。obj
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はUnsupportedOperationException
をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。- パラメータ:
components
- 標準化されていない色成分およびアルファ成分の配列offset
- 色成分およびアルファ成分の取得を開始する、components
のインデックスobj
- 色成分およびアルファ成分の配列を表すObject
- 戻り値:
- 色成分およびアルファ成分の配列を表す
Object
。 - 例外:
ClassCastException
-obj
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
-obj
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合、あるいはcomponents
配列が、offset
を開始点にして、すべての色成分およびアルファ成分を保持するのに十分な大きさでない場合IllegalArgumentException
- このColorModel
の成分値が非標準化形式で表現できない場合UnsupportedOperationException
- このColorModel
でこのメソッドがサポートされていない場合- 関連項目:
-
getDataElement
public int getDataElement(float[] normComponents, int normOffset) 標準化された色成分およびアルファ成分の配列を指定して、このColorModel
にint
として表されるピクセル値を返します。 このColorModel
のピクセル値が単一のint
として表現できない場合、このメソッドはIllegalArgumentException
をスローします。normComponents
配列がnormOffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスでの、このメソッドのデフォルトの実装は、標準化形式を非標準化形式に変換してからgetDataElement(int[], int)
を呼び出します。 非標準化形式をサポートしないインスタンスを持つサブクラスは、このメソッドをオーバーライドする必要があります。- パラメータ:
normComponents
- 標準化された色成分およびアルファ成分の配列normOffset
- 色成分およびアルファ成分の取得を開始する、normComponents
のインデックス- 戻り値:
- 指定された成分に対応する、この
ColorModel
内のint
ピクセル値。 - 例外:
IllegalArgumentException
- このColorModel
のピクセル値が単一のint
として表現できない場合ArrayIndexOutOfBoundsException
-normComponents
配列がnormOffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合- 導入されたバージョン:
- 1.4
-
getDataElements
標準化された色成分およびアルファ成分の配列を指定して、このColorModel
のピクセルのデータ要素配列表現を返します。 次に、この配列はWritableRaster
オブジェクトのsetDataElements
メソッドに渡すことができます。normComponents
配列がnormOffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。obj
変数がnull
の場合は、新しい配列が割り当てられます。obj
がnull
でない場合、transferType型のプリミティブ配列でなければならず、そうでない場合はClassCastException
がスローされます。obj
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスでの、このメソッドのデフォルトの実装は、標準化形式を非標準化形式に変換してからgetDataElement(int[], int, Object)
を呼び出します。 非標準化形式をサポートしないインスタンスを持つサブクラスは、このメソッドをオーバーライドする必要があります。- パラメータ:
normComponents
- 標準化された色成分およびアルファ成分の配列normOffset
- 色成分およびアルファ成分の取得を開始する、normComponents
のインデックスobj
- 返されたピクセルを保持するプリミティブ・データ配列- 戻り値:
- ピクセルのプリミティブ・データ配列表現の
Object
- 例外:
ClassCastException
-obj
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
-obj
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合、あるいはnormComponents
配列が、normOffset
を開始点にして、すべての色成分およびアルファ成分を保持するのに十分な大きさでない場合- 導入されたバージョン:
- 1.4
- 関連項目:
-
getNormalizedComponents
public float[] getNormalizedComponents(Object pixel, float[] normComponents, int normOffset) このColorModel
の指定されたピクセルについて、標準化形式で色成分とアルファ成分の配列を返します。 pixel値は、オブジェクト参照として渡されたtransferType型のデータ要素からなる配列によって指定されます。 pixelがtransferType型のプリミティブ配列でない場合は、ClassCastException
がスローされます。pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。 標準化成分は、このColorModel
のColorSpace
オブジェクトによって指定された成分ごとの最小と最大の間のfloat値です。normComponents
の配列がnull
の場合は、新しい配列が割り当てられます。normComponents
配列が返されます。 色成分とアルファ成分は、normOffset
から始まるnormComponents
配列に格納されます。これは、配列がこのメソッドで割り当てられても変わりません。normComponents
配列がnull
でない場合に、(normOffset
を起点に)すべての色成分およびアルファ成分を保持するのに十分な大きさでないときは、ArrayIndexOutOfBoundsException
がスローされます。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスでの、このメソッドのデフォルトの実装は、getComponents(Object, int[], int)
を使用して非標準化形式で色成分とアルファ成分を取り出してからgetNormalizedComponents(int[], int, float[], int)
を呼び出します。 非標準化形式をサポートしないインスタンスを持つサブクラスは、このメソッドをオーバーライドする必要があります。- パラメータ:
pixel
- 指定されたピクセルnormComponents
- 標準化成分を受け取る配列normOffset
- 標準化成分の格納を開始する、normComponents
配列へのオフセット- 戻り値:
- 標準化された色成分およびアルファ成分が格納されている配列
- 例外:
ClassCastException
-pixel
がtransferType型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
-normComponents
がnormOffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合ArrayIndexOutOfBoundsException
-pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合。UnsupportedOperationException
- このColorModel
のコンストラクタがsuper(bits)
コンストラクタを呼び出したが、このメソッドをオーバーライドしなかった場合。 コンストラクタColorModel(int)
を参照してください。UnsupportedOperationException
- このメソッドが成分ごとのビット数を判定できなかった場合- 導入されたバージョン:
- 1.4
-
equals
public boolean equals(Object obj) このメソッドは、複数の独立したサブクラス分岐の間で適切な等価性テストの問題を強制することができないため、==
テストと同じObject
のデフォルト実装に単純に委譲します。 サブクラスは、このメソッドをオーバーライドして、ColorModel
の以下の共通基本プロパティの等価テストに加えて、独自のプロパティの等価テストを提供することをお勧めします:- アルファ・コンポーネントのサポート。
- アルファはあらかじめ乗算されていますか?。
- ピクセルあたりのビット数。
- 不透明、ビット・マスクまたは半透明のような透明の型。
- ピクセル内のコンポーネントの数。
ColorSpace
型。- ピクセル値を表すために使用される配列の型。
- 色およびアルファ・コンポーネントごとの有効ビット数。
-
hashCode
public int hashCode()このメソッドは、クラスのシステムIDを返すObject
のデフォルト実装に委譲します。 サブクラスは、このメソッドをオーバーライドして、ColorModel
という共通の基本プロパティの値をハッシュするだけでなく、独自のプロパティのハッシュを提供することをお勧めします:- アルファ・コンポーネントのサポート。
- アルファはあらかじめ乗算されていますか?。
- ピクセルあたりのビット数。
- 不透明、ビット・マスクまたは半透明のような透明の型。
- ピクセル内のコンポーネントの数。
ColorSpace
型。- ピクセル値を表すために使用される配列の型。
- 色およびアルファ・コンポーネントごとの有効ビット数。
-
getColorSpace
public final ColorSpace getColorSpace()このColorModel
に関連付けられたColorSpace
を返します。- 戻り値:
- この
ColorModel
のColorSpace
。
-
coerceData
public ColorModel coerceData(WritableRaster raster, boolean isAlphaPremultiplied) ラスター・データがisAlphaPremultiplied
変数で指定された状態と一致するようにします。このとき、データはこのColorModel
によって現在正しく記述されていると見なされます。 このメソッドは、カラー・ラスター・データをアルファで乗算または除算します。データが正しい状態にある場合には、処理は行いません。 データを強制的に型変換する必要がある場合、このメソッドはisAlphaPremultiplied
フラグを正しく設定した、このColorModel
のインスタンスも返します。 このColorModel
によってサポートされていない場合、このメソッドはUnsupportedOperationException
をスローします。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はUnsupportedOperationException
をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。- パラメータ:
raster
-WritableRaster
データisAlphaPremultiplied
- アルファがあらかじめ乗算されている場合はtrue
、そうでない場合はfalse
- 戻り値:
- 強制的に型変換されたデータを表す
ColorModel
オブジェクト。
-
isCompatibleRaster
public boolean isCompatibleRaster(Raster raster) raster
がこのColorModel
と互換性がある場合にはtrue
を返し、そうでない場合にはfalse
を返します。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はUnsupportedOperationException
をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。- パラメータ:
raster
- 互換性を判定するRaster
オブジェクト- 戻り値:
raster
がこのColorModel
と互換性がある場合はtrue
。- 例外:
UnsupportedOperationException
- このColorModel
でこのメソッドが実装されていない場合
-
createCompatibleWritableRaster
public WritableRaster createCompatibleWritableRaster(int w, int h) このColorModel
と互換性のあるデータ・レイアウト(SampleModel
)を持つ、指定された幅と高さのWritableRaster
を作成します。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はUnsupportedOperationException
をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。- パラメータ:
w
- 新しいWritableRaster
に適用される幅h
- 新しいWritableRaster
に適用される高さ- 戻り値:
- 指定された幅と高さを持つ
WritableRaster
オブジェクト。 - 例外:
UnsupportedOperationException
- このColorModel
でこのメソッドがサポートされていない場合- 関連項目:
-
createCompatibleSampleModel
public SampleModel createCompatibleSampleModel(int w, int h) このColorModel
と互換性のあるデータ・レイアウトを持つ、指定された幅と高さのSampleModel
を作成します。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はUnsupportedOperationException
をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。- パラメータ:
w
- 新しいSampleModel
に適用される幅h
- 新しいSampleModel
に適用される高さ- 戻り値:
- 指定された幅と高さを持つ
SampleModel
オブジェクト。 - 例外:
UnsupportedOperationException
- このColorModel
でこのメソッドがサポートされていない場合- 関連項目:
-
isCompatibleSampleModel
public boolean isCompatibleSampleModel(SampleModel sm) SampleModel
がこのColorModel
と互換性があるかどうかを判定します。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はUnsupportedOperationException
をスローするので、サブクラスはこのメソッドをオーバーライドする必要があります。- パラメータ:
sm
- 指定されたSampleModel
- 戻り値:
- 指定された
SampleModel
がこのColorModel
と互換性がある場合はtrue
、それ以外の場合はfalse
。 - 例外:
UnsupportedOperationException
- このColorModel
でこのメソッドがサポートされていない場合- 関連項目:
-
getAlphaRaster
public WritableRaster getAlphaRaster(WritableRaster raster) このColorModel
のピクセル値が別々の空間バンドとして色情報およびアルファ情報を表す場合(ComponentColorModel
およびDirectColorModel
など)に、入力Raster
から抽出された、イメージのアルファ・チャネルを表すRaster
を返します。 そのようなColorModel
に関連したRaster
オブジェクトがアルファ・バンドを持っている場合、このメソッドは、このアルファ・バンドがイメージ・データの最後のバンドとして格納されていると見なします。 このColorModel
に関連した空間アルファ・チャネルがほかにない場合は、null
を返します。 ルックアップ表にアルファを持つIndexColorModel
の場合、このメソッドはnull
を返します。これは、空間的に分離したアルファ・チャネルが存在しないためです。 このメソッドは、新しいRaster
を生成します(ただしデータ配列は共有されます)。ColorModel
は抽象クラスなので、どのインスタンスもサブクラスのインスタンスになります。 この抽象クラスの実装はnull
を返すので、サブクラスはこのメソッドをオーバーライドしてnull
を返す以外の動作を取得する必要があります。- パラメータ:
raster
- 指定されたRaster
- 戻り値:
- 指定した
Raster
から取得される、イメージのアルファ・チャネルを表すRaster
。
-
toString
public String toString()このColorModel
オブジェクトの内容を表すString
を返します。
-