- java.lang.Object
-
- java.awt.image.ColorModel
-
- java.awt.image.IndexColorModel
-
- すべての実装されたインタフェース:
Transparency
public class IndexColorModel extends ColorModel
IndexColorModel
クラスは、デフォルトのsRGBカラー・スペースの固定カラー・マップに対するインデックスである、単一のサンプルからなるピクセル値を扱うColorModel
クラスです。 カラー・マップは、赤、緑、青の色成分、および各インデックスに対応するオプションのアルファ成分を指定します。 成分はすべて、カラー・マップ内の8ビットの符号なし整数値として表現されます。 いくつかのコンストラクタでは、呼出し側が、BigInteger
オブジェクトに設定されたビットによって、どのカラー・マップ・エントリが有効か、およびどのカラー・マップ・エントリが使用不可能な色を表しているかを示すことによって、カラー・マップの「穴」を指定できます。 このカラー・モデルはX11のPseudoColorと同じものです。コンストラクタによっては、カラー・マップの各ピクセルのアルファ成分を指定する手段を提供しているものもありますが、そうした手段を提供しないコンストラクタや、場合によってはカラー・マップ・データにアルファ値が格納されているかどうかを示すフラグを提供するコンストラクタもあります。 コンストラクタにアルファが指定されない場合は、各エントリに不透明なアルファ成分(アルファ= 1.0)が指定されているとみなされます。 オプションとして透明ピクセルの値を指定して、そのピクセル値に指定または想定されたアルファ成分がどれであっても、完全に透明にするピクセルであることを示すことができます。
IndexColorModel
オブジェクトのカラー・マップの色成分はアルファ成分によってあらかじめ乗算されることはありません。IndexColorModel
オブジェクトがTransparency.OPAQUE
の透明度の値を持つ場合、hasAlpha
メソッドおよびgetNumComponents
メソッド(ともにColorModel
から継承されます)はそれぞれfalseおよび3を返します。 ほかの透明度の値の場合、hasAlpha
メソッドはtrueを返し、getNumComponents
メソッドは4を返します。transferType
型のプリミティブ配列のピクセル表現を使うメソッドでは、配列長は常に1です。 サポートされる転送型は、DataBuffer.TYPE_BYTE
およびDataBuffer.TYPE_USHORT
です。 このクラスで使うピクセル値は常に単一のintとして表現できるので、単一のintピクセル表現はこのクラスのすべてのオブジェクトで有効です。 このため、この表現を使うメソッドは、無効なピクセル値が原因でIllegalArgumentException
をスローすることはありません。このクラスのメソッドの多くはfinalです。 その理由は、下位のネイティブなグラフィックスのコードがこのクラスの設計と操作に関しての前提となり、これらの前提がこのクラスでfinalになっているメソッドの実装に反映されているからです。 他の理由でこのクラスをサブクラス化することはできますが、それらのメソッドの動作をオーバーライドしたり、変更することはできません。
- 関連項目:
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
を構築します。ただし、各intは、デフォルトのRGBカラー・モデル形式の赤、緑、青の色成分、およびオプションのアルファ成分からなります。IndexColorModel(int bits, int size, int[] cmap, int start, int transferType, BigInteger validBits)
int
の配列からIndexColorModel
を構築します。ただし、各int
は、デフォルトのRGBカラー・モデル形式の赤、緑、青の色成分、および任意のアルファ成分からなります。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 非推奨のメソッド 修飾子と型 メソッド 説明 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
を作成します。boolean
equals(Object obj)
指定されたObject
がIndexColorModel
のインスタンスであるかどうかをテストし、それがこのIndexColorModel
と等しいかどうかを判定します。void
finalize()
非推奨。finalize
メソッドは推奨されていません。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
内の透明ピクセルのインデックスを返します。ただし、アルファ値0のピクセルがない場合は -1を返します。BigInteger
getValidPixels()
カラー・マップの有効/無効ピクセルを示すBigInteger
を返します。int
hashCode()
IndexColorModelのハッシュ・コードを返します。boolean
isCompatibleRaster(Raster raster)
raster
がこのColorModel
と互換性がある場合はtrue
、このColorModel
と互換性がない場合はfalse
を返します。boolean
isCompatibleSampleModel(SampleModel sm)
指定されたSampleModel
がこのColorModel
と互換性があるかどうかを調べます。boolean
isValid()
すべてのピクセルが有効かどうかを返します。boolean
isValid(int pixel)
ピクセルが有効かどうかを返します。String
toString()
このColorModel
オブジェクトの内容を表すString
を返します。-
クラス java.awt.image.ColorModelで宣言されたメソッド
coerceData, getAlpha, getAlphaRaster, getBlue, getColorSpace, getComponentSize, getDataElement, getDataElements, getGreen, getNormalizedComponents, getNormalizedComponents, getNumColorComponents, getNumComponents, getPixelSize, getRed, getRGB, getRGBdefault, getTransferType, getUnnormalizedComponents, hasAlpha, isAlphaPremultiplied
-
-
-
-
コンストラクタの詳細
-
IndexColorModel
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より小さい場合
-
IndexColorModel
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より小さい場合
-
IndexColorModel
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より小さい場合
-
IndexColorModel
public IndexColorModel(int bits, int size, byte[] cmap, int start, boolean hasalpha)
インタリーブ化形式で格納されている赤、緑、青の色成分、およびオプションのアルファ成分からなる1つの配列から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より小さい場合
-
IndexColorModel
public IndexColorModel(int bits, int size, byte[] cmap, int start, boolean hasalpha, int trans)
インタリーブ化形式で格納されている赤、緑、青の色成分、およびオプションのアルファ成分からなる1つの配列から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より小さい場合
-
IndexColorModel
public IndexColorModel(int bits, int size, int[] cmap, int start, boolean hasalpha, int trans, int transferType)
intの配列から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
のいずれでもない場合
-
IndexColorModel
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
のいずれでもない場合- 導入されたバージョン:
- 1.3
-
-
メソッドの詳細
-
getTransparency
public int getTransparency()
透明度を返します。 OPAQUE、BITMASK、TRANSLUCENTのいずれかを返します。- 定義:
getTransparency
、インタフェースTransparency
- オーバーライド:
getTransparency
、クラスColorModel
- 戻り値:
- この
IndexColorModel
の透明度 - 関連項目:
Transparency.OPAQUE
,Transparency.BITMASK
,Transparency.TRANSLUCENT
-
getComponentSize
public int[] getComponentSize()
色成分やアルファ成分について1成分あたりのビット数の配列を返します。 配列には、赤、緑、青の色成分、およびあればアルファ成分の順序で、色成分が格納されます。- オーバーライド:
getComponentSize
、クラスColorModel
- 戻り値:
- この
IndexColorModel
の色成分およびアルファ成分ごとのビット数の配列
-
getMapSize
public final int getMapSize()
このIndexColorModel
内の色成分とアルファ成分の配列の大きさを返します。- 戻り値:
- 色成分およびアルファ成分の配列の大きさ
-
getTransparentPixel
public final int getTransparentPixel()
このIndexColorModel
内の透明ピクセルのインデックスを返します。ただし、アルファ値0のピクセルがない場合は -1を返します。 透明ピクセルがインデックスによってコンストラクタのいずれかに明示的に指定されている場合、そのインデックスが優先されます。それ以外の場合は、完全に透明な任意のピクセルのインデックスが返されることがあります。- 戻り値:
- この
IndexColorModel
のオブジェクトの透明ピクセルのインデックス、または透明ピクセルがない場合は -1
-
getReds
public final void getReds(byte[] r)
赤の色成分の配列を指定された配列にコピーします。getMapSize
で指定された配列の初期エントリだけが書き込まれます。- パラメータ:
r
- 赤の色成分の配列要素のコピー先として指定される配列
-
getGreens
public final void getGreens(byte[] g)
緑の色成分の配列を指定された配列にコピーします。getMapSize
で指定された配列の初期エントリだけが書き込まれます。- パラメータ:
g
- 緑の色成分の配列要素のコピー先として指定される配列
-
getBlues
public final void getBlues(byte[] b)
青の色成分の配列を指定された配列にコピーします。getMapSize
で指定された配列の初期エントリだけが書き込まれます。- パラメータ:
b
- 青の色成分の配列要素のコピー先として指定される配列
-
getAlphas
public final void getAlphas(byte[] a)
アルファの透明成分の配列を指定された配列にコピーします。getMapSize
で指定された配列の初期エントリだけが書き込まれます。- パラメータ:
a
- アルファ成分の配列要素のコピー先として指定される配列
-
getRGBs
public final void getRGBs(int[] rgb)
各インデックスのデータを色成分とアルファ成分の配列からデフォルトのRGB ColorModel形式のintに変換し、結果として得られる32ビットARGB値を指定された配列にコピーします。getMapSize
で指定された配列の初期エントリだけが書き込まれます。- パラメータ:
rgb
- この色成分およびアルファ成分配列から変換したARGB値のコピー先として指定される配列。
-
getRed
public final int getRed(int pixel)
指定されたピクセルの赤の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。 ピクセル値はintとして指定されます。 ピクセル値の下位nビット(前述のクラスの記述で指定)だけが戻り値の計算に使用されます。 戻り値は、あらかじめ乗算されていない値になります。- 定義:
getRed
、クラスColorModel
- パラメータ:
pixel
- 指定されたピクセル- 戻り値:
- 指定されたピクセルの赤色成分の値
-
getGreen
public final int getGreen(int pixel)
指定されたピクセルの緑の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。 ピクセル値はintとして指定されます。 ピクセル値の下位nビット(前述のクラスの記述で指定)だけが戻り値の計算に使用されます。 戻り値は、あらかじめ乗算されていない値になります。- 定義:
getGreen
、クラスColorModel
- パラメータ:
pixel
- 指定されたピクセル- 戻り値:
- 指定されたピクセルの緑色成分の値
-
getBlue
public final int getBlue(int pixel)
指定されたピクセルの青の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。 ピクセル値はintとして指定されます。 ピクセル値の下位nビット(前述のクラスの記述で指定)だけが戻り値の計算に使用されます。 戻り値は、あらかじめ乗算されていない値になります。- 定義:
getBlue
、クラスColorModel
- パラメータ:
pixel
- 指定されたピクセル- 戻り値:
- 指定されたピクセルの青色成分の値
-
getAlpha
public final int getAlpha(int pixel)
指定されたピクセルのアルファ成分を、0 - 255の範囲でスケーリングして返します。 ピクセル値はintとして指定されます。 ピクセル値の下位nビット(前述のクラスの記述で指定)だけが戻り値の計算に使用されます。- 定義:
getAlpha
、クラスColorModel
- パラメータ:
pixel
- 指定されたピクセル- 戻り値:
- 指定されたピクセルのアルファ成分の値
-
getRGB
public final int getRGB(int pixel)
ピクセルの色成分とアルファ成分を、デフォルトのRGBカラー・モデル形式で返します。 ピクセル値はintとして指定されます。 ピクセル値の下位nビット(前述のクラスの記述で指定)だけが戻り値の計算に使用されます。 戻り値は、あらかじめ乗算されていない形式になります。- オーバーライド:
getRGB
、クラスColorModel
- パラメータ:
pixel
- 指定されたピクセル- 戻り値:
- 指定されたピクセルの色成分およびアルファ成分
- 関連項目:
ColorModel.getRGBdefault()
-
getDataElements
public Object getDataElements(int rgb, Object pixel)
デフォルトRGBカラー・モデルの整数型ピクセル表現を指定して、このColorModelのピクセルのデータ要素配列表現を返します。 次に、この配列はWritableRaster
オブジェクトのsetDataElements
メソッドに渡すことができます。 ピクセル変数がnull
の場合は、新しい配列が割り当てられます。pixel
がnull
でない場合、transferType
型のプリミティブ配列でなければならず、そうでない場合はClassCastException
がスローされます。pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。 ピクセル配列が返されます。IndexColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。- オーバーライド:
getDataElements
、クラスColorModel
- パラメータ:
rgb
- デフォルト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)
-
getComponents
public int[] getComponents(int pixel, int[] components, int offset)
このColorModel
の指定されたピクセルについて、標準化されていない色成分とアルファ成分の配列を返します。 ピクセル値はintとして指定されます。components
配列がnull
の場合は、offset+getNumComponents()
要素を含む新しい配列が割り当てられます。 そのcomponents
配列が返されますが、hasAlpha
がtrueを返す場合のみ、アルファ成分が含まれます。 色成分とアルファ成分は、配列がこのメソッドで割り当てられても、offset
から始まるcomponents
配列に格納されます。components
配列がnull
でない場合に、offset
を起点に、すべての色成分およびアルファ成分を保持するのに十分な大きさでないときは、ArrayIndexOutOfBoundsException
がスローされます。- オーバーライド:
getComponents
、クラスColorModel
- パラメータ:
pixel
- 指定されたピクセルcomponents
- 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset
- 色成分およびアルファ成分の格納を開始する、components
配列へのオフセット- 戻り値:
- 指定されたオフセット以降に、指定されたピクセルの色成分およびアルファ成分が格納されている配列
- 関連項目:
ColorModel.hasAlpha()
,ColorModel.getNumComponents()
-
getComponents
public int[] getComponents(Object pixel, int[] components, int offset)
このColorModel
の指定されたピクセルについて、標準化されていない色成分とアルファ成分の配列を返します。 pixel値は、オブジェクト参照として渡されたtransferType
型のデータ要素からなる配列によって指定されます。pixel
がtransferType
型のプリミティブ配列でない場合、ClassCastException
がスローされます。pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。components
配列がnull
の場合は、offset+getNumComponents()
要素を含む新しい配列が割り当てられます。 そのcomponents
配列が返されますが、hasAlpha
がtrueを返す場合のみ、アルファ成分が含まれます。 色成分とアルファ成分は、配列がこのメソッドで割り当てられても、offset
から始まるcomponents
配列に格納されます。components
配列がnull
でない場合に、offset
を起点に、すべての色成分およびアルファ成分を保持するのに十分な大きさでないときにも、ArrayIndexOutOfBoundsException
がスローされます。IndexColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。- オーバーライド:
getComponents
、クラスColorModel
- パラメータ:
pixel
- 指定されたピクセルcomponents
- 指定されたピクセルの色成分およびアルファ成分を受け取る配列offset
- 指定されたピクセルの色成分およびアルファ成分の格納を開始する、components
配列へのインデックス- 戻り値:
- 指定されたオフセット以降に、指定されたピクセルの色成分およびアルファ成分が格納されている配列
- 例外:
ArrayIndexOutOfBoundsException
-pixel
がこのColorModel
のピクセル値を保持するのに十分な大きさでない場合、あるいはcomponents
配列がnull
ではなく、offset
を開始点にした場合に、すべての色成分およびアルファ成分を保持するに十分な大きさでない場合ClassCastException
-pixel
がtransferType
型のプリミティブ配列でない場合UnsupportedOperationException
-transferType
がサポートされている転送型でない場合- 関連項目:
ColorModel.hasAlpha()
,ColorModel.getNumComponents()
-
getDataElement
public int getDataElement(int[] components, int offset)
指定された、標準化されていない色成分とアルファ成分の配列について、このColorModel
のintとして表現されるピクセル値を返します。components
配列がoffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。ColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承しますが、サブクラスがその実装をオーバーライドせず、しかもサポートされていないtransferTypeを使用した場合、例外がスローされます。- オーバーライド:
getDataElement
、クラスColorModel
- パラメータ:
components
- 標準化されていない色成分およびアルファ成分の配列offset
- 色成分およびアルファ成分の取得を開始する、components
のインデックス- 戻り値:
- 指定された成分に対応する、この
ColorModel
内のint
ピクセル値。 - 例外:
ArrayIndexOutOfBoundsException
-components
配列がoffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合UnsupportedOperationException
-transferType
が無効である場合
-
getDataElements
public Object getDataElements(int[] components, int offset, Object pixel)
標準化されていない色成分およびアルファ成分の配列を指定して、このColorModel
のピクセルのデータ要素配列表現を返します。 次に、この配列はWritableRaster
オブジェクトのsetDataElements
メソッドに渡すことができます。components
配列がoffset
を起点にすべての色成分とアルファ成分を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。 ピクセル変数がnull
の場合は、新しい配列が割り当てられます。pixel
がnull
でない場合、transferType
型のプリミティブ配列でなければならず、そうでない場合はClassCastException
がスローされます。 pixelがこのColorModel
のピクセル値を保持するのに十分な大きさでない場合は、ArrayIndexOutOfBoundsException
がスローされます。IndexColorModel
はサブクラス化できるため、サブクラスはこのメソッドの実装を継承します。サブクラスがオーバーライドしない場合、サポートされていないtransferType
を使用した場合は例外をスローします。- オーバーライド:
getDataElements
、クラスColorModel
- パラメータ:
components
- 標準化されていない色成分およびアルファ成分の配列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)
-
createCompatibleWritableRaster
public WritableRaster createCompatibleWritableRaster(int w, int h)
このColorModel
と互換性のあるデータ・レイアウト(SampleModel
)を持つ、指定された幅と高さのWritableRaster
を作成します。 このメソッドはピクセルごとのビットが16以下のカラー・モデルの場合に限り機能します。IndexColorModel
はサブクラス化できるため、ピクセルごとのビット数が16より大きい場合をサポートするすべてのサブクラスでは、このメソッドをオーバーライドする必要があります。- オーバーライド:
createCompatibleWritableRaster
、クラスColorModel
- パラメータ:
w
- 新しいWritableRaster
に適用される幅h
- 新しいWritableRaster
に適用される高さ- 戻り値:
- 指定された幅と高さを持つ
WritableRaster
オブジェクト。 - 例外:
UnsupportedOperationException
- ピクセルのビット数が16より大きい場合- 関連項目:
WritableRaster
、SampleModel
-
isCompatibleRaster
public boolean isCompatibleRaster(Raster raster)
raster
がこのColorModel
と互換性がある場合はtrue
、このColorModel
と互換性がない場合はfalse
を返します。- オーバーライド:
isCompatibleRaster
、クラスColorModel
- パラメータ:
raster
- 互換性を判定するRaster
オブジェクト- 戻り値:
raster
がこのColorModel
と互換性がある場合はtrue
、それ以外の場合はfalse
。
-
createCompatibleSampleModel
public SampleModel createCompatibleSampleModel(int w, int h)
このColorModel
と互換性のあるデータ・レイアウトを持つ、指定された幅と高さのSampleModel
を作成します。- オーバーライド:
createCompatibleSampleModel
、クラスColorModel
- パラメータ:
w
- 新しいSampleModel
に適用される幅h
- 新しいSampleModel
に適用される高さ- 戻り値:
- 指定された幅と高さを持つ
SampleModel
オブジェクト。 - 例外:
IllegalArgumentException
-w
またはh
が0以下である場合- 関連項目:
SampleModel
-
isCompatibleSampleModel
public boolean isCompatibleSampleModel(SampleModel sm)
指定されたSampleModel
がこのColorModel
と互換性があるかどうかを調べます。sm
がnull
の場合、このメソッドはfalse
を返します。- オーバーライド:
isCompatibleSampleModel
、クラスColorModel
- パラメータ:
sm
- 指定されたSampleModel
、またはnull
- 戻り値:
- 指定された
SampleModel
がこのColorModel
と互換性がある場合はtrue
、それ以外の場合はfalse
。 - 関連項目:
SampleModel
-
convertToIntDiscrete
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
- 指定されたRaster
forceARGB
-true
の場合、返されるBufferedImage
はTYPE_INT_ARGB、そうでない場合はTYPE_INT_RGB- 戻り値:
- 指定された
Raster
で作成したBufferedImage
- 例外:
IllegalArgumentException
- raster引数がこのIndexColorModelと互換性がない場合
-
isValid
public boolean isValid(int pixel)
ピクセルが有効かどうかを返します。- パラメータ:
pixel
- 指定されたピクセル値- 戻り値:
pixel
が有効である場合はtrue
、それ以外の場合はfalse
。- 導入されたバージョン:
- 1.3
-
isValid
public boolean isValid()
すべてのピクセルが有効かどうかを返します。- 戻り値:
- すべてのpixelが有効な場合は
true
、そうでない場合はfalse
。 - 導入されたバージョン:
- 1.3
-
getValidPixels
public BigInteger getValidPixels()
カラー・マップの有効/無効ピクセルを示すBigInteger
を返します。BigInteger
値がそのインデックスに設定されている場合、ビットは有効、BigInteger
値がそのインデックスに設定されていない場合は無効です。BigInteger
のなかで照会できる有効値はゼロからマップ・サイズの範囲だけです。- 戻り値:
- 有効/無効ピクセルを示す
BigInteger
。 - 導入されたバージョン:
- 1.3
-
finalize
@Deprecated(since="9") public void finalize()
非推奨。finalize
メソッドは推奨されていません。 クリーンアップを実行するためにfinalize
をオーバーライドするサブクラスは、代替クリーンアップ・メカニズムを使用し、オーバーライドするfinalize
メソッドを削除するように変更する必要があります。finalize
メソッドをオーバーライドする場合、実装では、super.finalize()
がObject.finalize()
の説明に従って呼び出されることを明示的に確認する必要があります。 移行オプションの詳細については、Object.finalize()
の仕様を参照してください。このColorModel
が参照されなくなったときに、このColorModel
に関連付けられたシステム・リソースを破棄します。- オーバーライド:
finalize
、クラスColorModel
- 関連項目:
WeakReference
,PhantomReference
-
toString
public String toString()
このColorModel
オブジェクトの内容を表すString
を返します。- オーバーライド:
toString
、クラスColorModel
- 戻り値:
- この
ColorModel
オブジェクトの内容を表すString
。
-
equals
public boolean equals(Object obj)
指定されたObject
がIndexColorModel
のインスタンスであるかどうかをテストし、それがこのIndexColorModel
と等しいかどうかを判定します。- オーバーライド:
equals
、クラスColorModel
- パラメータ:
obj
- 等しいかどうかが判定されるObject
- 戻り値:
- 指定された
Object
がこのIndexColorModel
と等しい場合true
; それ以外の場合はfalse
。 - 関連項目:
Object.hashCode()
、HashMap
-
hashCode
public int hashCode()
IndexColorModelのハッシュ・コードを返します。- オーバーライド:
- クラス
ColorModel
のhashCode
- 戻り値:
- IndexColorModelのハッシュ・コード
- 関連項目:
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
-