public class DirectColorModel extends PackedColorModel
DirectColorModel
クラスは、RGBの色とアルファの情報を個別のサンプルとして表し、1つのピクセルのすべてのサンプルをint、short、またはbyte型の数で1つにパックするピクセル値を扱うColorModel
クラスです。このクラスは、ColorSpace.TYPE_RGB型のColorSpaceとだけ一緒に使うことができます。さらに、ColorSpaceの各コンポーネントで、getMinValue()
メソッドで取得される最小標準化成分値が0.0、getMaxValue()
メソッドで取得される最大標準化成分値が1.0である必要があります。この最小値と最大値はRGB領域における典型的な値です。ピクセル値には、カラー・サンプルが3つ必要であるほか、アルファ・サンプルを1つ含めることができます。transferType
型のプリミティブ配列のピクセル表現を使うメソッドでは、配列長は常に1です。サポートされる転送タイプは、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、およびDataBuffer.TYPE_INTです。カラー・サンプルとアルファ・サンプルは、ビット・マスクで示されるビット単位で配列の単一の要素に格納されます。各ビット・マスクは連続している必要があり、複数のマスクをオーバーラップさせることはできません。同じマスクが、ほかのメソッドによって使用される単一のintピクセル表現に適用されます。次に、マスクと、カラー・サンプルとアルファ・サンプルの対応関係を示します。
表示または処理のためにピクセル値から色成分やアルファ成分に変換するときには、サンプルと成分は1対1の対応になります。DirectColorModel
は一般に、パックされたサンプルを定義するのにマスクを使うイメージ・データとともに使用します。たとえば、DirectColorModel
はSinglePixelPackedSampleModel
と組み合わせて使用してBufferedImage
を構築できます。通常、SampleModel
とColorModel
が使うマスクは同じものです。ただし、マスクが異なる場合に、ピクセル・データの色解釈はColorModel
のマスクにしたがって処理されます。
このクラスで使うピクセル値は常に単一のintとして表現できるので、単一のintピクセル表現はこのクラスのすべてのオブジェクトで有効です。このため、この表現を使うメソッドは、無効なピクセル値が原因でIllegalArgumentException
をスローすることはありません。
X11のTrueColorと類似したカラー・モデルです。getRGBdefault
メソッドが指定するデフォルトのRGB ColorModelは、次のパラメータを持つDirectColorModel
です。
Number of bits: 32 Red mask: 0x00ff0000 Green mask: 0x0000ff00 Blue mask: 0x000000ff Alpha mask: 0xff000000 Color space: sRGB isAlphaPremultiplied: False Transparency: Transparency.TRANSLUCENT transferType: DataBuffer.TYPE_INT
このクラスのメソッドの多くはfinalです。この理由は、下層のネイティブなグラフィックスのコードがこのクラスの設計と操作に関する前提条件を課し、これらの前提条件がこのクラスでfinalになっているメソッドの実装に反映されているからです。他の理由でこのクラスをサブクラス化することはできますが、それらのメソッドの動作をオーバーライドしたり、変更することはできません。
pixel_bits, transferType
BITMASK, OPAQUE, TRANSLUCENT
コンストラクタと説明 |
---|
DirectColorModel(ColorSpace space, int bits, int rmask, int gmask, int bmask, int amask, boolean isAlphaPremultiplied, int transferType)
指定されたパラメータから
DirectColorModel を構築します。 |
DirectColorModel(int bits, int rmask, int gmask, int bmask)
指定されたマスクから、
int ピクセル表現のどのビットが赤、緑、青のサンプルを格納するかを指定するDirectColorModel を構築します。 |
DirectColorModel(int bits, int rmask, int gmask, int bmask, int amask)
指定されたマスクから、
DirectColorModel を構築します。このマスクは、int ピクセル表現のどのビットが赤、緑、青のサンプルを格納するか、アルファ・サンプルがあればどのビットが格納するかを指定します。 |
修飾子と型 | メソッドと説明 |
---|---|
ColorModel |
coerceData(WritableRaster raster, boolean isAlphaPremultiplied)
ラスター・データが
isAlphaPremultiplied 変数で指定された状態と一致するようにします。このとき、データはこのColorModel によって現在正しく記述されていると見なされます。 |
WritableRaster |
createCompatibleWritableRaster(int w, int h)
この
ColorModel と互換性のあるデータ・レイアウト(SampleModel )を持つ、指定された幅と高さのWritableRaster を作成します。 |
int |
getAlpha(int pixel)
指定されたピクセルのアルファ成分を、0 - 255の範囲でスケーリングして返します。
|
int |
getAlpha(Object inData)
指定されたピクセルのアルファ成分を、0 - 255の範囲でスケーリングして返します。
|
int |
getAlphaMask()
int ピクセル表現のどのビットがアルファ成分を格納しているかを示すマスクを返します。 |
int |
getBlue(int pixel)
指定されたピクセルの青の色成分を、デフォルトのRGB
ColorSpace 、つまりsRGBの0 - 255の範囲でスケーリングして返します。 |
int |
getBlue(Object inData)
指定されたピクセルの青の色成分を、デフォルトのRGB
ColorSpace 、つまりsRGBの0 - 255の範囲でスケーリングして返します。 |
int |
getBlueMask()
int ピクセル表現のどのビットが青の色成分を格納しているかを示すマスクを返します。 |
int[] |
getComponents(int pixel, int[] components, int offset)
この
ColorModel でピクセルを指定して、標準化されていない色成分とアルファ成分の配列を返します。 |
int[] |
getComponents(Object pixel, int[] components, int offset)
この
ColorModel でピクセルを指定して、標準化されていない色成分とアルファ成分の配列を返します。 |
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 のピクセルのデータ要素配列表現を返します。 |
int |
getGreen(int pixel)
指定されたピクセルの緑の色成分を、デフォルトのRGB
ColorSpace 、つまりsRGBの0 - 255の範囲でスケーリングして返します。 |
int |
getGreen(Object inData)
指定されたピクセルの緑の色成分を、デフォルトのRGB
ColorSpace 、つまりsRGBの0 - 255の範囲でスケーリングして返します。 |
int |
getGreenMask()
int ピクセル表現のどのビットが緑の色成分を格納しているかを示すマスクを返します。 |
int |
getRed(int pixel)
指定されたピクセルの赤の色成分を、デフォルトのRGB
ColorSpace 、つまりsRGBの0 - 255の範囲でスケーリングして返します。 |
int |
getRed(Object inData)
指定されたピクセルの赤の色成分を、デフォルトのRGB
ColorSpace 、つまりsRGBの0 - 255の範囲でスケーリングして返します。 |
int |
getRedMask()
int ピクセル表現のどのビットが赤の色成分を格納しているかを示すマスクを返します。 |
int |
getRGB(int pixel)
ピクセルの色成分とアルファ成分を、デフォルトのRGBカラー・モデル形式で返します。
|
int |
getRGB(Object inData)
指定されたピクセルの色成分およびアルファ成分をデフォルトRGBカラー・モデル形式で返します。
|
boolean |
isCompatibleRaster(Raster raster)
raster がこのColorModel と互換性がある場合にはtrue を返し、そうでない場合にはfalse を返します。 |
String |
toString()
この
DirectColorModel を表すString を返します。 |
createCompatibleSampleModel, equals, getAlphaRaster, getMask, getMasks, isCompatibleSampleModel
finalize, getColorSpace, getComponentSize, getComponentSize, getDataElement, getDataElements, getNormalizedComponents, getNormalizedComponents, getNumColorComponents, getNumComponents, getPixelSize, getRGBdefault, getTransferType, getTransparency, getUnnormalizedComponents, hasAlpha, hashCode, isAlphaPremultiplied
public DirectColorModel(int bits, int rmask, int gmask, int bmask)
int
ピクセル表現のどのビットが赤、緑、青のサンプルを格納するかを指定するDirectColorModel
を構築します。ピクセル値はアルファ情報を格納しないので、すべてのピクセルは不透明(アルファ = 1.0)として処理されます。各マスク内のすべてのビットは連続していて、int
ピクセル表現の指定桁数の最下位ビットに収まる必要があります。ColorSpace
はデフォルトのsRGB領域になります。透明度の値はTransparency.OPAQUEになります。転送型は、単一のピクセルを保持できるDataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、またはDataBuffer.TYPE_INTのうち最小のものになります。bits
- ピクセル値のビット数。たとえばマスク内のビット数の合計。rmask
- intピクセル表現のどのビットが赤の色成分を格納するかを示すマスクを指定するgmask
- intピクセル表現のどのビットが緑の色成分を格納するかを示すマスクを指定するbmask
- intピクセル表現のどのビットが青の色成分を格納するかを示すマスクを指定するpublic DirectColorModel(int bits, int rmask, int gmask, int bmask, int amask)
DirectColorModel
を構築します。このマスクは、int
ピクセル表現のどのビットが赤、緑、青のサンプルを格納するか、アルファ・サンプルがあればどのビットが格納するかを指定します。amask
が0であれば、ピクセル値はアルファ情報を格納しないので、すべてのピクセルは不透明(アルファ = 1.0)として処理されます。各マスク内のすべてのビットは連続していて、int
ピクセル表現の指定桁数の最下位ビットに収まる必要があります。アルファがあれば、あらかじめ乗算されることはありません。ColorSpace
はデフォルトのsRGB領域になります。透明度の値は、アルファが存在しない場合にはTransparency.OPAQUEになり、そうでない場合にはTransparency.TRANSLUCENTになります。転送型は、単一のピクセルを保持できるDataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、またはDataBuffer.TYPE_INTのうち最小のものになります。bits
- ピクセル値のビット数。たとえばマスク内のビット数の合計。rmask
- intピクセル表現のどのビットが赤の色成分を格納するかを示すマスクを指定するgmask
- intピクセル表現のどのビットが緑の色成分を格納するかを示すマスクを指定するbmask
- intピクセル表現のどのビットが青の色成分を格納するかを示すマスクを指定するamask
- intピクセル表現のどのビットがアルファ成分を格納するかを示すマスクを指定するpublic DirectColorModel(ColorSpace space, int bits, int rmask, int gmask, int bmask, int amask, boolean isAlphaPremultiplied, int transferType)
DirectColorModel
を構築します。色成分は指定されたColorSpace
に入り、型はColorSpace.TYPE_RGB、最小標準化成分値はすべて0.0、最大標準化成分値はすべて1.0である必要があります。このマスクは、int
ピクセル表現のどのビットが赤、緑、青のカラー・サンプルを格納するか、アルファ・サンプルがあればどのビットが格納するかを指定します。amask
が0であれば、ピクセル値はアルファ情報を格納しないので、すべてのピクセルは不透明(アルファ = 1.0)として処理されます。各マスク内のすべてのビットは連続していて、int
ピクセル表現の指定桁数の最下位ビットに収まる必要があります。アルファがある場合は、boolean
型のisAlphaPremultiplied
がピクセル値のカラー・サンプルとアルファ・サンプルの解釈方法を指定します。boolean
がtrue
の場合は、カラー・サンプルはアルファ・サンプルと乗算されたと見なされます。透明度の値は、アルファが存在しない場合にはTransparency.OPAQUEに、そうでない場合にはTransparency.TRANSLUCENTになります。転送型は、ピクセル値を表現するのに使うプリミティブ配列の型で、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、またはDataBuffer.TYPE_INTのいずれかである必要があります。space
- 指定されたColorSpace
bits
- ピクセル値のビット数。たとえばマスク内のビット数の合計。rmask
- intピクセル表現のどのビットが赤の色成分を格納するかを示すマスクを指定するgmask
- intピクセル表現のどのビットが緑の色成分を格納するかを示すマスクを指定するbmask
- intピクセル表現のどのビットが青の色成分を格納するかを示すマスクを指定するamask
- intピクセル表現のどのビットがアルファ成分を格納するかを示すマスクを指定するisAlphaPremultiplied
- カラー・サンプルがアルファ・サンプルによってあらかじめ乗算されている場合はtrue
、そうでない場合はfalse
transferType
- ピクセル値を表すのに使用される配列の型IllegalArgumentException
- space
がTYPE_RGBでない場合、または最小標準化成分値および最大標準化成分値がそれぞれ0.0/1.0でない場合。public final int getRedMask()
int
ピクセル表現のどのビットが赤の色成分を格納しているかを示すマスクを返します。int
ピクセル表現のどのビットが赤の色成分を格納しているかを示すマスク。public final int getGreenMask()
int
ピクセル表現のどのビットが緑の色成分を格納しているかを示すマスクを返します。int
ピクセル表現のどのビットが緑の色成分を格納しているかを示すマスク。public final int getBlueMask()
int
ピクセル表現のどのビットが青の色成分を格納しているかを示すマスクを返します。int
ピクセル表現のどのビットが青の色成分を格納しているかを示すマスク。public final int getAlphaMask()
int
ピクセル表現のどのビットがアルファ成分を格納しているかを示すマスクを返します。int
ピクセル表現のどのビットがアルファ成分を格納しているかを示すマスク。public final int getRed(int pixel)
ColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。必要な場合、色変換が行われます。ピクセル値はint
として指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が0の場合、赤の値は0になります。getRed
、クラス: ColorModel
pixel
- 指定されたピクセルColorSpace
で0 - 255の範囲。public final int getGreen(int pixel)
ColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。必要な場合、色変換が行われます。ピクセル値はint
として指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が0の場合、緑の値は0になります。getGreen
、クラス: ColorModel
pixel
- 指定されたピクセルColorSpace
で0 - 255の範囲。public final int getBlue(int pixel)
ColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。必要な場合、色変換が行われます。ピクセル値はint
として指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が0の場合、青の値は0になります。getBlue
、クラス: ColorModel
pixel
- 指定されたピクセルColorSpace
で0 - 255の範囲。public final int getAlpha(int pixel)
int
として指定されます。getAlpha
、クラス: ColorModel
pixel
- 指定されたピクセルpixel
のアルファ成分の値。0 - 255の範囲。public final int getRGB(int pixel)
int
として指定されます。戻り値は、あらかじめ乗算されていない形式になります。アルファがあらかじめ乗算されている場合、このメソッドは色成分でそれを除算します。アルファ値が0の場合、色の値は0になります。getRGB
、クラス: ColorModel
pixel
- 指定されたピクセルColorModel.getRGBdefault()
public int getRed(Object inData)
ColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。必要な場合、色変換が行われます。pixel値は、オブジェクト参照として渡されたtransferType
型のデータ要素からなる配列によって指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が0の場合、赤の値は0になります。inData
がtransferType
型のプリミティブ配列でない場合、ClassCastException
がスローされます。inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。このtransferType
が、このColorModel
でサポートされていない場合は、UnsupportedOperationException
がスローされます。getRed
、クラス: ColorModel
inData
- ピクセル値を格納する配列ArrayIndexOutOfBoundsException
- inData
がこのカラー・モデルのピクセル値を保持するのに十分な大きさでない場合ClassCastException
- inData
がtransferType
型のプリミティブ配列でない場合UnsupportedOperationException
- このtransferType
がこのカラー・モデルでサポートされていない場合public int getGreen(Object inData)
ColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。必要な場合、色変換が行われます。pixel値は、オブジェクト参照として渡されたtransferType
型のデータ要素からなる配列によって指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が0の場合、緑の値は0になります。inData
がtransferType
型のプリミティブ配列でない場合、ClassCastException
がスローされます。inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。このtransferType
が、このColorModel
でサポートされていない場合は、UnsupportedOperationException
がスローされます。getGreen
、クラス: ColorModel
inData
- ピクセル値を格納する配列ArrayIndexOutOfBoundsException
- inData
がこのカラー・モデルのピクセル値を保持するのに十分な大きさでない場合ClassCastException
- inData
がtransferType
型のプリミティブ配列でない場合UnsupportedOperationException
- このtransferType
がこのカラー・モデルでサポートされていない場合public int getBlue(Object inData)
ColorSpace
、つまりsRGBの0 - 255の範囲でスケーリングして返します。必要な場合、色変換が行われます。pixel値は、オブジェクト参照として渡されたtransferType
型のデータ要素からなる配列によって指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が0の場合、青の値は0になります。inData
がtransferType
型のプリミティブ配列でない場合、ClassCastException
がスローされます。inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。このtransferType
が、このColorModel
でサポートされていない場合は、UnsupportedOperationException
がスローされます。getBlue
、クラス: ColorModel
inData
- ピクセル値を格納する配列ArrayIndexOutOfBoundsException
- inData
がこのカラー・モデルのピクセル値を保持するのに十分な大きさでない場合ClassCastException
- inData
がtransferType
型のプリミティブ配列でない場合UnsupportedOperationException
- このtransferType
がこのカラー・モデルでサポートされていない場合public int getAlpha(Object inData)
transferType
型のデータ要素からなる配列によって指定されます。inData
がtransferType
型のプリミティブ配列でない場合、ClassCastException
がスローされます。inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。このtransferType
がサポートされていない場合は、UnsupportedOperationException
がスローされます。getAlpha
、クラス: ColorModel
inData
- 指定されたピクセルClassCastException
- inData
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
- inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException
- このColorModel
でこのtranferType
がサポートされていない場合public int getRGB(Object inData)
transferType
型のデータ要素からなる配列によって指定されます。inData
がtransferType
型のプリミティブ配列でない場合、ClassCastException
がスローされます。inData
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。戻り値は、あらかじめ乗算されていない形式になります。アルファがあらかじめ乗算されている場合、このメソッドは色成分でそれを除算します。たとえば、アルファ値が0の場合、色の値は0になります。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。getRGB
、クラス: ColorModel
inData
- 指定されたピクセルUnsupportedOperationException
- このColorModel
でこのtransferType
がサポートされていない場合ColorModel.getRGBdefault()
public Object getDataElements(int rgb, Object pixel)
ColorModel
のピクセルのデータ要素配列表現を返します。次に、この配列はWritableRaster
オブジェクトのsetDataElements
メソッドに渡すことができます。ピクセル変数がnull
の場合は、新しい配列が割り当てられます。pixel
がnull
でない場合、transferType
型のプリミティブ配列でなければならず、そうでない場合はClassCastException
がスローされます。pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。ピクセル配列が返されます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。getDataElements
、クラス: ColorModel
rgb
- デフォルトRGBカラー・モデルの整数型ピクセル表現pixel
- 指定されたピクセルColorModel
の指定されたピクセルの配列表現ClassCastException
- pixel
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
- pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合UnsupportedOperationException
- このColorModel
でこのtransferType
がサポートされていない場合WritableRaster.setDataElements(int, int, java.lang.Object)
, SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)
public final int[] getComponents(int pixel, int[] components, int offset)
ColorModel
でピクセルを指定して、標準化されていない色成分とアルファ成分の配列を返します。ピクセル値はint
として指定されます。components
配列がnull
の場合は、新しい配列が割り当てられる。components
配列が返されます。色成分とアルファ成分は、配列がこのメソッドで割り当てられても、offset
から始まるcomponents
配列に格納されます。components
配列がnull
でない場合に、offset
を起点に、すべての色成分およびアルファ成分を保持するのに十分な大きさでないときは、ArrayIndexOutOfBoundsException
がスローされます。getComponents
、クラス: ColorModel
pixel
- 指定されたピクセルcomponents
- 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset
- 色成分およびアルファ成分の格納を開始する、components
配列へのオフセットpublic final int[] getComponents(Object pixel, int[] components, int offset)
ColorModel
でピクセルを指定して、標準化されていない色成分とアルファ成分の配列を返します。pixel値は、オブジェクト参照として渡されたtransferType
型のデータ要素からなる配列によって指定されます。pixel
がtransferType
型のプリミティブ配列でない場合、ClassCastException
がスローされます。pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。components
配列がnull
の場合は、新しい配列が割り当てられる。components
配列が返されます。色成分とアルファ成分は、配列がこのメソッドで割り当てられても、offset
から始まるcomponents
配列に格納されます。components
配列がnull
でない場合に、offset
を起点に、すべての色成分およびアルファ成分を保持するのに十分な大きさでないときは、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。getComponents
、クラス: ColorModel
pixel
- 指定されたピクセルcomponents
- 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset
- 色成分およびアルファ成分の格納を開始する、components
配列へのオフセットClassCastException
- pixel
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
- pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合、あるいはcomponents
がnull
ではなく、offset
を開始点にした場合に、すべての色成分およびアルファ成分を保持するに十分な大きさでない場合UnsupportedOperationException
- このtransferType
がこのカラー・モデルでサポートされていない場合public final WritableRaster createCompatibleWritableRaster(int w, int h)
ColorModel
と互換性のあるデータ・レイアウト(SampleModel
)を持つ、指定された幅と高さのWritableRaster
を作成します。createCompatibleWritableRaster
、クラス: ColorModel
w
- 新しいWritableRaster
に適用される幅h
- 新しいWritableRaster
に適用される高さWritableRaster
オブジェクト。IllegalArgumentException
- w
またはh
以下である場合WritableRaster
、SampleModel
public int getDataElement(int[] components, int offset)
ColorModel
のint
として表現されるピクセル値を返します。components
配列がoffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。getDataElement
、クラス: ColorModel
components
- 標準化されていない色成分およびアルファ成分の配列offset
- 色成分およびアルファ成分の取得を開始する、components
のインデックスColorModel
内のint
ピクセル値。ArrayIndexOutOfBoundsException
- components
配列がoffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合public Object getDataElements(int[] components, int offset, Object obj)
ColorModel
のピクセルのデータ要素配列表現を返します。次に、この配列はWritableRaster
オブジェクトのsetDataElements
メソッドに渡すことができます。components
配列がoffsetを起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。obj
変数がnull
の場合は、新しい配列が割り当てられます。obj
がnull
でない場合、transferType
型のプリミティブ配列でなければならず、そうでない場合はClassCastException
がスローされます。obj
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。getDataElements
、クラス: ColorModel
components
- 標準化されていない色成分およびアルファ成分の配列offset
- 色成分およびアルファ成分の取得を開始する、components
のインデックスobj
- 色成分およびアルファ成分の配列を表すObject
Object
。ClassCastException
- obj
がtransferType
型のプリミティブ配列でない場合ArrayIndexOutOfBoundsException
- obj
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合、あるいはcomponents
配列が、offset
を開始点にして、すべての色成分およびアルファ成分を保持するのに十分な大きさでない場合UnsupportedOperationException
- このtransferType
がこのカラー・モデルでサポートされていない場合WritableRaster.setDataElements(int, int, java.lang.Object)
, SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)
public final ColorModel coerceData(WritableRaster raster, boolean isAlphaPremultiplied)
isAlphaPremultiplied
変数で指定された状態と一致するようにします。このとき、データはこのColorModel
によって現在正しく記述されていると見なされます。このメソッドは、カラー・ラスター・データをアルファで乗算または除算します。データが正しい状態にある場合には、処理は行いません。データを強制的に型変換する必要がある場合、このメソッドはisAlphaPremultiplied
フラグを正しく設定した、このColorModel
のインスタンスも返します。このtransferTypeがこのColorModel
によってサポートされていない場合、このメソッドはUnsupportedOperationException
をスローします。ColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承しますが、サブクラスがその実装をオーバーライドせず、しかもサポートされていないtransferTypeを使用した場合、例外がスローされます。coerceData
、クラス: ColorModel
raster
- WritableRaster
データisAlphaPremultiplied
- アルファがあらかじめ乗算されている場合はtrue
、そうでない場合はfalse
ColorModel
オブジェクト。UnsupportedOperationException
- このtransferType
がこのカラー・モデルでサポートされていない場合public boolean isCompatibleRaster(Raster raster)
raster
がこのColorModel
と互換性がある場合にはtrue
を返し、そうでない場合にはfalse
を返します。isCompatibleRaster
、クラス: ColorModel
raster
- 互換性を判定するRaster
オブジェクトraster
がこのColorModel
と互換性がある場合はtrue
、それ以外の場合はfalse
。public String toString()
DirectColorModel
を表すString
を返します。toString
、クラス: ColorModel
DirectColorModel
を表すString
。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2016, Oracle and/or its affiliates. All rights reserved.Use is subject to license termsDocumentation Redistribution Policyも参照してください。