|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.awt.image.ColorModel java.awt.image.PackedColorModel
public abstract class PackedColorModel
PackedColorModel
クラスは、色とアルファの情報を個別のサンプルとして表し、1 つのピクセルのすべてのサンプルを int、short、または byte 型の数で 1 つにパックするピクセル値を扱う abstract ColorModel
クラスです。このクラスは、任意の ColorSpace
と一緒に使うことができます。ピクセル値に含まれるカラーサンプル数は、ColorSpace
の色成分の数と一致する必要があります。アルファサンプルを 1 つ含むことができます。transferType
の型のプリミティブ配列のピクセル表現を使うメソッドでは、配列長は常に 1 です。サポートされる転送タイプは、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、および DataBuffer.TYPE_INT です。カラーサンプルとアルファサンプルは、ビットマスクで示されるビット単位で配列の単一の要素に格納されます。各ビットマスクは連続している必要があり、複数のマスクをオーバーラップさせることはできません。同じマスクが、ほかのメソッドによって使用される単一の int ピクセル表現に適用されます。次に、マスクと、カラーサンプルとアルファサンプルの対応関係を示します。
getNumComponents
- 1 までのインデックスで識別される
getNumColorComponents
は、カラーサンプルを表す
ColorSpace
が指定する。通常はカラースペースタイプの名前を反映する。 たとえば、TYPE_RGB の場合、インデックス 0 は赤、インデックス 1 は緑、インデックス 2 は青に対応する
表示または処理のためにピクセル値から色成分やアルファ成分に変換するときには、サンプルと成分は 1 対 1 の対応になります。PackedColorModel
は一般に、パックされたサンプルを定義するのにマスクを使うイメージデータとともに使用します。たとえば、PackedColorModel
は SinglePixelPackedSampleModel
と組み合わせて使用して BufferedImage
を作成できます。通常、SampleModel
と ColorModel
が使うマスクは同じものです。ただし、マスクが異なる場合のピクセルデータの色解釈は、ColorModel
のマスクに従って行われます。
このクラスで使うピクセル値は常に単一の int
として表現できるため、単一の int
によるピクセル表現がこのクラスのすべてのオブジェクトで有効です。このため、この表現を使うメソッドは、無効なピクセル値が原因で IllegalArgumentException
をスローすることはありません。
PackedColorModel
のサブクラスは X11 TrueColor に類似した DirectColorModel
です。
DirectColorModel
,
SinglePixelPackedSampleModel
,
BufferedImage
フィールドの概要 |
---|
クラス java.awt.image.ColorModel から継承されたフィールド |
---|
pixel_bits, transferType |
インタフェース java.awt.Transparency から継承されたフィールド |
---|
BITMASK, OPAQUE, TRANSLUCENT |
コンストラクタの概要 | |
---|---|
PackedColorModel(ColorSpace space,
int bits,
int[] colorMaskArray,
int alphaMask,
boolean isAlphaPremultiplied,
int trans,
int transferType)
カラーマスク配列から PackedColorModel を構築します。 |
|
PackedColorModel(ColorSpace space,
int bits,
int rmask,
int gmask,
int bmask,
int amask,
boolean isAlphaPremultiplied,
int trans,
int transferType)
指定したマスクから PackedColorModel を構築します。 |
メソッドの概要 | |
---|---|
SampleModel |
createCompatibleSampleModel(int w,
int h)
この ColorModel と互換性のあるデータレイアウトを持つ、指定された幅と高さの SampleModel を作成します。 |
boolean |
equals(Object obj)
指定された Object が PackedColorModel のインスタンスであり、この PackedColorModel と等しいかどうかを判定します。 |
WritableRaster |
getAlphaRaster(WritableRaster raster)
イメージのアルファチャネルを表現する WritableRaster を、入力された WritableRaster から抽出して返します。 |
int |
getMask(int index)
指定されたカラーサンプルやアルファサンプルが、ピクセル表現内のどのビット群に格納されているかを示すマスクを返します。 |
int[] |
getMasks()
ピクセル表現のどのビット群にカラーサンプルとアルファサンプルが格納されているかを示すマスク配列を返します。 |
boolean |
isCompatibleSampleModel(SampleModel sm)
SampleModel がこの ColorModel と互換性があるかどうかを調べます。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, getClass, notify, notifyAll, wait, wait, wait |
コンストラクタの詳細 |
---|
public PackedColorModel(ColorSpace space, int bits, int[] colorMaskArray, int alphaMask, boolean isAlphaPremultiplied, int trans, int transferType)
PackedColorModel
を構築します。 この配列は、各カラーサンプル、およびアルファマスクが、int
ピクセル表現のどのビット群に格納されているかを指定します。色成分は、指定された ColorSpace
に入ります。colorMaskArray
の長さは、ColorSpace
内の成分数になります。各マスク内のすべてのビットは連続していて、int
ピクセル表現の指定桁数の最下位ビットに収まる必要があります。alphaMask
が 0 の場合は、アルファはありません。アルファがある場合は、boolean
型の isAlphaPremultiplied
がピクセル値のカラーサンプルとアルファサンプルの解釈方法を指定します。boolean
型が true
の場合、カラーサンプルはアルファサンプルで乗算されたものと見なされます。透明度 trans
は、このカラーモデルで表現できるアルファ値を表します。転送タイプは、ピクセル値を表現するために使うプリミティブ配列の型です。
space
- 指定された ColorSpace
bits
- ピクセル値のビット数colorMaskArray
- ピクセルのビット値を表すマスクを
指定する配列。ピクセル値は
色成分を表すalphaMask
- ピクセルのビット値を表すマスクを
指定する。ピクセル値は
アルファ成分を表すisAlphaPremultiplied
- カラーサンプルがアルファサンプルによって
あらかじめ乗算されている場合は true
、そうでない場合は false
trans
- このカラーモデルで表すことができるアルファ値を
指定するtransferType
- ピクセル値を表すのに使用される配列の型
IllegalArgumentException
- bits
が 1 より小さいか、
32 より大きい場合public PackedColorModel(ColorSpace space, int bits, int rmask, int gmask, int bmask, int amask, boolean isAlphaPremultiplied, int trans, int transferType)
PackedColorModel
を構築します。 マスクは、アルファ、赤、緑、青の各カラーサンプルが、int
ピクセル表現のどのビット群に格納されているかを指定します。色成分は、ColorSpace.TYPE_RGB タイプの指定された ColorSpace
に入ります。各マスク内のすべてのビットは連続していて、int
ピクセル表現の指定桁数の最下位ビットに収まる必要があります。amask
が 0 の場合は、アルファはありません。アルファがある場合は、boolean
型の isAlphaPremultiplied
がピクセル値のカラーサンプルとアルファサンプルの解釈方法を指定します。boolean
型が true
の場合、カラーサンプルはアルファサンプルで乗算されたものと見なされます。透明度 trans
は、このカラーモデルで表現できるアルファ値を表します。転送タイプは、ピクセル値を表現するために使うプリミティブ配列の型です。
space
- 指定された ColorSpace
bits
- ピクセル値のビット数rmask
- ピクセルのビット値を表すマスクを
指定する。ピクセル値は
赤の色成分を表すgmask
- ピクセルのビット値を表すマスクを
指定する。ピクセル値は
緑の色成分を表すbmask
- ピクセルのビット値を表すマスクを
指定する。ピクセル値は
青の色成分を表すamask
- ピクセルのビット値を表すマスクを
指定する。ピクセル値は
アルファ成分を表すisAlphaPremultiplied
- カラーサンプルがアルファサンプルによって
あらかじめ乗算されている場合は true
、そうでない場合は false
trans
- このカラーモデルで表すことができるアルファ値を
指定するtransferType
- ピクセル値を表すのに使用される配列の型
IllegalArgumentException
- space
が
TYPE_RGB 空間でない場合ColorSpace
メソッドの詳細 |
---|
public final int getMask(int index)
index
はカラースペースのカラーサンプル名の配置に対応します。このため、CMYK ColorSpace の index
0 は Cyan に、index
1 は Magenta に対応します。アルファがある場合、アルファ index
は次のようになります。
alphaIndex = numComponents() - 1;
index
- 指定されたカラーサンプルまたはアルファサンプル
int
ピクセル表現のどのビットが
index
が指定するカラーサンプルまたはアルファサンプルを保持しているかを
示すマスク
ArrayIndexOutOfBoundsException
- index
が
この PackedColorModel
の成分数マイナス 1 より
大きいか、index
が 0 より
小さい場合public final int[] getMasks()
int
ピクセル表現のどのビット群に、
カラーサンプルまたは
アルファサンプルが格納されているかを示すマスク配列public SampleModel createCompatibleSampleModel(int w, int h)
ColorModel
と互換性のあるデータレイアウトを持つ、指定された幅と高さの SampleModel
を作成します。
ColorModel
内の createCompatibleSampleModel
w
- 記述されたイメージデータの領域の幅
(ピクセル数)h
- 記述されたイメージデータの領域の高さ
(ピクセル数)
SampleModel
IllegalArgumentException
- w
または
h
が 0 以下である場合SampleModel
public boolean isCompatibleSampleModel(SampleModel sm)
SampleModel
がこの ColorModel
と互換性があるかどうかを調べます。sm
が null
の場合、このメソッドは false
を返します。
ColorModel
内の isCompatibleSampleModel
sm
- 指定された SampleModel
、
または null
SampleModel
がこの ColorModel
と、
互換性がある場合は true
、
そうでない場合は false
SampleModel
public WritableRaster getAlphaRaster(WritableRaster raster)
WritableRaster
を、入力された WritableRaster
から抽出して返します。このメソッドは、この ColorModel
に関連した WritableRaster
オブジェクトにアルファバンドがあれば、そのアルファバンドをイメージデータの最終バンドとして格納していると見なします。この ColorModel
に関連した空間アルファチャネルがほかにない場合は、null
を返します。このメソッドは新しい WritableRaster
を作成しますが、データ配列は共有することになります。
ColorModel
内の getAlphaRaster
raster
- イメージが格納されている WritableRaster
raster
に格納されたイメージの
アルファチャンネルを表す WritableRaster
public boolean equals(Object obj)
Object
が PackedColorModel
のインスタンスであり、この PackedColorModel
と等しいかどうかを判定します。
ColorModel
内の equals
obj
- 等しいかどうかが判定される Object
Object
が PackedColorModel
のインスタンスであり、
この PackedColorModel
と等しい場合は
true
、そうでない場合は false
Object.hashCode()
,
Hashtable
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。