|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.awt.image.ColorModel java.awt.image.PackedColorModel java.awt.image.DirectColorModel
public class DirectColorModel
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 になっているメソッドの実装に反映されているからです。ほかの理由でこのクラスをサブクラス化することはできますが、final なメソッドの動作をオーバーライドしたり、変更することはできません。
ColorModel
,
ColorSpace
,
SinglePixelPackedSampleModel
,
BufferedImage
,
ColorModel.getRGBdefault()
フィールドの概要 |
---|
クラス java.awt.image.ColorModel から継承されたフィールド |
---|
pixel_bits, transferType |
インタフェース java.awt.Transparency から継承されたフィールド |
---|
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 を構築します。 |
メソッドの概要 | |
---|---|
ColorModel |
coerceData(WritableRaster raster,
boolean isAlphaPremultiplied)
ラスタデータが isAlphaPremultiplied 変数で指定された状態と一致するようにします。 |
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 を返します。 |
クラス java.awt.image.PackedColorModel から継承されたメソッド |
---|
createCompatibleSampleModel, equals, getAlphaRaster, getMask, getMasks, isCompatibleSampleModel |
クラス java.lang.Object から継承されたメソッド |
---|
clone, getClass, notify, notifyAll, wait, wait, wait |
コンストラクタの詳細 |
---|
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 になります。
ColorModel
内の getRed
pixel
- 指定されたピクセル
ColorSpace
で 0 ? 255 の範囲public final int getGreen(int pixel)
ColorSpace
(sRGB) の 0 〜 255 の範囲でスケーリングして返します。必要な場合、色変換が行われます。ピクセル値は int
として指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が 0 の場合、緑の値は 0 になります。
ColorModel
内の getGreen
pixel
- 指定されたピクセル
ColorSpace
で 0 ? 255 の範囲public final int getBlue(int pixel)
ColorSpace
(sRGB) の 0 〜 255 の範囲でスケーリングして返します。必要な場合、色変換が行われます。ピクセル値は int
として指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。アルファ値が 0 の場合、青の値は 0 になります。
ColorModel
内の getBlue
pixel
- 指定されたピクセル
ColorSpace
で 0 ? 255 の範囲public final int getAlpha(int pixel)
int
として指定されます。
ColorModel
内の getAlpha
pixel
- 指定されたピクセル
pixel
のアルファ成分の値。0 〜 255 の範囲public final int getRGB(int pixel)
int
として指定されます。戻り値は、あらかじめ乗算されていない形式になります。アルファがあらかじめ乗算されている場合、このメソッドは色成分でそれを除算します。アルファ値が 0 の場合、色の値は 0 になります。
ColorModel
内の getRGB
pixel
- 指定されたピクセル
ColorModel.getRGBdefault()
public int getRed(Object inData)
ColorSpace
(sRGB) の 0 〜 255 の範囲でスケーリングして返します。必要な場合、色変換が行われます。ピクセル値は、オブジェクト参照として渡される transferType
型のデータ要素の配列によって指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。たとえば、アルファ値が 0 の場合、赤の値は 0 になります。 inData
が transferType
型のプリミティブ配列でない場合は、ClassCastException
がスローされます。inData
の大きさがこの ColorModel
のピクセル値を保持するのに十分でない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。 サブクラスがその実装をオーバーライドしない場合、サポートされていない transferType
を使用していれば、例外がスローされます。この transferType
が、ColorModel
でサポートされていない場合は、UnsupportedOperationException
がスローされます。
ColorModel
内の getRed
inData
- ピクセル値を格納する配列
ArrayIndexOutOfBoundsException
- inData
がこのカラーモデルのピクセル値を保持するのに十分な大きさでない場合
ClassCastException
- inData
が transferType
型のプリミティブ配列でない場合
UnsupportedOperationException
- この transferType
がこのカラーモデルでサポートされていない場合public int getGreen(Object inData)
ColorSpace
(sRGB) の 0 〜 255 の範囲でスケーリングして返します。必要な場合、色変換が行われます。ピクセル値は、オブジェクト参照として渡される transferType
型のデータ要素の配列によって指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。たとえば、アルファ値が 0 の場合、緑の値は 0 になります。 inData
が transferType
型のプリミティブ配列でない場合は、ClassCastException
がスローされます。inData
の大きさがこの ColorModel
のピクセル値を保持するのに十分でない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。 サブクラスがその実装をオーバーライドしない場合、サポートされていない transferType
を使用していれば、例外がスローされます。この transferType
が、ColorModel
でサポートされていない場合は、UnsupportedOperationException
がスローされます。
ColorModel
内の getGreen
inData
- ピクセル値を格納する配列
ArrayIndexOutOfBoundsException
- inData
がこのカラーモデルのピクセル値を保持するのに十分な大きさでない場合
ClassCastException
- inData
が transferType
型のプリミティブ配列でない場合
UnsupportedOperationException
- この transferType
がこのカラーモデルでサポートされていない場合public int getBlue(Object inData)
ColorSpace
(sRGB) の 0 〜 255 の範囲でスケーリングして返します。必要な場合、色変換が行われます。ピクセル値は、オブジェクト参照として渡される transferType
型のデータ要素の配列によって指定されます。戻り値は、あらかじめ乗算されていない値になります。アルファがあらかじめ乗算されている場合、このメソッドは値を返す前にそれを除算します。たとえば、アルファ値が 0 の場合、青の値は 0 になります。 inData
が transferType
型のプリミティブ配列でない場合は、ClassCastException
がスローされます。inData
の大きさがこの ColorModel
のピクセル値を保持するのに十分でない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。 サブクラスがその実装をオーバーライドしない場合、サポートされていない transferType
を使用していれば、例外がスローされます。この transferType
が、ColorModel
でサポートされていない場合は、UnsupportedOperationException
がスローされます。
ColorModel
内の getBlue
inData
- ピクセル値を格納する配列
ArrayIndexOutOfBoundsException
- inData
がこのカラーモデルのピクセル値を保持するのに十分な大きさでない場合
ClassCastException
- inData
が transferType
型のプリミティブ配列でない場合
UnsupportedOperationException
- この transferType
がこのカラーモデルでサポートされていない場合public int getAlpha(Object inData)
transferType
型のデータ要素の配列で指定されます。 inData
が transferType
型のプリミティブ配列でない場合は、ClassCastException
がスローされます。inData
の大きさがこの ColorModel
のピクセル値を保持するのに十分でない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。 サブクラスがその実装をオーバーライドしない場合、サポートされていない transferType
を使用していれば、例外がスローされます。この transferType
がサポートされていない場合は、UnsupportedOperationException
がスローされます。
ColorModel
内の getAlpha
inData
- 指定されたピクセル
ClassCastException
- inData
が transferType
型のプリミティブ配列でない場合
ArrayIndexOutOfBoundsException
- inData
がこの ColorModel
のピクセル値を保持するのに十分な大きさでない場合
UnsupportedOperationException
- この tranferType
がこの ColorModel
でサポートされていない場合public int getRGB(Object inData)
transferType
型のデータ要素の配列によって指定されます。 inData
が transferType
型のプリミティブ配列でない場合は、ClassCastException
がスローされます。inData
の大きさがこの ColorModel
のピクセル値を保持するのに十分でない場合は、ArrayIndexOutOfBoundsException
がスローされます。戻り値は、あらかじめ乗算されていない形式になります。アルファがあらかじめ乗算されている場合、このメソッドは色成分でそれを除算します。たとえば、アルファ値が 0 の場合、色の値は 0 になります。 DirectColorModel
はサブクラス化が可能なので、サブクラスはこのメソッドの実装を継承します。 サブクラスがその実装をオーバーライドしない場合、サポートされていない transferType
を使用していれば、例外がスローされます。
ColorModel
内の getRGB
inData
- 指定されたピクセル
UnsupportedOperationException
- この transferType
がこの ColorModel
でサポートされていない場合ColorModel.getRGBdefault()
public Object getDataElements(int rgb, Object pixel)
ColorModel
のピクセルのデータ要素配列表現を返します。この配列は、WritableRaster
オブジェクトの setDataElements
メソッドに渡すことができます。ピクセル変数が null
の場合は、新しい配列が割り当てられます。pixel
が null
でない場合は、transferType
型のプリミティブ配列である必要があります。 そうでない場合は、ClassCastException
がスローされます。pixel
がこの ColorModel
のピクセル値を格納できるほど大きくない場合は、ArrayIndexOutOfBoundsException
がスローされます。ピクセル配列が返されます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。 サブクラスがその実装をオーバーライドしない場合、サポートされていない transferType
を使用していれば、例外がスローされます。
- オーバーライド:
- クラス
ColorModel
内の getDataElements
- パラメータ:
rgb
- デフォルト RGB カラーモデルの整数型ピクセル表現pixel
- 指定されたピクセル
- 戻り値:
- この
ColorModel
の指定されたピクセルの配列表現
- 例外:
ClassCastException
- pixel
が transferType
型のプリミティブ配列でない場合
ArrayIndexOutOfBoundsException
- pixel
がこの ColorModel
のピクセル値を保持するのに十分な大きさでない場合
UnsupportedOperationException
- この transferType
がこの ColorModel
でサポートされていない場合- 関連項目:
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
がスローされます。
ColorModel
内の getComponents
pixel
- 指定されたピクセルcomponents
- 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset
- 色成分およびアルファ成分の格納を開始する、components
配列へのオフセット
public final int[] getComponents(Object pixel, int[] components, int offset)
ColorModel
でピクセルを指定して、標準化されていない色成分とアルファ成分の配列を返します。ピクセル値は、オブジェクト参照として渡される transferType
型のデータ要素の配列によって指定されます。pixel
が transferType
型のプリミティブ配列でない場合は、ClassCastException
がスローされます。pixel
がこの ColorModel
のピクセル値を格納できるほど大きくない場合は、ArrayIndexOutOfBoundsException
がスローされます。components
配列が null
の場合は、新しい配列が割り当てられます。components
配列が返されます。色成分とアルファ成分は、offset
を起点にして components
配列に格納されます。 配列がこのメソッドで割り当てられている場合も同様です。components
配列が null
でなく、offset
を起点にした場合に、色成分とアルファ成分のすべてを保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。 サブクラスがその実装をオーバーライドしない場合、サポートされていない transferType
を使用していれば、例外がスローされます。
ColorModel
内の getComponents
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
を生成します。
ColorModel
内の createCompatibleWritableRaster
w
- 新しい WritableRaster
に適用される幅h
- 新しい WritableRaster
に適用される高さ
WritableRaster
オブジェクト
IllegalArgumentException
- w
または h
が 0 以下である場合WritableRaster
,
SampleModel
public int getDataElement(int[] components, int offset)
ColorModel
の int
として表現されるピクセル値を返します。components
配列が offset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。
ColorModel
内の getDataElement
components
- 標準化されていない色成分およびアルファ成分の配列offset
- 色成分およびアルファ成分の取得を開始する、components
のインデックス
ColorModel
内の int
ピクセル値
ArrayIndexOutOfBoundsException
- components
配列の大きさが offset
を起点にすべての色成分およびアルファ成分を保持するのに十分でない場合public Object getDataElements(int[] components, int offset, Object obj)
ColorModel
のピクセルのデータ要素配列表現を返します。この配列は、WritableRaster
オブジェクトの setDataElements
メソッドに渡すことができます。offset を起点にした components
配列が、すべての色成分およびアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。obj
変数が null
の場合は、新しい配列が割り当てられます。obj
が null
でない場合は、transferType
型のプリミティブ配列である必要があります。 そうでない場合は、ClassCastException
がスローされます。obj
がこの ColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。DirectColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。 サブクラスがその実装をオーバーライドしない場合、サポートされていない transferType
を使用していれば、例外がスローされます。
- オーバーライド:
- クラス
ColorModel
内の getDataElements
- パラメータ:
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 を使用した場合は例外をスローします。
ColorModel
内の coerceData
raster
- WritableRaster
データisAlphaPremultiplied
- アルファがあらかじめ乗算されている場合は true
、そうでない場合は false
ColorModel
オブジェクト
UnsupportedOperationException
- この transferType
がこのカラーモデルでサポートされていない場合public boolean isCompatibleRaster(Raster raster)
raster
がこの ColorModel
と互換性がある場合には true
を返し、そうでない場合には false
を返します。
ColorModel
内の isCompatibleRaster
raster
- 互換性を判定する Raster
オブジェクト
raster
がこの ColorModel
と 互換性がある場合は true
、そうでない場合は false
public String toString()
DirectColorModel
を表す String
を返します。
ColorModel
内の toString
DirectColorModel
を表す String
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。