モジュール java.desktop
パッケージ java.awt.image

クラスRaster

java.lang.Object
java.awt.image.Raster
直系の既知のサブクラス:
WritableRaster

public class Raster extends Object
ピクセルで構成される矩形配列を表現するクラスです。 Rasterは、サンプル値が格納されているDataBufferと、指定されたサンプル値をDataBufferから検出する方法が記述されているSampleModelをカプセル化します。

Rasterは、平面上の特定の矩形領域(必ずしも(0, 0)を含んでいなくてもよい)を占めるピクセルの値を定義します。 この矩形は、Rasterの境界の矩形と呼ばれ、getBoundsメソッドにより取得され、minX、minY、width、heightの値によって定義されます。 minXとminYの値は、Rasterの左上隅の座標を定義します。 境界の矩形外のピクセルを参照すると、例外がスローされたり、Rasterの関連DataBufferの意図しない要素が参照されることになります。 このような範囲外のアクセスは行わないようにしてください。

SampleModelは、RasterのサンプルがDataBufferのプリミティブ配列要素に格納される方法を記述します。 サンプルは、PixelInterleavedSampleModelやBandedSampleModelのようにデータ要素ごとに1つずつ格納することも、SinglePixelPackedSampleModelやMultiPixelPackedSampleModelのように複数の要素を1つにまとめて格納することもできます。 SampleModelは、サンプルが符号付き拡張形式かどうかも制御します。これにより、符号なしデータをbyte、short、intなどの、Javaの符号付きデータ型として格納できます。

Rasterは平面上のどこにでも存在できますが、SampleModelは(0, 0)から始まる簡易座標体系を利用します。 このため、Rasterは、Rasterの座標体系とSampleModelの座標体系の間でピクセル位置をマッピングできるようにする変換係数を持っています。 SampleModelの座標体系からRasterの座標体系への変換は、getSampleModelTranslateXメソッドとgetSampleModelTranslateYメソッドで取得できます。

RasterはほかのRasterとDataBufferを共有できますが、このためには、このようなRasterを明示的に構築するか、createChildメソッドとcreateTranslatedChildメソッドを使用します。 これらのメソッドによって構築されたRasterに対してgetParentメソッドを使用すると、構築元のRasterへの参照を取得できます。 createTranslatedChildやcreateChildの呼出しによって構築されたRasterでない場合、getParentはnullを返します。

createTranslatedChildメソッドは、現在のRasterのすべてのデータを共有する新しいRasterを返します。新しいRasterは、現在のRasterと同じ幅と高さの境界の矩形を占めますが、開始点が異なります。 たとえば、親のRasterが(10, 10)から(100, 100)までの領域を占める場合、変換後のRasterの領域の始点を(50, 50)に定義すると、親のピクセル(20, 20)と子のピクセル(60, 60)はこれら2つのRasterで共有されるDataBufferで同じ位置を占めます。 対応するSampleModel座標を取得する場合、最初のケースではピクセル座標に(-10, -10)が加算されるのに対し、2番目のケースでは(-50, -50)が加算されます。

親のsampleModelTranslateXとsampleModelTranslateYの値から、子のsampleModelTranslateXとsampleModelTranslateYの値を減算することで、Rasterの親子間の変換が可能です。

createChildメソッドを使うと、親の境界の矩形のサブセットのみを占め、同じ座標体系または変換後の座標体系を持つ新しいRasterや、親のバンドのサブセットを持つ新しいRasterを生成できます。

コンストラクタはすべて保護されています。 Rasterを生成する正しい方法は、このクラスで定義されている静的なcreateメソッドの1つを使うことです。 これらのメソッドを使うと、標準のインタリーブ化されたSampleModel、バンド化されたSampleModel、およびパックされたSampleModelを使うRasterのインスタンスが生成され、外部で生成されたSampleModelとDataBufferを結合して生成される場合と比べて効率的に処理できます。

