- 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カラー・モデル形式の赤、緑、青の色成分、および任意のアルファ成分からなります。
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 具象メソッド 非推奨のメソッド 修飾子と型 メソッド 説明 BufferedImageconvertToIntDiscrete(Raster raster, boolean forceARGB)ソースRasterのインデックスを展開して計算したピクセル・データ付きのRasterを持つ、TYPE_INT_ARGBまたはTYPE_INT_RGBの新しいBufferedImageを、このColorModelの色成分とアルファ成分の配列を使って返します。SampleModelcreateCompatibleSampleModel(int w, int h)このColorModelと互換性のあるデータ・レイアウトを持つ、指定された幅と高さのSampleModelを作成します。WritableRastercreateCompatibleWritableRaster(int w, int h)このColorModelと互換性のあるデータ・レイアウト(SampleModel)を持つ、指定された幅と高さのWritableRasterを作成します。booleanequals(Object obj)指定されたObjectがIndexColorModelのインスタンスであるかどうかをテストし、それがこのIndexColorModelと等しいかどうかを判定します。voidfinalize()非推奨。finalizeメソッドは推奨されていません。intgetAlpha(int pixel)指定されたピクセルのアルファ成分を、0 - 255の範囲でスケーリングして返します。voidgetAlphas(byte[] a)アルファの透明成分の配列を指定された配列にコピーします。intgetBlue(int pixel)指定されたピクセルの青の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。voidgetBlues(byte[] b)青の色成分の配列を指定された配列にコピーします。int[]getComponents(int pixel, int[] components, int offset)このColorModelの指定されたピクセルについて、標準化されていない色成分とアルファ成分の配列を返します。int[]getComponents(Object pixel, int[] components, int offset)このColorModelの指定されたピクセルについて、標準化されていない色成分とアルファ成分の配列を返します。int[]getComponentSize()色成分やアルファ成分について1成分あたりのビット数の配列を返します。intgetDataElement(int[] components, int offset)指定された、標準化されていない色成分とアルファ成分の配列について、このColorModelのintとして表現されるピクセル値を返します。ObjectgetDataElements(int[] components, int offset, Object pixel)標準化されていない色成分およびアルファ成分の配列を指定して、このColorModelのピクセルのデータ要素配列表現を返します。ObjectgetDataElements(int rgb, Object pixel)デフォルトRGBカラー・モデルの整数型ピクセル表現を指定して、このColorModelのピクセルのデータ要素配列表現を返します。intgetGreen(int pixel)指定されたピクセルの緑の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。voidgetGreens(byte[] g)緑の色成分の配列を指定された配列にコピーします。intgetMapSize()このIndexColorModel内の色成分とアルファ成分の配列の大きさを返します。intgetRed(int pixel)指定されたピクセルの赤の色成分を、デフォルトのRGB ColorSpace、つまりsRGBの0 - 255の範囲でスケーリングして返します。voidgetReds(byte[] r)赤の色成分の配列を指定された配列にコピーします。intgetRGB(int pixel)ピクセルの色成分とアルファ成分を、デフォルトのRGBカラー・モデル形式で返します。voidgetRGBs(int[] rgb)各インデックスのデータを色成分とアルファ成分の配列からデフォルトのRGB ColorModel形式のintに変換し、結果として得られる32ビットARGB値を指定された配列にコピーします。intgetTransparency()透明度を返します。intgetTransparentPixel()このIndexColorModel内の透明ピクセルのインデックスを返します。ただし、アルファ値0のピクセルがない場合は -1を返します。BigIntegergetValidPixels()カラー・マップの有効/無効ピクセルを示すBigIntegerを返します。inthashCode()IndexColorModelのハッシュ・コードを返します。booleanisCompatibleRaster(Raster raster)rasterがこのColorModelと互換性がある場合はtrue、このColorModelと互換性がない場合はfalseを返します。booleanisCompatibleSampleModel(SampleModel sm)指定されたSampleModelがこのColorModelと互換性があるかどうかを調べます。booleanisValid()すべてのピクセルが有効かどうかを返します。booleanisValid(int pixel)ピクセルが有効かどうかを返します。StringtoString()この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- 指定されたRasterforceARGB-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)
-
-