目次 | 前の項目 | 次の項目 | Java 2D API |
抽象クラスの SampleModel では、基になっているデータの格納方法を知らなくてもイメージのサンプルを抽出できるメソッドが定義されています。このクラスは、関連する DataBuffer のイメージデータの高さと幅を追跡するためのフィールドと、そのバッファのバンド数とデータ種類を記述するためのフィールドを提供しています。SampleModel のメソッド群はピクセルの集合としてイメージデータを提供し、各ピクセルは多くのサンプルまたは成分で構成されています。java.awt.image パッケージでは、5 種類のサンプルモデルが提供されています。
- ComponentSampleModel -- DataBuffer の 1 つのバンクの独立したデータ配列要素群にサンプルデータが格納されているイメージからピクセルを抽出する
- BandedSampleModel -- 個別のデータ要素に各サンプルが格納されているイメージからピクセルを抽出する。 バンドは、連続したデータ要素に格納されている
- PixelInterleavedSampleModel -- 個別のデータ要素に各サンプルが格納されているイメージからピクセルを抽出する。 ピクセルは、連続したデータ要素に格納されている
- MultiPixelPackedSampleModel -- 1 つのデータ要素に 1 つのサンプルの複数のピクセルが格納されている単一バンド化されたイメージからピクセルを抽出する
- SinglePixelPackedSampleModel -- DataBuffer の最初のバンクにある 1 つのデータ配列要素に単一ピクセルのサンプルデータが格納されているイメージからサンプルを抽出する
データソースの種類により、SampleModel で表されるピクセルデータと特定のカラーモデルのカラーデータ表現との間には、直接的な相互関係がある場合とない場合があります。たとえば、写真イメージデータの場合、サンプルは RGB データを表す場合があります。医療用画像装置のイメージデータの場合は、温度や骨密度など、異なる種類のデータをサンプルが表している可能性があります。イメージデータにアクセスするためのメソッドには、3 つの種類があります。getPixel 系メソッドは、サンプルごとに 1 つのエントリがある配列としてピクセル全体を返します。getDataElement メソッドを使うと、DataBuffer に格納されている解釈されていない未処理のデータにアクセスできます。getSample メソッドは、特定のバンドのピクセル成分に対するアクセスを提供します。