|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjava.awt.image.ColorModel
java.awt.image.IndexColorModel
public class IndexColorModel
IndexColorModel クラスは、デフォルトの sRGB カラースペースの固定カラーマップに対するインデックスである、単一のサンプルからなるピクセル値を扱う ColorModel クラスです。カラーマップは、赤、緑、青の色成分、および各インデックスに対応する任意のアルファ成分を指定します。成分はすべて、カラーマップ内の 8 ビットの符号なし整数値として表現されます。いくつかのコンストラクタでは、呼び出し側が、BigInteger オブジェクトに設定されたビットによって、どのカラーマップエントリが有効か、およびどのカラーマップエントリが使用不可能な色を表しているかを示すことによって、カラーマップの「穴」を指定できます。このカラーモデルは X11 の PseudoColor と同じものです。
コンストラクタによっては、カラーマップの各ピクセルのアルファ成分を指定する手段を提供しているものもありますが、そうした手段を提供しないコンストラクタや、場合によってはカラーマップデータにアルファ値が格納されているかどうかを示すフラグを提供するコンストラクタもあります。コンストラクタにアルファが指定されない場合は、各エントリに不透明なアルファ成分 (アルファ = 1.0) が指定されているとみなされます。オプションとして透明ピクセルの値を指定して、そのピクセル値に指定または想定されたアルファ成分がどれであっても、完全に透明にするピクセルであることを示すことができます。IndexColorModel オブジェクトのカラーマップの色成分はアルファ成分によってあらかじめ乗算されることはありません。
IndexColorModel オブジェクトが Transparency.OPAQUE の透明度の値を持つ場合、hasAlpha メソッドおよび getNumComponents メソッド (ともに ColorModel から継承される) はそれぞれ false および 3 を返します。ほかの透明度の値の場合、hasAlpha メソッドは true を返し、getNumComponents メソッドは 4 を返します。
カラーマップのインデックスに使用される値は、ピクセル表現の最下位の n ビットから採用されます。n は、コンストラクタで指定するピクセルサイズに基づいて決まります。ピクセルサイズが 8 ビットより小さい場合、n は 2 の累乗に切り上げられます。つまり 3 は 4 になり、5、6、7 は 8 になります。ピクセルサイズが 8 〜 16 ビットの場合、n はピクセルサイズと同じです。16 ビットを超えるピクセルサイズは、このクラスではサポートされていません。n より上位のビットは、ピクセル表現で無視されます。インデックス値がマップサイズ以上で 2n 未満である場合、このようなインデックス値は未定義であるため、すべての色成分およびアルファ成分に対して 0 が返されます。
このクラスのメソッドの多くは final です。その理由は、下位のネイティブなグラフィックスのコードがこのクラスの設計と操作に関しての前提となり、これらの前提がこのクラスで final になっているメソッドの実装に反映されているからです。このクラスを別の理由でサブクラス化することはできますが、final なメソッドの動作をオーバーライドしたり、変更することはできません。
transferType 型のプリミティブ配列のピクセル表現を使うメソッドでは、配列長は常に 1 です。サポートされる転送型は、DataBuffer.TYPE_BYTE および DataBuffer.TYPE_USHORT です。このクラスで使うピクセル値は常に単一の int として表現できるので、単一の int ピクセル表現はこのクラスのすべてのオブジェクトで有効です。このため、この表現を使うメソッドは、無効なピクセル値が原因で IllegalArgumentException をスローすることはありません。
ColorModel,
ColorSpace,
DataBuffer
| フィールドの概要 |
|---|
| クラス java.awt.image.ColorModel から継承されたフィールド |
|---|
pixel_bits, transferType |
| インタフェース java.awt.Transparency から継承されたフィールド |
|---|
BITMASK, OPAQUE, TRANSLUCENT |
| コンストラクタの概要 | |
|---|---|
IndexColorModel(int bits,
int size,
byte[] r,
byte[] g,
byte[] b)
指定された赤、緑、青の色成分の配列から IndexColorModel を構築します。 |
|
IndexColorModel(int bits,
int size,
byte[] r,
byte[] g,
byte[] b,
byte[] a)
指定された赤、緑、青の色成分の配列から IndexColorModel を構築します。 |
|
IndexColorModel(int bits,
int size,
byte[] r,
byte[] g,
byte[] b,
int trans)
指定された赤、緑、青の色成分の配列から IndexColorModel を構築します。 |
|
IndexColorModel(int bits,
int size,
byte[] cmap,
int start,
boolean hasalpha)
インタリーブ化形式で格納されている赤、緑、青の色成分、およびオプションのアルファ成分からなる 1 つの配列から IndexColorModel を構築します。 |
|
IndexColorModel(int bits,
int size,
byte[] cmap,
int start,
boolean hasalpha,
int trans)
インタリーブ化形式で格納されている赤、緑、青の色成分、およびオプションのアルファ成分からなる 1 つの配列から IndexColorModel を構築します。 |
|
IndexColorModel(int bits,
int size,
int[] cmap,
int start,
boolean hasalpha,
int trans,
int transferType)
int の配列から IndexColorModel を構築します。 |
|
IndexColorModel(int bits,
int size,
int[] cmap,
int start,
int transferType,
BigInteger validBits)
int の配列から IndexColorModel を構築します。 |
|
| メソッドの概要 | |
|---|---|
BufferedImage |
convertToIntDiscrete(Raster raster,
boolean forceARGB)
ソース Raster のインデックスを展開して計算したピクセルデータ付きの Raster を持つ、TYPE_INT_ARGB または TYPE_INT_RGB の新しい BufferedImage を、この ColorModel の色成分とアルファ成分の配列を使って返します。 |
SampleModel |
createCompatibleSampleModel(int w,
int h)
この ColorModel と互換性のあるデータレイアウトを持つ、指定された幅と高さの SampleModel を作成します。 |
WritableRaster |
createCompatibleWritableRaster(int w,
int h)
この ColorModel と互換性のあるデータレイアウト (SampleModel) を持つ、指定された幅と高さの WritableRaster を生成します。 |
void |
finalize()
この ColorModel が参照されなくなったときに、関連したシステムリソースを破棄します。 |
int |
getAlpha(int pixel)
指定されたピクセルのアルファ成分を、0 〜 255 の範囲でスケーリングして返します。 |
void |
getAlphas(byte[] a)
アルファの透明成分の配列を指定された配列にコピーします。 |
int |
getBlue(int pixel)
指定されたピクセルの青の色成分を、デフォルトの RGB ColorSpace、つまり sRGB の 0 〜 255 の範囲でスケーリングして返します。 |
void |
getBlues(byte[] b)
青の色成分の配列を指定された配列にコピーします。 |
int[] |
getComponents(int pixel,
int[] components,
int offset)
この ColorModel の指定されたピクセルについて、標準化されていない色成分とアルファ成分の配列を返します。 |
int[] |
getComponents(Object pixel,
int[] components,
int offset)
この ColorModel の指定されたピクセルについて、標準化されていない色成分とアルファ成分の配列を返します。 |
int[] |
getComponentSize()
色成分やアルファ成分について 1 成分あたりのビット数の配列を返します。 |
int |
getDataElement(int[] components,
int offset)
指定された、標準化されていない色成分とアルファ成分の配列について、この ColorModel の int として表現されるピクセル値を返します。 |
Object |
getDataElements(int[] components,
int offset,
Object pixel)
標準化されていない色成分およびアルファ成分の配列を指定して、この ColorModel のピクセルのデータ要素配列表現を返します。 |
Object |
getDataElements(int rgb,
Object pixel)
指定されたデフォルトの RGB カラーモデルの整数ピクセル表現について、この ColorModel のピクセルのデータ要素配列表現を返します。 |
int |
getGreen(int pixel)
指定されたピクセルの緑の色成分を、デフォルトの RGB ColorSpace、つまり sRGB の 0 〜 255 の範囲でスケーリングして返します。 |
void |
getGreens(byte[] g)
緑の色成分の配列を指定された配列にコピーします。 |
int |
getMapSize()
この IndexColorModel 内の色成分とアルファ成分の配列の大きさを返します。 |
int |
getRed(int pixel)
指定されたピクセルの赤の色成分を、デフォルトの RGB ColorSpace、つまり sRGB の 0 〜 255 の範囲でスケーリングして返します。 |
void |
getReds(byte[] r)
赤の色成分の配列を指定された配列にコピーします。 |
int |
getRGB(int pixel)
ピクセルの色成分とアルファ成分を、デフォルトの RGB カラーモデル形式で返します。 |
void |
getRGBs(int[] rgb)
各インデックスのデータを色成分とアルファ成分の配列からデフォルトの RGB ColorModel 形式の int に変換し、結果として得られる 32 ビット ARGB 値を指定された配列にコピーします。 |
int |
getTransparency()
透明度を返します。 |
int |
getTransparentPixel()
この IndexColorModel 内の透明ピクセルのインデックスを返します。 |
BigInteger |
getValidPixels()
カラーマップの有効/無効ピクセルを示す BigInteger を返します。 |
boolean |
isCompatibleRaster(Raster raster)
raster がこの ColorModel と互換性がある場合には true を返し、そうでない場合には false を返します。 |
boolean |
isCompatibleSampleModel(SampleModel sm)
SampleModel がこの ColorModel と互換性があるかどうかを調べます。 |
boolean |
isValid()
すべてのピクセルが有効かどうかを返します。 |
boolean |
isValid(int pixel)
ピクセルが有効かどうかを返します。 |
String |
toString()
この ColorModel オブジェクトの内容を表す String を返します。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, getClass, notify, notifyAll, wait, wait, wait |
| コンストラクタの詳細 |
|---|
public IndexColorModel(int bits,
int size,
byte[] r,
byte[] g,
byte[] b)
IndexColorModel を構築します。このカラーモデルによって記述されるピクセルはすべて、正規化されていない 255 (1.0 標準化) のアルファ成分を持ちます。 つまり、完全に不透明です。色成分を指定するすべての配列は、少なくとも指定されたエントリ数を持つ必要があります。ColorSpace はデフォルトの sRGB 領域になります。このコンストラクタへのどの引数にもアルファ情報がないため、透明度の値は常に Transparency.OPAQUE になります。転送型は、単一のピクセルを格納できる DataBuffer.TYPE_BYTE または DataBuffer.TYPE_USHORT の最小のものになります。
bits - 1 ピクセルあたりのビット数size - 色成分の配列の大きさr - 赤色成分の配列g - 緑色成分の配列b - 青色成分の配列
IllegalArgumentException - bits が 1 より小さいか 16 より大きい場合
IllegalArgumentException - size が 1 未満の場合
public IndexColorModel(int bits,
int size,
byte[] r,
byte[] g,
byte[] b,
int trans)
IndexColorModel を構築します。このカラーモデルによって記述されるピクセルはすべて、正規化されていない 255 (1.0 正規化) のアルファ成分を持ちます。 つまり、透明に指定されたピクセル以外は完全に不透明です。色成分を指定するすべての配列は、少なくとも指定されたエントリ数を持つ必要があります。ColorSpace はデフォルトの sRGB 領域になります。上記のクラスの説明に示すように、透明度の値は引数に応じて Transparency.OPAQUE または Transparency.BITMASK になります。転送型は、単一のピクセルを格納できる DataBuffer.TYPE_BYTE または DataBuffer.TYPE_USHORT の最小のものになります。
bits - 1 ピクセルあたりのビット数size - 色成分の配列の大きさr - 赤色成分の配列g - 緑色成分の配列b - 青色成分の配列trans - 透明ピクセルのインデックス
IllegalArgumentException - bits が 1 より小さいか 16 より大きい場合
IllegalArgumentException - size が 1 未満の場合
public IndexColorModel(int bits,
int size,
byte[] r,
byte[] g,
byte[] b,
byte[] a)
IndexColorModel を構築します。色成分を指定するすべての配列は、少なくとも指定されたエントリ数を持つ必要があります。ColorSpace はデフォルトの sRGB 領域になります。上記のクラスの説明に示すように、透明度の値は引数に応じて Transparency.OPAQUE、Transparency.BITMASK、または Transparency.TRANSLUCENT になります。転送型は、単一のピクセルを格納できる DataBuffer.TYPE_BYTE または DataBuffer.TYPE_USHORT の最小のものになります。
bits - 1 ピクセルあたりのビット数size - 色成分の配列の大きさr - 赤色成分の配列g - 緑色成分の配列b - 青色成分の配列a - アルファ値成分の配列
IllegalArgumentException - bits が 1 より小さいか 16 より大きい場合
IllegalArgumentException - size が 1 未満の場合
public IndexColorModel(int bits,
int size,
byte[] cmap,
int start,
boolean hasalpha)
IndexColorModel を構築します。この配列の値は、指定されたサイズの成分配列をすべて十分に満たす数である必要があります。ColorSpace はデフォルトの sRGB 領域になります。上記のクラスの説明に示すように、透明度の値は引数に応じて Transparency.OPAQUE、Transparency.BITMASK、または Transparency.TRANSLUCENT になります。転送型は、単一のピクセルを格納できる DataBuffer.TYPE_BYTE または DataBuffer.TYPE_USHORT の最小のものになります。
bits - 1 ピクセルあたりのビット数size - 色成分の配列の大きさcmap - 色成分の配列start - 最初の色成分の開始オフセットhasalpha - cmap 配列でのアルファ値の有無を示す
IllegalArgumentException - bits が 1 より小さいか 16 より大きい場合
IllegalArgumentException - size が 1 未満の場合
public IndexColorModel(int bits,
int size,
byte[] cmap,
int start,
boolean hasalpha,
int trans)
IndexColorModel を構築します。指定された透明インデックスは、どのアルファ値が指定されていても、完全に透明であるとみなされるピクセルを表現します。この配列の値は、指定されたサイズの成分配列をすべて十分に満たす数である必要があります。ColorSpace はデフォルトの sRGB 領域になります。上記のクラスの説明に示すように、透明度の値は引数に応じて Transparency.OPAQUE、Transparency.BITMASK、または Transparency.TRANSLUCENT になります。転送型は、単一のピクセルを格納できる DataBuffer.TYPE_BYTE または DataBuffer.TYPE_USHORT の最小のものになります。
bits - 1 ピクセルあたりのビット数size - 色成分の配列の大きさcmap - 色成分の配列start - 最初の色成分の開始オフセットhasalpha - cmap 配列でのアルファ値の有無を示すtrans - 完全な透明ピクセルのインデックス
IllegalArgumentException - bits が 1 より小さいか 16 より大きい場合
IllegalArgumentException - size が 1 未満の場合
public IndexColorModel(int bits,
int size,
int[] cmap,
int start,
boolean hasalpha,
int trans,
int transferType)
IndexColorModel を構築します。 ただし、各 int は、デフォルトの RGB カラーモデル形式の赤、緑、青の色成分、および任意のアルファ成分からなります。指定された透明インデックスは、どのアルファ値が指定されていても、完全に透明であるとみなされるピクセルを表現します。この配列の値は、指定されたサイズの成分配列をすべて十分に満たす数である必要があります。ColorSpace はデフォルトの sRGB 領域になります。上記のクラスの説明に示すように、透明度の値は引数に応じて Transparency.OPAQUE、Transparency.BITMASK、または Transparency.TRANSLUCENT になります。
bits - 1 ピクセルあたりのビット数size - 色成分の配列の大きさcmap - 色成分の配列start - 最初の色成分の開始オフセットhasalpha - cmap 配列でのアルファ値の有無を示すtrans - 完全な透明ピクセルのインデックスtransferType - ピクセル値の表現に使用される配列のデータ型。データ型は DataBuffer.TYPE_BYTE または DataBuffer.TYPE_USHORT のどちらか
IllegalArgumentException - bits が 1 より小さいか 16 より大きい場合
IllegalArgumentException - size が 1 未満の場合
IllegalArgumentException - transferType が DataBuffer.TYPE_BYTE または DataBuffer.TYPE_USHORT のどちらでもない場合
public IndexColorModel(int bits,
int size,
int[] cmap,
int start,
int transferType,
BigInteger validBits)
int の配列から IndexColorModel を構築します。 ただし、各 int は、デフォルトの RGB カラーモデル形式の赤、緑、青の色成分、および任意のアルファ成分からなります。この配列の値は、指定されたサイズの成分配列をすべて十分に満たす数である必要があります。ColorSpace はデフォルトの sRGB 領域になります。上記のクラスの説明に示すように、透明度の値は引数に応じて Transparency.OPAQUE、Transparency.BITMASK、または Transparency.TRANSLUCENT になります。転送型は DataBuffer.TYPE_BYTE または DataBuffer.TYPE_USHORT のいずれかである必要があります。BigInteger オブジェクトは、cmap 配列の有効/無効ピクセルを指定します。ピクセルはそのインデックスの BigInteger 値が設定されていれば有効、そのインデックスの BigInteger ビットが設定されていない場合は無効です。
bits - 1 ピクセルあたりのビット数size - 色成分の配列の大きさcmap - 色成分の配列start - 最初の色成分の開始オフセットtransferType - 指定されたデータ型validBits - BigInteger のオブジェクト。ビットが BigInteger に設定されている場合は、インデックスのピクセルは有効。ビットが設定されていない場合は、インデックスのピクセルは無効とみなされる。null の場合は、すべてのピクセルが有効。ゼロからマップサイズまでのビットだけが考慮される
IllegalArgumentException - bits が 1 より小さいか 16 より大きい場合
IllegalArgumentException - size が 1 未満の場合
IllegalArgumentException - transferType が DataBuffer.TYPE_BYTE または DataBuffer.TYPE_USHORT のどちらでもない場合| メソッドの詳細 |
|---|
public int getTransparency()
Transparency 内の getTransparencyColorModel 内の getTransparencyIndexColorModel の透明度Transparency.OPAQUE,
Transparency.BITMASK,
Transparency.TRANSLUCENTpublic int[] getComponentSize()
ColorModel 内の getComponentSizeIndexColorModel の色成分およびアルファ成分ごとのビット数の配列public final int getMapSize()
IndexColorModel 内の色成分とアルファ成分の配列の大きさを返します。
public final int getTransparentPixel()
IndexColorModel 内の透明ピクセルのインデックスを返します。 ただし、アルファ値 0 のピクセルがない場合は -1 を返します。 透明ピクセルがインデックスによってコンストラクタに明示的に指定されている場合、そのインデックスが優先されます。 それ以外の場合は、完全に透明な任意のピクセルのインデックスが返されることがあります。
IndexColorModel のオブジェクトの透明ピクセルのインデックス、または透明ピクセルがない場合は -1public final void getReds(byte[] r)
getMapSize で指定された配列の初期エントリだけが書き込まれます。
r - 赤の色成分の配列要素のコピー先として指定される配列public final void getGreens(byte[] g)
getMapSize で指定された配列の初期エントリだけが書き込まれます。
g - 緑の色成分の配列要素のコピー先として指定される配列public final void getBlues(byte[] b)
getMapSize で指定された配列の初期エントリだけが書き込まれます。
b - 青の色成分の配列要素のコピー先として指定される配列public final void getAlphas(byte[] a)
getMapSize で指定された配列の初期エントリだけが書き込まれます。
a - アルファ成分の配列要素のコピー先として指定される配列public final void getRGBs(int[] rgb)
getMapSize で指定された配列の初期エントリだけが書き込まれます。
rgb - この色成分およびアルファ成分配列から変換した ARGB 値のコピー先として指定される配列public final int getRed(int pixel)
ColorModel 内の getRedpixel - 指定されたピクセル
public final int getGreen(int pixel)
ColorModel 内の getGreenpixel - 指定されたピクセル
public final int getBlue(int pixel)
ColorModel 内の getBluepixel - 指定されたピクセル
public final int getAlpha(int pixel)
ColorModel 内の getAlphapixel - 指定されたピクセル
public final int getRGB(int pixel)
ColorModel 内の getRGBpixel - 指定されたピクセル
ColorModel.getRGBdefault()
public Object getDataElements(int rgb,
Object pixel)
WritableRaster オブジェクトの setDataElements メソッドに渡されます。ピクセル変数が null の場合は、新しい配列が割り当てられます。pixel が null でない場合は、transferType 型のプリミティブ配列である必要があります。 そうでない場合は、ClassCastException がスローされます。pixel がこの ColorModel のピクセル値を格納できるほど大きくない場合は、ArrayIndexOutOfBoundsException がスローされます。ピクセル配列が返されます。
IndexColorModel はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていない transferType を使用した場合は例外をスローします。
ColorModel 内の getDataElementsrgb - デフォルト RGB カラーモデルの整数型ピクセル表現pixel - 指定されたピクセル
IndexColorModel の指定されたピクセルの配列表現
ClassCastException - pixel が transferType 型のプリミティブ配列でない場合
ArrayIndexOutOfBoundsException - pixel がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合
UnsupportedOperationException - transferType が無効な場合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 の指定されたピクセルについて、標準化されていない色成分とアルファ成分の配列を返します。ピクセル値は int として指定されます。components 配列が null の場合は、offset + getNumComponents() 要素を含む新しい配列が割り当てられます。その components 配列が返されますが、hasAlpha が true を返す場合のみ、アルファ成分が含まれます。色成分とアルファ成分は、offset から始まる components 配列に格納されます。 これは、配列がこのメソッドで割り当てられても変わりません。components 配列が null でなく、offset を起点にした場合に、色成分とアルファ成分のすべてを保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException がスローされます。
ColorModel 内の getComponentspixel - 指定されたピクセルcomponents - 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset - 色成分およびアルファ成分の格納を開始する、components 配列へのオフセット
ColorModel.hasAlpha(),
ColorModel.getNumComponents()
public int[] getComponents(Object pixel,
int[] components,
int offset)
ColorModel の指定されたピクセルについて、標準化されていない色成分とアルファ成分の配列を返します。ピクセル値は、オブジェクト参照として渡される transferType 型のデータ要素の配列によって指定されます。pixel が transferType 型のプリミティブ配列でない場合は、ClassCastException がスローされます。pixel がこの ColorModel のピクセル値を格納できるほど大きくない場合は、ArrayIndexOutOfBoundsException がスローされます。components 配列が null の場合は、offset + getNumComponents() 要素を含む新しい配列が割り当てられます。その components 配列が返されますが、hasAlpha が true を返す場合のみ、アルファ成分が含まれます。色成分とアルファ成分は、offset から始まる components 配列に格納されます。 これは、配列がこのメソッドで割り当てられても変わりません。components 配列が null でなく、offset を開始点とした場合に、色成分とアルファ成分のすべてを格納できるほど大きくない場合は、ArrayIndexOutOfBoundsException がスローされます。
IndexColorModel はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていない transferType を使用した場合は例外をスローします。
ColorModel 内の getComponentspixel - 指定されたピクセルcomponents - 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset - 指定されたピクセルの色成分およびアルファ成分の格納を開始する、components 配列へのインデックス
ArrayIndexOutOfBoundsException - pixel がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合、あるいは components 配列が null ではなく、offset を開始点にした場合に、すべての色成分およびアルファ成分を保持するに十分な大きさでない場合
ClassCastException - pixel が transferType 型のプリミティブ配列でない場合
UnsupportedOperationException - transferType がサポートされている転送型でない場合ColorModel.hasAlpha(),
ColorModel.getNumComponents()
public int getDataElement(int[] components,
int offset)
ColorModel の int として表現されるピクセル値を返します。components 配列が、offset を開始点にした場合に、すべての色成分およびアルファ成分を格納するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException がスローされます。ColorModel はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。 サブクラスがオーバーライドしない場合、サポートされていない transferType を使用した場合は例外をスローします。
ColorModel 内の getDataElementcomponents - 標準化されていない色成分およびアルファ成分の配列offset - 色成分およびアルファ成分の取得を開始する、components のインデックス
ColorModel 内の int ピクセル値
ArrayIndexOutOfBoundsException - components 配列の大きさが offset を起点にすべての色成分およびアルファ成分を保持するのに十分でない場合
UnsupportedOperationException - transferType が無効な場合
public Object getDataElements(int[] components,
int offset,
Object pixel)
ColorModel のピクセルのデータ要素配列表現を返します。この配列は、WritableRaster オブジェクトの setDataElements メソッドに渡すことができます。components 配列が、offset を開始点にした場合に、すべての色成分およびアルファ成分を格納するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException がスローされます。ピクセル変数が null の場合は、新しい配列が割り当てられます。pixel が null でない場合は、transferType 型のプリミティブ配列である必要があります。 そうでない場合は、ClassCastException がスローされます。ピクセルがこの ColorModel のピクセル値を格納するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException がスローされます。
IndexColorModel はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていない transferType を使用した場合は例外をスローします。
ColorModel 内の getDataElementscomponents - 標準化されていない色成分およびアルファ成分の配列offset - 色成分およびアルファ成分の取得を開始する、components のインデックスpixel - 色成分およびアルファ成分の配列を表す Object
Object
ClassCastException - pixel が transferType 型のプリミティブ配列でない場合
ArrayIndexOutOfBoundsException - pixel がこの ColorModel のピクセル値を保持するのに十分な大きさでない場合、あるいは components 配列が、offset を開始点にした場合、すべての色成分およびアルファ成分を保持するのに十分な大きさでない場合
UnsupportedOperationException - transferType がサポートされている転送型でない場合WritableRaster.setDataElements(int, int, java.lang.Object),
SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)
public WritableRaster createCompatibleWritableRaster(int w,
int h)
ColorModel と互換性のあるデータレイアウト (SampleModel) を持つ、指定された幅と高さの WritableRaster を生成します。このメソッドはピクセルごとのビットが 16 以下のカラーモデルの場合に限り機能します。
IndexColorModel はサブクラス化できるため、ピクセルごとのビット数が 16 より大きい場合をサポートするすべてのサブクラスでは、このメソッドをオーバーライドする必要があります。
ColorModel 内の createCompatibleWritableRasterw - 新しい WritableRaster に適用される幅h - 新しい WritableRaster に適用される高さ
WritableRaster オブジェクト
UnsupportedOperationException - ピクセルのビット数が 16 より大きい場合WritableRaster,
SampleModelpublic boolean isCompatibleRaster(Raster raster)
raster がこの ColorModel と互換性がある場合には true を返し、そうでない場合には false を返します。
ColorModel 内の isCompatibleRasterraster - 互換性を判定する Raster オブジェクト
raster がこの ColorModel と 互換性がある場合は true、そうでない場合は false
public SampleModel createCompatibleSampleModel(int w,
int h)
ColorModel と互換性のあるデータレイアウトを持つ、指定された幅と高さの SampleModel を作成します。
ColorModel 内の createCompatibleSampleModelw - 新しい SampleModel に適用される幅h - 新しい SampleModel に適用される高さ
SampleModel オブジェクト
IllegalArgumentException - w または h がゼロ以下の場合SampleModelpublic boolean isCompatibleSampleModel(SampleModel sm)
SampleModel がこの ColorModel と互換性があるかどうかを調べます。sm が null の場合、このメソッドは false を返します。
ColorModel 内の isCompatibleSampleModelsm - 指定された SampleModel、または null
SampleModel がこの ColorModel と互換性がある場合は true、そうでない場合は falseSampleModel
public BufferedImage convertToIntDiscrete(Raster raster,
boolean forceARGB)
Raster のインデックスを展開して計算したピクセルデータ付きの Raster を持つ、TYPE_INT_ARGB または TYPE_INT_RGB の新しい BufferedImage を、この ColorModel の色成分とアルファ成分の配列を使って返します。ソース Raster の各インデックス値の下位 n ビット (前述のクラスの記述で指定) だけが、返されるイメージの色やアルファの値の計算に使用されます。forceARGB が true の場合、この ColorModel がアルファ成分配列または透明ピクセルのどちらを持つかにかかわらず、TYPE_INT_ARGB イメージが返されます。
raster - 指定したRasterforceARGB - true の場合、返されるBufferedImage は TYPE_INT_ARGB、そうでない場合は TYPE_INT_RGB
Raster で作成した BufferedImage
IllegalArgumentException - raster 引数がこの IndexColorModel と互換性がない場合public boolean isValid(int pixel)
pixel - 指定されたピクセル値
pixel が有効な場合は true、そうでない場合は falsepublic boolean isValid()
pixel が有効な場合は true、そうでない場合は falsepublic BigInteger getValidPixels()
BigInteger を返します。BigInteger 値がそのインデックスに設定されている場合、ビットは有効、BigInteger がそのインデックスに設定されていない場合は無効です。BigInteger のなかで照会できる有効値はゼロからマップサイズの範囲だけです。
BigIntegerpublic void finalize()
ColorModel が参照されなくなったときに、関連したシステムリソースを破棄します。
ColorModel 内の finalizepublic String toString()
ColorModel オブジェクトの内容を表す String を返します。
ColorModel 内の toStringColorModel オブジェクトの内容を表す String
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。