関連項目:
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    protected DataBuffer
    イメージ・データを格納するDataBufferです。
    protected int
    このRasterの高さです。
    protected int
    このRasterの左上隅のピクセルのX座標です。
    protected int
    このRasterの左上隅のピクセルのY座標です。
    protected int
    Raster内のバンド数です。
    protected int
    1ピクセルあたりのDataBufferデータ要素の数です。
    protected Raster
    このRasterの親、またはnullです。
    protected SampleModel
    このRasterのピクセルがDataBufferに格納される方法を記述するSampleModelです。
    protected int
    RasterのSampleModelの座標空間からRasterの座標空間へのX変換です。
    protected int
    RasterのSampleModelの座標空間からRasterの座標空間へのY変換です。
    protected int
    このRasterの幅です。
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    Raster(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)
    指定されたSampleModelおよびDataBufferを持つRasterを構築します。
    protected
    Raster(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, Raster parent)
    指定されたSampleModel、DataBuffer、および親を使ってRasterを構築します。
    protected
    Raster(SampleModel sampleModel, Point origin)
    指定されたSampleModelを持つRasterを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    createBandedRaster(int dataType, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets, Point location)
    指定されたデータ型、幅、高さ、走査線ストライド、バンク・インデックス、バンド・オフセットを持つ、BandedSampleModelに基づいたRasterを生成します。
    createBandedRaster(int dataType, int w, int h, int bands, Point location)
    指定されたデータ型、幅、高さ、バンド数を持つ、BandedSampleModelに基づいたRasterを生成します。
    createBandedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets, Point location)
    指定されたDataBuffer、幅、高さ、走査線ストライド、バンク・インデックス、およびバンド・オフセットを持つ、BandedSampleModelに基づいたRasterを生成します。
    createChild(int parentX, int parentY, int width, int height, int childMinX, int childMinY, int[] bandList)
    このRasterのDataBufferのすべてまたは一部を共有する新しいRasterを返します。
    このRasterと同じSampleModelと初期化された新しいDataBufferを持ち、このRasterと同じサイズで互換性があるWritableRasterを生成します。
    指定されたサイズ、新しいSampleModel、および初期化された新しいDataBufferを持ち、互換性があるWritableRasterを生成します。
    createCompatibleWritableRaster(int x, int y, int w, int h)
    指定された位置(minX, minY)とサイズ(width, height)、新しいSampleModel、および初期化された新しいDataBufferを持ち、互換性があるWritableRasterを生成します。
    rectによって指定される位置(minX, minY)とサイズ(width, height)、新しいSampleModel、および初期化された新しいDataBufferを持ち、互換性があるWritableRasterを生成します。
    createInterleavedRaster(int dataType, int w, int h, int scanlineStride, int pixelStride, int[] bandOffsets, Point location)
    指定されたデータ型、幅、高さ、走査線ストライド、ピクセル・ストライド、およびバンド・オフセットを持つ、PixelInterleavedSampleModelに基づいたRasterを生成します。
    createInterleavedRaster(int dataType, int w, int h, int bands, Point location)
    指定されたデータ型、幅、高さ、およびバンド数を持つ、PixelInterleavedSampleModelに基づいたRasterを生成します。
    createInterleavedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int pixelStride, int[] bandOffsets, Point location)
    指定されたDataBuffer、幅、高さ、走査線ストライド、ピクセル・ストライド、およびバンド・オフセットを持つ、PixelInterleavedSampleModelに基づいたRasterを生成します。
    createPackedRaster(int dataType, int w, int h, int[] bandMasks, Point location)
    指定されたデータ型、幅、高さ、およびバンド・マスクを持つ、SinglePixelPackedSampleModelに基づいたRasterを生成します。
    createPackedRaster(int dataType, int w, int h, int bands, int bitsPerBand, Point location)
    指定されたデータ型、幅、高さ、バンド数、および1バンドあたりのビット数を持つ、パックされたSampleModelに基づいたRasterを生成します。
    createPackedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int[] bandMasks, Point location)
    指定されたDataBuffer、幅、高さ、走査線ストライド、およびバンド・マスクを持つ、SinglePixelPackedSampleModelに基づいたRasterを生成します。
    createPackedRaster(DataBuffer dataBuffer, int w, int h, int bitsPerPixel, Point location)
    指定されたDataBuffer、幅、高さ、および1ピクセルあたりのビット数を持つ、MultiPixelPackedSampleModelに基づいたRasterを生成します。
    static Raster
    指定されたSampleModelとDataBufferを持つRasterを生成します。
    createTranslatedChild(int childMinX, int childMinY)
    このRasterと同じサイズ、SampleModel、およびDataBufferを持ち、位置が異なるRasterを生成します。
    指定されたSampleModelとDataBufferを持つWritableRasterを生成します。
    指定されたSampleModelを持つWritableRasterを生成します。
    このRasterの境界のRectangleを返します。
    このRasterに関連したDataBufferを返します。
    getDataElements(int x, int y, int w, int h, Object outData)
    TransferType型のプリミティブ配列の、指定されたピクセル矩形のピクセル・データを返します。
    getDataElements(int x, int y, Object outData)
    transferType型のプリミティブ配列内の1つのピクセルのデータを返します。
    final int
    Rasterの高さをピクセル単位で返します。
    final int
    Rasterの有効な最小のX座標を返します。
    final int
    Rasterの有効な最小のY座標を返します。
    final int
    このRaster内のバンド数(1ピクセルあたりのサンプル数)を返します。
    final int
    getDataElementsメソッドおよびsetDataElementsメソッドを使って1ピクセル転送するのに必要なデータ要素の数を返します。
    このRasterの親Rasterがあればそれを返します。親がない場合は、nullを返します。
    double[]
    getPixel(int x, int y, double[] dArray)
    指定されたピクセルのサンプルをdouble配列として返します。
    float[]
    getPixel(int x, int y, float[] fArray)
    指定されたピクセルのサンプルをfloat配列として返します。
    int[]
    getPixel(int x, int y, int[] iArray)
    指定されたピクセルのサンプルをint配列として返します。
    double[]
    getPixels(int x, int y, int w, int h, double[] dArray)
    矩形のピクセルのサンプルすべてを、配列要素ごとに1つのサンプルが格納されているdouble配列として返します。
    float[]
    getPixels(int x, int y, int w, int h, float[] fArray)
    矩形のピクセルのサンプルすべてを、配列要素ごとに1つのサンプルが格納されているfloat配列として返します。
    int[]
    getPixels(int x, int y, int w, int h, int[] iArray)
    矩形のピクセルのサンプルすべてを、配列要素ごとに1つのサンプルが格納されているint配列として返します。
    int
    getSample(int x, int y, int b)
    (x, y)に位置するピクセルの指定されたバンド内のサンプルをintとして返します。
    double
    getSampleDouble(int x, int y, int b)
    (x, y)に位置するピクセルの指定されたバンド内のサンプルをdoubleとして返します。
    float
    getSampleFloat(int x, int y, int b)
    (x, y)に位置するピクセルの指定されたバンド内のサンプルをfloatとして返します。
    イメージ・データのレイアウトを記述するSampleModelを返します。
    final int
    SampleModelの座標体系からRasterの座標体系へのX変換を返します。
    final int
    SampleModelの座標体系からRasterの座標体系へのY変換を返します。
    double[]
    getSamples(int x, int y, int w, int h, int b, double[] dArray)
    double配列内の指定されたピクセル矩形の、指定されたバンドのサンプルを返します。配列要素ごとに1つのサンプルが返されます。
    float[]
    getSamples(int x, int y, int w, int h, int b, float[] fArray)
    float配列内の指定されたピクセル矩形の、指定されたバンドのサンプルを返します。配列要素ごとに1つのサンプルが返されます。
    int[]
    getSamples(int x, int y, int w, int h, int b, int[] iArray)
    int配列の指定されたピクセルの矩形の、指定されたバンドのサンプルを返します。配列要素ごとに1つのサンプルが返されます。
    final int
    getDataElementsメソッドおよびsetDataElementsメソッドを使ってピクセルを転送するのに使用されるTransferTypeを返します。
    final int
    Rasterの幅をピクセル単位で返します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • フィールド詳細

    • sampleModel

      protected SampleModel sampleModel
      このRasterのピクセルがDataBufferに格納される方法を記述するSampleModelです。
    • dataBuffer

      protected DataBuffer dataBuffer
      イメージ・データを格納するDataBufferです。
    • minX

      protected int minX
      このRasterの左上隅のピクセルのX座標です。
    • minY

      protected int minY
      このRasterの左上隅のピクセルのY座標です。
    • width

      protected int width
      このRasterの幅です。
    • height

      protected int height
      このRasterの高さです。
    • sampleModelTranslateX

      protected int sampleModelTranslateX
      RasterのSampleModelの座標空間からRasterの座標空間へのX変換です。
    • sampleModelTranslateY

      protected int sampleModelTranslateY
      RasterのSampleModelの座標空間からRasterの座標空間へのY変換です。
    • numBands

      protected int numBands
      Raster内のバンド数です。
    • numDataElements

      protected int numDataElements
      1ピクセルあたりのDataBufferデータ要素の数です。
    • parent

      protected Raster parent
      このRasterの親、またはnullです。
  • コンストラクタの詳細

    • Raster

      protected Raster(SampleModel sampleModel, Point origin)
      指定されたSampleModelを持つRasterを構築します。 Rasterは左上隅が原点で、サイズはSampleModelと同じです。 Rasterを記述するために十分な大きさのDataBufferが自動的に生成されます。
      パラメータ:
      sampleModel - レイアウトを指定するSampleModel
      origin - 原点を指定したPoint
      例外:
      RasterFormatException - origin.x+sampleModel.getWidth()またはorigin.y+sampleModel.getHeight()のいずれかの計算で整数型オーバーフローが発生した場合
      NullPointerException - sampleModelまたはoriginがnullである
    • Raster

      protected Raster(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)
      指定されたSampleModelおよびDataBufferを持つRasterを構築します。 Rasterは左上隅が原点で、サイズはSampleModelと同じです。 DataBufferは初期化されておらず、SampleModelに準拠している必要があります。
      パラメータ:
      sampleModel - レイアウトを指定するSampleModel
      dataBuffer - イメージ・データを格納するDataBuffer
      origin - 原点を指定するPoint
      例外:
      RasterFormatException - origin.x+sampleModel.getWidth()またはorigin.y+sampleModel.getHeight()のいずれかの計算で整数型オーバーフローが発生した場合
      NullPointerException - sampleModelまたはoriginがnullである
    • Raster

      protected Raster(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, Raster parent)
      指定されたSampleModel、DataBuffer、および親を使ってRasterを構築します。aRegionは新しいRasterの境界の矩形を指定します。 基底Rasterの座標系に変換されるとき、aRegionは基底Rasterによって包含されている必要があります。 基底RasterはRasterの上位オブジェクトであり、親を持ちません。sampleModelTranslateは新しいRasterのsampleModelTranslateX値およびsampleModelTranslateY値を指定します。 このコンストラクタは、通常、他のコンストラクタまたはcreateメソッドによって呼び出されます。直接には使用しないようにしてください。
      パラメータ:
      sampleModel - レイアウトを指定するSampleModel
      dataBuffer - イメージ・データを格納するDataBuffer
      aRegion - イメージ領域を指定するRectangle
      sampleModelTranslate - SampleModelからRaster座標への変換を指定するPoint
      parent - このラスターの親(存在する場合)
      例外:
      NullPointerException - sampleModeldataBufferaRegionsampleModelTranslateのいずれかがnullの場合
      RasterFormatException - aRegionの幅または高さがゼロ以下の場合、あるいはaRegion.x+aRegion.widthaRegion.y+aRegion.heightのいずれかの計算で整数型オーバーフローが発生した場合
  • メソッドの詳細

    • createInterleavedRaster

      public static WritableRaster createInterleavedRaster(int dataType, int w, int h, int bands, Point location)
      指定されたデータ型、幅、高さ、およびバンド数を持つ、PixelInterleavedSampleModelに基づいたRasterを生成します。

      Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。 dataTypeパラメータには、DataBufferクラス定義で列挙される値の1つを指定します。

      インタリーブ化されたDataBuffer.TYPE_INT Rasterはサポートされていません。 DataBuffer.TYPE_INT型の1バンドのRasterを生成するには、Raster.createPackedRaster()を使用します。

      現在サポートされているdataTypeは、TYPE_BYTEとTYPE_USHORTだけです。

      パラメータ:
      dataType - サンプル格納用のデータ形式
      w - イメージ・データの幅(ピクセル単位)
      h - イメージ・データの高さ(ピクセル単位)
      bands - バンド数
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたデータ型、幅、高さ、バンド数を持つWritableRasterオブジェクト
      例外:
      IllegalArgumentException - dataTypeがサポートされているデータ型でない場合
      IllegalArgumentException - bandsが1未満の場合
      IllegalArgumentException - whの両方が0以下の場合
      IllegalArgumentException - whの積がInteger.MAX_VALUEより大きい場合
      RasterFormatException - location.x + wまたはlocation.y + hのいずれかを計算すると、整数オーバーフローが発生
    • createInterleavedRaster

      public static WritableRaster createInterleavedRaster(int dataType, int w, int h, int scanlineStride, int pixelStride, int[] bandOffsets, Point location)
      指定されたデータ型、幅、高さ、走査線ストライド、ピクセル・ストライド、およびバンド・オフセットを持つ、PixelInterleavedSampleModelに基づいたRasterを生成します。 バンド数は、bandOffsets.lengthから推定されます。

      Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。 dataTypeパラメータには、DataBufferクラス定義で列挙される値の1つを指定します。

      インタリーブ化されたDataBuffer.TYPE_INT Rasterはサポートされていません。 DataBuffer.TYPE_INT型の1バンドのRasterを生成するには、Raster.createPackedRaster()を使用します。

      現在サポートされているdataTypeは、TYPE_BYTEとTYPE_USHORTだけです。

      パラメータ:
      dataType - サンプル格納用のデータ形式
      w - イメージ・データの幅(ピクセル単位)
      h - イメージ・データの高さ(ピクセル単位)
      scanlineStride - イメージ・データの走査線ストライド
      pixelStride - イメージ・データのピクセル・ストライド
      bandOffsets - すべてのバンドのオフセット
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたデータ型、幅、高さ、走査線ストライド、ピクセル・ストライド、およびバンド・オフセットを持つWritableRasterオブジェクト
      例外:
      IllegalArgumentException - dataTypeがサポートされているデータ型DataBuffer.TYPE_BYTEまたはDataBuffer.TYPE_USHORTのどちらでもない場合。
      IllegalArgumentException - whの両方が0以下の場合
      IllegalArgumentException - whの積がInteger.MAX_VALUEより大きい場合
      RasterFormatException - location.x + wまたはlocation.y + hのいずれかを計算すると、整数オーバーフローが発生
      IllegalArgumentException - scanlineStrideが0より小さい場合
      IllegalArgumentException - pixelStrideが0より小さい場合
      NullPointerException - bandOffsetsがnullの場合
    • createBandedRaster

      public static WritableRaster createBandedRaster(int dataType, int w, int h, int bands, Point location)
      指定されたデータ型、幅、高さ、バンド数を持つ、BandedSampleModelに基づいたRasterを生成します。

      Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。 dataTypeパラメータには、DataBufferクラス定義で列挙される値の1つを指定します。

      現在サポートされているdataTypeは、TYPE_BYTE、TYPE_USHORT、およびTYPE_INTだけです。

      パラメータ:
      dataType - サンプル格納用のデータ形式
      w - イメージ・データの幅(ピクセル単位)
      h - イメージ・データの高さ(ピクセル単位)
      bands - バンド数
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたデータ型、幅、高さ、バンド数を持つWritableRasterオブジェクト
      例外:
      IllegalArgumentException - dataTypeがサポートされているデータ型DataBuffer.TYPE_BYTEDataBuffer.TYPE_USHORTDataBuffer.TYPE_INTのいずれでもない場合
      IllegalArgumentException - whの両方が0以下の場合
      IllegalArgumentException - whの積がInteger.MAX_VALUEより大きい場合
      IllegalArgumentException - location.x + wまたはlocation.y + hのいずれかを計算すると、整数オーバーフローが発生
      ArrayIndexOutOfBoundsException - bandsが1より小さい場合
    • createBandedRaster

      public static WritableRaster createBandedRaster(int dataType, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets, Point location)
      指定されたデータ型、幅、高さ、走査線ストライド、バンク・インデックス、バンド・オフセットを持つ、BandedSampleModelに基づいたRasterを生成します。 バンド数はbankIndices.lengthとbandOffsets.lengthから推定されます。これら2つの長さは同じである必要があります。

      Rasterの左上隅はlocation引数によって指定されます。 dataTypeパラメータには、DataBufferクラス定義で列挙される値の1つを指定します。

      現在サポートされているdataTypeは、TYPE_BYTE、TYPE_USHORT、およびTYPE_INTだけです。

      パラメータ:
      dataType - サンプル格納用のデータ形式
      w - イメージ・データの幅(ピクセル単位)
      h - イメージ・データの高さ(ピクセル単位)
      scanlineStride - イメージ・データの走査線ストライド
      bankIndices - 各バンドのバンク・インデックス
      bandOffsets - すべてのバンドのオフセット
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたデータ型、幅、高さ、走査線ストライド、バンク・インデックス、およびバンド・オフセットを持つWritableRasterオブジェクト
      例外:
      IllegalArgumentException - dataTypeがサポートされているデータ型DataBuffer.TYPE_BYTEDataBuffer.TYPE_USHORTDataBuffer.TYPE_INTのいずれでもない場合
      IllegalArgumentException - whの両方が0以下の場合
      IllegalArgumentException - whの積がInteger.MAX_VALUEより大きい場合
      IllegalArgumentException - location.x + wまたはlocation.y + hのいずれかを計算すると、整数オーバーフローが発生
      IllegalArgumentException - scanlineStrideが0より小さい場合
      ArrayIndexOutOfBoundsException - bankIndicesnullの場合
      NullPointerException - bandOffsetsnullの場合
    • createPackedRaster

      public static WritableRaster createPackedRaster(int dataType, int w, int h, int[] bandMasks, Point location)
      指定されたデータ型、幅、高さ、およびバンド・マスクを持つ、SinglePixelPackedSampleModelに基づいたRasterを生成します。 バンド数はbandMasks.lengthから推定されます。

      Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。 dataTypeパラメータには、DataBufferクラス定義で列挙される値の1つを指定します。

      現在サポートされているdataTypeは、TYPE_BYTE、TYPE_USHORT、およびTYPE_INTだけです。

      パラメータ:
      dataType - サンプル格納用のデータ形式
      w - イメージ・データの幅(ピクセル単位)
      h - イメージ・データの高さ(ピクセル単位)
      bandMasks - 各バンドのエントリを格納する配列
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたデータ型、幅、高さ、およびバンド・マスクを持つWritableRasterオブジェクト
      例外:
      RasterFormatException - wまたはhがゼロ以下の場合、あるいはlocation.x+wlocation.y+hのいずれかの計算で整数型オーバーフローが発生した場合
      IllegalArgumentException - dataTypeがサポートされているデータ型DataBuffer.TYPE_BYTEDataBuffer.TYPE_USHORTDataBuffer.TYPE_INTのいずれでもない場合
    • createPackedRaster

      public static WritableRaster createPackedRaster(int dataType, int w, int h, int bands, int bitsPerBand, Point location)
      指定されたデータ型、幅、高さ、バンド数、および1バンドあたりのビット数を持つ、パックされたSampleModelに基づいたRasterを生成します。 バンド数が1の場合、SampleModelはMultiPixelPackedSampleModelになります。

      バンド数が複数の場合、SampleModelは各バンドがbitsPerBandビットを持つSinglePixelPackedSampleModelになります。 どちらの場合も、対応するSampleModelが要求するdataTypeとbitsPerBandに関する要件を満たさなければいけません。

      Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。 dataTypeパラメータには、DataBufferクラス定義で列挙される値の1つを指定します。

      現在サポートされているdataTypeは、TYPE_BYTE、TYPE_USHORT、およびTYPE_INTだけです。

      パラメータ:
      dataType - サンプル格納用のデータ形式
      w - イメージ・データの幅(ピクセル単位)
      h - イメージ・データの高さ(ピクセル単位)
      bands - バンド数
      bitsPerBand - バンドごとのビット数
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたデータ型、幅、高さ、バンド数、およびバンドごとのビット数を持つWritableRasterオブジェクト
      例外:
      RasterFormatException - wまたはhがゼロ以下の場合、あるいはlocation.x+wlocation.y+hのいずれかの計算で整数型オーバーフローが発生した場合
      IllegalArgumentException - bitsPerBandbandsの積が、dataTypeが保持するビット数より大きい場合
      IllegalArgumentException - bitsPerBandまたはbandsが0以下である場合
      IllegalArgumentException - dataTypeがサポートされているデータ型DataBuffer.TYPE_BYTEDataBuffer.TYPE_USHORTDataBuffer.TYPE_INTのいずれでもない場合
    • createInterleavedRaster

      public static WritableRaster createInterleavedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int pixelStride, int[] bandOffsets, Point location)
      指定されたDataBuffer、幅、高さ、走査線ストライド、ピクセル・ストライド、およびバンド・オフセットを持つ、PixelInterleavedSampleModelに基づいたRasterを生成します。 バンド数は、bandOffsets.lengthから推定されます。 Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。

      インタリーブ化されたDataBuffer.TYPE_INT Rasterはサポートされていません。 DataBuffer.TYPE_INT型の1バンドのRasterを生成するには、Raster.createPackedRaster()を使用します。

      パラメータ:
      dataBuffer - イメージ・データを格納するDataBuffer
      w - イメージ・データの幅(ピクセル単位)
      h - イメージ・データの高さ(ピクセル単位)
      scanlineStride - イメージ・データの走査線ストライド
      pixelStride - イメージ・データのピクセル・ストライド
      bandOffsets - すべてのバンドのオフセット
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたDataBuffer、幅、高さ、走査線ストライド、ピクセル・ストライド、およびバンド・オフセットを持つWritableRasterオブジェクト。
      例外:
      IllegalArgumentException - dataTypeがサポートされているデータ型DataBuffer.TYPE_BYTEDataBuffer.TYPE_USHORTのいずれでもない場合
      NullPointerException - dataBufferがnullである場合
      IllegalArgumentException - dataTypeがサポートされているデータ型DataBuffer.TYPE_BYTEまたはDataBuffer.TYPE_USHORTのどちらでもない場合。
      RasterFormatException - dataBufferが複数のバンクを持つ場合。
      IllegalArgumentException - whの両方が0以下の場合
      IllegalArgumentException - whの積がInteger.MAX_VALUEより大きい場合
      RasterFormatException - location.x + wまたはlocation.y + hのいずれかを計算すると、整数オーバーフローが発生
      IllegalArgumentException - scanlineStrideが0より小さい場合
      IllegalArgumentException - pixelStrideが0より小さい場合
      NullPointerException - bandOffsetsがnullの場合
    • createBandedRaster

      public static WritableRaster createBandedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets, Point location)
      指定されたDataBuffer、幅、高さ、走査線ストライド、バンク・インデックス、およびバンド・オフセットを持つ、BandedSampleModelに基づいたRasterを生成します。 バンド数はbankIndices.lengthとbandOffsets.lengthから推定されます。これら2つの長さは同じである必要があります。 Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。
      パラメータ:
      dataBuffer - イメージ・データを格納するDataBuffer
      w - イメージ・データの幅(ピクセル単位)
      h - イメージ・データの高さ(ピクセル単位)
      scanlineStride - イメージ・データの走査線ストライド
      bankIndices - 各バンドのバンク・インデックス
      bandOffsets - すべてのバンドのオフセット
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたDataBuffer、幅、高さ、走査線ストライド、バンク・インデックス、およびバンド・オフセットを持つWritableRasterオブジェクト。
      例外:
      NullPointerException - dataBufferがNULLの場合、またはbankIndicesがNULLの場合、またはbandOffsetsがNULLの場合
      IllegalArgumentException - dataTypeがサポートされているデータ型(DataBuffer.TYPE_BYTEDataBuffer.TYPE_USHORTまたはDataBuffer.TYPE_INT)のいずれかでない場合、またはwまたはhが0以下の場合、またはwおよびhの製品がInteger.MAX_VALUEより大きい場合、またはscanlineStrideが0未満の場合、またはbankIndicesの長さがbandOffsetsの長さと等しくない場合
      RasterFormatException - location.x + wまたはlocation.y + hのいずれかを計算すると、整数オーバーフローが発生
    • createPackedRaster

      public static WritableRaster createPackedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int[] bandMasks, Point location)
      指定されたDataBuffer、幅、高さ、走査線ストライド、およびバンド・マスクを持つ、SinglePixelPackedSampleModelに基づいたRasterを生成します。 バンド数はbandMasks.lengthから推定されます。 Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。
      パラメータ:
      dataBuffer - イメージ・データを格納するDataBuffer
      w - イメージ・データの幅(ピクセル単位)
      h - イメージ・データの高さ(ピクセル単位)
      scanlineStride - イメージ・データの走査線ストライド
      bandMasks - 各バンドのエントリを格納する配列
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたDataBuffer、幅、高さ、走査線ストライド、およびバンド・マスクを持つWritableRasterオブジェクト。
      例外:
      RasterFormatException - wまたはhがゼロ以下の場合、あるいはlocation.x+wlocation.y+hのいずれかの計算で整数型オーバーフローが発生した場合
      IllegalArgumentException - dataBufferが、サポートされているデータ型(DataBuffer.TYPE_BYTEDataBuffer.TYPE_USHORTまたはDataBuffer.TYPE_INT)のいずれでもない場合
      RasterFormatException - dataBufferが複数のバンクを持つ場合。
      NullPointerException - dataBufferがnullである場合
    • createPackedRaster

      public static WritableRaster createPackedRaster(DataBuffer dataBuffer, int w, int h, int bitsPerPixel, Point location)
      指定されたDataBuffer、幅、高さ、および1ピクセルあたりのビット数を持つ、MultiPixelPackedSampleModelに基づいたRasterを生成します。 Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。
      パラメータ:
      dataBuffer - イメージ・データを格納するDataBuffer
      w - イメージ・データの幅(ピクセル単位)
      h - イメージ・データの高さ(ピクセル単位)
      bitsPerPixel - 各ピクセルのビット数
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたDataBuffer、幅、高さ、およびピクセルあたりのビット数を持つWritableRasterオブジェクト。
      例外:
      RasterFormatException - wまたはhがゼロ以下の場合、あるいはlocation.x+wlocation.y+hのいずれかの計算で整数型オーバーフローが発生した場合
      IllegalArgumentException - dataTypeがサポートされているデータ型DataBuffer.TYPE_BYTEDataBuffer.TYPE_USHORTDataBuffer.TYPE_INTのいずれでもない場合
      RasterFormatException - dataBufferが複数のバンクを持つ場合。
      NullPointerException - dataBufferがnullである場合
    • createRaster

      public static Raster createRaster(SampleModel sm, DataBuffer db, Point location)
      指定されたSampleModelとDataBufferを持つRasterを生成します。 Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。
      パラメータ:
      sm - 指定されたSampleModel
      db - 指定されたDataBuffer
      location - Rasterの左上隅のX座標
      戻り値:
      指定されたSampleModelDataBuffer、および位置を持つRaster
      例外:
      RasterFormatException - location.x+sm.getWidth()またはlocation.y+sm.getHeight()のいずれかの計算で整数型オーバーフローが発生した場合
      RasterFormatException - dbが複数のバンクを持ち、smがPixelInterleavedSampleModel、SinglePixelPackedSampleModel、またはMultiPixelPackedSampleModelの場合。
      NullPointerException - SampleModelまたはDataBufferがnullの場合
    • createWritableRaster

      public static WritableRaster createWritableRaster(SampleModel sm, Point location)
      指定されたSampleModelを持つWritableRasterを生成します。 Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。
      パラメータ:
      sm - 指定されたSampleModel
      location - WritableRasterの左上隅のX座標
      戻り値:
      指定されたSampleModel、および位置を持つWritableRaster
      例外:
      RasterFormatException - location.x+sm.getWidth()またはlocation.y+sm.getHeight()のいずれかの計算で整数型オーバーフローが発生した場合
    • createWritableRaster

      public static WritableRaster createWritableRaster(SampleModel sm, DataBuffer db, Point location)
      指定されたSampleModelとDataBufferを持つWritableRasterを生成します。 Rasterの左上隅はlocation引数によって指定されます。 locationがnullの場合は、(0, 0)が使用されます。
      パラメータ:
      sm - 指定されたSampleModel
      db - 指定されたDataBuffer
      location - WritableRasterの左上隅のX座標
      戻り値:
      指定されたSampleModelDataBuffer、および位置を持つWritableRaster
      例外:
      RasterFormatException - location.x+sm.getWidth()またはlocation.y+sm.getHeight()のいずれかの計算で整数型オーバーフローが発生した場合
      RasterFormatException - dbが複数のバンクを持ち、smがPixelInterleavedSampleModel、SinglePixelPackedSampleModel、またはMultiPixelPackedSampleModelの場合。
      NullPointerException - SampleModelまたはDataBufferがnullの場合
    • getParent

      public Raster getParent()
      このRasterの親Rasterがあればそれを返します。親がない場合は、nullを返します。
      戻り値:
      親Rasterまたはnull
    • getSampleModelTranslateX

      public final int getSampleModelTranslateX()
      SampleModelの座標体系からRasterの座標体系へのX変換を返します。 ピクセルのX座標をRasterの座標体系からSampleModelの座標体系に変換するには、この値を減算する必要があります。
      戻り値:
      RasterのSampleModelの座標空間からRasterの座標空間へのX変換です。
    • getSampleModelTranslateY

      public final int getSampleModelTranslateY()
      SampleModelの座標体系からRasterの座標体系へのY変換を返します。 ピクセルのY座標をRasterの座標体系からSampleModelの座標体系に変換するには、この値を減算する必要があります。
      戻り値:
      RasterのSampleModelの座標空間からRasterの座標空間へのY変換です。
    • createCompatibleWritableRaster

      public WritableRaster createCompatibleWritableRaster()
      このRasterと同じSampleModelと初期化された新しいDataBufferを持ち、このRasterと同じサイズで互換性があるWritableRasterを生成します。
      戻り値:
      同じサンプル・モデルと新しいデータ・バッファを持ち、互換性があるWritableRaster
    • createCompatibleWritableRaster

      public WritableRaster createCompatibleWritableRaster(int w, int h)
      指定されたサイズ、新しいSampleModel、および初期化された新しいDataBufferを持ち、互換性があるWritableRasterを生成します。
      パラメータ:
      w - 新しいWritableRasterの指定された幅
      h - 新しいWritableRasterの指定された幅
      戻り値:
      指定されたサイズ、新しいサンプル・モデル、およびデータ・バッファを持ち、互換性があるWritableRaster
      例外:
      RasterFormatException - 幅または高さが0以下である場合。
    • createCompatibleWritableRaster

      public WritableRaster createCompatibleWritableRaster(Rectangle rect)
      rectによって指定される位置(minX, minY)とサイズ(width, height)、新しいSampleModel、および初期化された新しいDataBufferを持ち、互換性があるWritableRasterを生成します。
      パラメータ:
      rect - WritableRasterのサイズと位置を示すRectangle
      戻り値:
      指定されたサイズ、位置、新しいサンプル・モデル、およびデータ・バッファを持ち、互換性があるWritableRaster
      例外:
      RasterFormatException - rectの幅または高さがゼロ以下の場合、あるいはrect.x+rect.widthrect.y+rect.heightのいずれかの計算で整数型オーバーフローが発生した場合
      NullPointerException - rectがnullである場合
    • createCompatibleWritableRaster

      public WritableRaster createCompatibleWritableRaster(int x, int y, int w, int h)
      指定された位置(minX, minY)とサイズ(width, height)、新しいSampleModel、および初期化された新しいDataBufferを持ち、互換性があるWritableRasterを生成します。
      パラメータ:
      x - WritableRasterの左上隅のX座標。
      y - WritableRasterの左上隅のY座標。
      w - 新しいWritableRasterの指定された幅
      h - 新しいWritableRasterの指定された幅
      戻り値:
      指定されたサイズ、位置、新しいサンプル・モデル、およびデータ・バッファを持ち、互換性があるWritableRaster
      例外:
      RasterFormatException - wまたはhがゼロ以下の場合、あるいはx+wy+hのいずれかの計算で整数型オーバーフローが発生した場合
    • createTranslatedChild

      public Raster createTranslatedChild(int childMinX, int childMinY)
      このRasterと同じサイズ、SampleModel、およびDataBufferを持ち、位置が異なるRasterを生成します。 新しいRasterは、getParent()メソッドによりアクセス可能な、現在のRasterへの参照を持ちます。
      パラメータ:
      childMinX - 新しいRasterの左上隅のX座標
      childMinY - 新しいRasterの左上隅のY座標
      戻り値:
      このRasterと同じサイズ、SampleModel、およびデータ・バッファを持ち、指定された位置を持つ新しいRaster
      例外:
      RasterFormatException - childMinX+this.getWidth()またはchildMinY+this.getHeight()のいずれかの計算で整数型オーバーフローが発生した場合
    • createChild

      public Raster createChild(int parentX, int parentY, int width, int height, int childMinX, int childMinY, int[] bandList)
      このRasterのDataBufferのすべてまたは一部を共有する新しいRasterを返します。 新しいRasterは、getParent()メソッドによりアクセス可能な、現在のRasterへの参照を持ちます。

      parentX、parentY、width、heightの各パラメータによってこのRasterの座標空間に形成されるRectangleが、共有されるピクセル領域を示します。 このRectangleが現在のRasterの境界内にない場合は、エラーがスローされます。

      新しいRasterはさらに、同じ平面上で現在のRasterが使用する座標体系とは異なる座標体系に変換できます。 childMinXパラメータとchildMinYパラメータにより、返されたRasterの左上隅のピクセルの新しい座標(x, y)が指定されます。新しいRaster内の座標(childMinX, childMinY)は、現在のRaster内の座標(parentX, parentY)と同じピクセルにマップされます。

      bandListパラメータを使用して、新しいRasterが現在のRasterのバンドのサブセットだけを、場合によっては順序を変更して、格納するように定義できます。 bandListがnullの場合は、現在のRasterのすべてのバンドが現在と同じ順序で格納されます。

      現在のRasterの部分領域を保持するが、座標体系とバンドは現在のRasterと共有する新しいRasterを生成するには、childMinXをparentXと同じ値に、childMinYをparentYと同じ値に、bandListをnullにそれぞれ指定して、このメソッドを呼び出します。

      パラメータ:
      parentX - このRasterの座標で左上隅のX座標
      parentY - このRasterの座標で左上隅のY座標
      width - (parentX, parentY)から始まる領域の幅
      height - (parentX, parentY)から始まる領域の高さ。
      childMinX - 返されるRasterの左上隅のX座標
      childMinY - 返されるRasterの左上隅のY座標
      bandList - バンド・インデックスの配列。すべてのバンドを使用する場合はnull
      戻り値:
      新しいRaster
      例外:
      RasterFormatException - 指定された部分領域がラスター境界の外側にある場合。
      RasterFormatException - widthまたはheightが0以下の場合、またはparentX+widthparentY+heightchildMinX+widthchildMinY+heightのいずれかの計算で整数型オーバーフローが発生した場合
    • getBounds

      public Rectangle getBounds()
      このRasterの境界のRectangleを返します。 この関数は、getMinX/MinY/Width/Heightと同じ情報を返します。
      戻り値:
      このRasterのバウンディング・ボックス。
    • getMinX

      public final int getMinX()
      Rasterの有効な最小のX座標を返します。
      戻り値:
      このRasterの最小x座標。
    • getMinY

      public final int getMinY()
      Rasterの有効な最小のY座標を返します。
      戻り値:
      このRasterの最小y座標。
    • getWidth

      public final int getWidth()
      Rasterの幅をピクセル単位で返します。
      戻り値:
      このRasterの幅。
    • getHeight

      public final int getHeight()
      Rasterの高さをピクセル単位で返します。
      戻り値:
      このRasterの高さ。
    • getNumBands

      public final int getNumBands()
      このRaster内のバンド数(1ピクセルあたりのサンプル数)を返します。
      戻り値:
      このRasterのバンド数。
    • getNumDataElements

      public final int getNumDataElements()
      getDataElementsメソッドおよびsetDataElementsメソッドを使って1ピクセル転送するのに必要なデータ要素の数を返します。 これらのメソッドでは、ピクセルがパックされた形式で転送される場合と展開された形式で転送される場合があり、これは、基本となるSampleModelの実装によって決まります。 これらのメソッドを使うと、ピクセルはgetTransferType()によって指定されるプリミティブ型のgetNumDataElements()要素の配列として転送されます。 TransferTypeは、DataBufferのストレージ・データ型と同じでも、異なっていてもかまいません。
      戻り値:
      データ要素数。
    • getTransferType

      public final int getTransferType()
      getDataElementsメソッドおよびsetDataElementsメソッドを使ってピクセルを転送するのに使用されるTransferTypeを返します。 これらのメソッドでは、ピクセルがパックされた形式で転送される場合と展開された形式で転送される場合があり、これは、基本となるSampleModelの実装によって決まります。 これらのメソッドを使うと、ピクセルはgetTransferType()によって指定されるプリミティブ型のgetNumDataElements()要素の配列として転送されます。 TransferTypeは、DataBufferのストレージ・データ型と同じでも、異なっていてもかまいません。 TransferTypeはDataBufferで定義されている型のどれかになります。
      戻り値:
      この転送型。
    • getDataBuffer

      public DataBuffer getDataBuffer()
      このRasterに関連したDataBufferを返します。
      戻り値:
      このRasterDataBuffer
    • getSampleModel

      public SampleModel getSampleModel()
      イメージ・データのレイアウトを記述するSampleModelを返します。
      戻り値:
      このRasterSampleModel
    • getDataElements

      public Object getDataElements(int x, int y, Object outData)
      transferType型のプリミティブ配列内の1つのピクセルのデータを返します。 Java 2D(tm) APIによってサポートされているイメージ・データの場合は、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、DataBuffer.TYPE_INT、DataBuffer.TYPE_SHORT、DataBuffer.TYPE_FLOAT、またはDataBuffer.TYPE_DOUBLEのいずれかになります。 データはパックされた形式で返されることもあり、その場合、データ転送の効率が上がります。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。 入力オブジェクトがnullでなく、TransferTypeの配列以外のものを参照する場合、ClassCastExceptionがスローされます。
      パラメータ:
      x - ピクセル位置のX座標
      y - ピクセル位置のY座標
      outData - getTransferType()によって定義された型とgetNumDataElements()によって定義された長さを持つ配列へのオブジェクト参照。 nullの場合は、適切な型とサイズの配列が割り当てられる
      戻り値:
      要求されたピクセル・データを持ち、getTransferType()によって型が定義された配列へのオブジェクト参照
      例外:
      ArrayIndexOutOfBoundsException - 座標が境界内に存在しない場合、またはoutDataが小さすぎて出力を保持できない場合。
      関連項目:
    • getDataElements

      public Object getDataElements(int x, int y, int w, int h, Object outData)
      TransferType型のプリミティブ配列の、指定されたピクセル矩形のピクセル・データを返します。 Java 2D APIによってサポートされているイメージ・データの場合は、DataBuffer.TYPE_BYTE、DataBuffer.TYPE_USHORT、DataBuffer.TYPE_INT、DataBuffer.TYPE_SHORT、DataBuffer.TYPE_FLOAT、またはDataBuffer.TYPE_DOUBLEのいずれかになります。 データはパックされた形式で返されることもあり、その場合、データ転送の効率が上がります。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。 入力オブジェクトがnullでなく、TransferTypeの配列以外のものを参照する場合、ClassCastExceptionがスローされます。
      パラメータ:
      x - 左上のピクセル位置のX座標
      y - 左上のピクセル位置のY座標
      w - ピクセル矩形の幅
      h - ピクセル矩形の高さ
      outData - getTransferType()によって定義された型とw*h*getNumDataElements()によって定義された長さを持つ配列へのオブジェクト参照。 nullの場合は、適切な型とサイズの配列が割り当てられる
      戻り値:
      要求されたピクセル・データを持ち、getTransferType()によって型が定義された配列へのオブジェクト参照
      例外:
      ArrayIndexOutOfBoundsException - 座標が境界内に存在しない場合、またはoutDataが小さすぎて出力を保持できない場合。
      関連項目:
    • getPixel

      public int[] getPixel(int x, int y, int[] iArray)
      指定されたピクセルのサンプルをint配列として返します。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - ピクセル位置のX座標
      y - ピクセル位置のY座標
      iArray - 必要に応じて事前に割り当てられたint配列
      戻り値:
      指定されたピクセルのサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標が境界内に存在しない場合、またはiArrayが小さすぎて出力を保持できない場合。
    • getPixel

      public float[] getPixel(int x, int y, float[] fArray)
      指定されたピクセルのサンプルをfloat配列として返します。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - ピクセル位置のX座標
      y - ピクセル位置のY座標
      fArray - 必要に応じて事前に割り当てられたfloat配列
      戻り値:
      指定されたピクセルのサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標が境界内に存在しない場合、またはfArrayが小さすぎて出力を保持できない場合。
    • getPixel

      public double[] getPixel(int x, int y, double[] dArray)
      指定されたピクセルのサンプルをdouble配列として返します。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - ピクセル位置のX座標
      y - ピクセル位置のY座標
      dArray - 必要に応じて事前に割り当てられたdouble配列
      戻り値:
      指定されたピクセルのサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標が境界内に存在しない場合、またはdArrayが小さすぎて出力を保持できない場合。
    • getPixels

      public int[] getPixels(int x, int y, int w, int h, int[] iArray)
      矩形のピクセルのサンプルすべてを、配列要素ごとに1つのサンプルが格納されているint配列として返します。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - 左上のピクセル位置のX座標
      y - 左上のピクセル位置のY座標
      w - ピクセル矩形の幅
      h - ピクセル矩形の高さ
      iArray - オプションで事前に割り当てられたint配列
      戻り値:
      指定されたピクセル矩形のサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標が境界内に存在しない場合、またはiArrayが小さすぎて出力を保持できない場合。
    • getPixels

      public float[] getPixels(int x, int y, int w, int h, float[] fArray)
      矩形のピクセルのサンプルすべてを、配列要素ごとに1つのサンプルが格納されているfloat配列として返します。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - ピクセル位置のX座標
      y - ピクセル位置のY座標
      w - ピクセル矩形の幅
      h - ピクセル矩形の高さ
      fArray - オプションで事前に割り当てられたfloat配列
      戻り値:
      指定されたピクセル矩形のサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標が境界内に存在しない場合、またはfArrayが小さすぎて出力を保持できない場合。
    • getPixels

      public double[] getPixels(int x, int y, int w, int h, double[] dArray)
      矩形のピクセルのサンプルすべてを、配列要素ごとに1つのサンプルが格納されているdouble配列として返します。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - 左上のピクセル位置のX座標
      y - 左上のピクセル位置のY座標
      w - ピクセル矩形の幅
      h - ピクセル矩形の高さ
      dArray - オプションで事前に割り当てられたdouble配列
      戻り値:
      指定されたピクセル矩形のサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標が境界内に存在しない場合、またはdArrayが小さすぎて出力を保持できない場合。
    • getSample

      public int getSample(int x, int y, int b)
      (x, y)に位置するピクセルの指定されたバンド内のサンプルをintとして返します。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - ピクセル位置のX座標
      y - ピクセル位置のY座標
      b - 返されるバンド
      戻り値:
      指定された座標にあるピクセルの指定されたバンド内のサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標またはバンド・インデックスが境界内にない場合。
    • getSampleFloat

      public float getSampleFloat(int x, int y, int b)
      (x, y)に位置するピクセルの指定されたバンド内のサンプルをfloatとして返します。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - ピクセル位置のX座標
      y - ピクセル位置のY座標
      b - 返されるバンド
      戻り値:
      指定された座標にあるピクセルの指定されたバンド内のサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標またはバンド・インデックスが境界内にない場合。
    • getSampleDouble

      public double getSampleDouble(int x, int y, int b)
      (x, y)に位置するピクセルの指定されたバンド内のサンプルをdoubleとして返します。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - ピクセル位置のX座標
      y - ピクセル位置のY座標
      b - 返されるバンド
      戻り値:
      指定された座標にあるピクセルの指定されたバンド内のサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標またはバンド・インデックスが境界内にない場合。
    • getSamples

      public int[] getSamples(int x, int y, int w, int h, int b, int[] iArray)
      int配列の指定されたピクセルの矩形の、指定されたバンドのサンプルを返します。配列要素ごとに1つのサンプルが返されます。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - 左上のピクセル位置のX座標
      y - 左上のピクセル位置のY座標
      w - ピクセル矩形の幅
      h - ピクセル矩形の高さ
      b - 返されるバンド
      iArray - オプションで事前に割り当てられたint配列
      戻り値:
      指定された矩形ピクセルの指定されたバンドのサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標またはバンド・インデックスが境界内に存在しない場合、またはiArrayが小さすぎて出力を保持できない場合。
    • getSamples

      public float[] getSamples(int x, int y, int w, int h, int b, float[] fArray)
      float配列内の指定されたピクセル矩形の、指定されたバンドのサンプルを返します。配列要素ごとに1つのサンプルが返されます。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - 左上のピクセル位置のX座標
      y - 左上のピクセル位置のY座標
      w - ピクセル矩形の幅
      h - ピクセル矩形の高さ
      b - 返されるバンド
      fArray - オプションで事前に割り当てられたfloat配列
      戻り値:
      指定された矩形ピクセルの指定されたバンドのサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標またはバンド・インデックスが境界内に存在しない場合、またはfArrayが小さすぎて出力を保持できない場合。
    • getSamples

      public double[] getSamples(int x, int y, int w, int h, int b, double[] dArray)
      double配列内の指定されたピクセル矩形の、指定されたバンドのサンプルを返します。配列要素ごとに1つのサンプルが返されます。 座標が境界内にない場合は、ArrayIndexOutOfBoundsExceptionがスローされます。 ただし、明示的な境界チェックは必ずしも実行されません。
      パラメータ:
      x - 左上のピクセル位置のX座標
      y - 左上のピクセル位置のY座標
      w - ピクセル矩形の幅
      h - ピクセル矩形の高さ
      b - 返されるバンド
      dArray - オプションで事前に割り当てられたdouble配列
      戻り値:
      指定された矩形ピクセルの指定されたバンドのサンプル
      例外:
      ArrayIndexOutOfBoundsException - 座標またはバンド・インデックスが境界内に存在しない場合、またはdArrayが小さすぎて出力を保持できない場合。