Класс Raster

Прямые известные подклассы:
WritableRaster
public class Raster
extends Object

Класс, представляющий прямоугольный массив пикселей. Объект Raster encapsлирует DataBuffer, хранящий значения образцов, и SampleModel, описывающий способ определения значения заданного образца в DataBuffer.

Raster определяет значения пикселей, занимающих определённую прямоугольную область на плоскости, не обязательно включающую (0, 0). Прямоугольник, известный как ограничивающая прямоугольник Raster и доступный посредством метода getBounds, определяется значениями minX, minY, width и height. Значения minX и minY определяют координаты верхнего левого угла Raster. Ссылки на пиксели за пределами ограничивающей прямоугольника могут привести к выбрасыванию исключения или к ссылкам на непредназначенные элементы связанного с Raster DataBuffer. Пользователь несёт ответственность за избегание доступа к таким пикселям.

SampleModel описывает, как образцы Raster хранятся в элементах примитивного массива DataBuffer. Образцы могут храниться по одному на каждый элемент данных, как в PixelInterleavedSampleModel или BandedSampleModel, или упаковываться несколько в один элемент, как в SinglePixelPackedSampleModel или MultiPixelPackedSampleModel. SampleModel также управляет тем, расширяются ли образцы со знаком, что позволяет хранить беззнаковые данные в знаковых типах данных Java, таких как byte, short и int.

Хотя Raster может находиться где угодно на плоскости, SampleModel использует простую систему координат, начинающуюся с (0, 0). Поэтому Raster содержит коэффициент смещения, который позволяет отображать местоположения пикселей между системой координат Raster и SampleModel. Преобразование из системы координат SampleModel в систему координат Raster можно получить с помощью методов getSampleModelTranslateX и getSampleModelTranslateY.

Raster может совместно использовать DataBuffer с другим Raster, как явно при создании, так и с помощью методов createChild и createTranslatedChild. Rasters, созданные с помощью этих методов, могут возвращать ссылку на Raster, из которого они были созданы, с помощью метода getParent. Для Raster, который не был создан с помощью вызова createTranslatedChild или createChild, getParent вернёт null.

Метод createTranslatedChild возвращает новый Raster, который разделяет все данные текущего Raster, но занимает ограничивающую прямоугольник той же ширины и высоты, но с другой начальной точкой. Например, если родительский Raster занимал область от (10, 10) до (100, 100), а Raster, смещённый по координатам, был определён как начинающийся в (50, 50), то пиксель (20, 20) родителя и пиксель (60, 60) дочернего занимают то же место в DataBuffer, разделяемом двумя Rasters. В первом случае к координатам пикселя необходимо добавить (-10, -10) для получения соответствующих координат SampleModel, а во втором случае - (-50, -50).

Преобразование между родительским и дочерним Raster можно определить, вычитав значения sampleModelTranslateX и sampleModelTranslateY дочернего из значений родителя.

Метод createChild может использоваться для создания нового Raster, занимающего только подмножество ограничивающей прямоугольника родителя (с той же или смещённой системой координат) или с подмножеством полос родителя.

Все конструкторы защищены. Правильный способ создания Raster — использование одного из статических методов создания, определённых в этом классе. Эти методы создают экземпляры Raster, использующие стандартные Interleaved, Banded и Packed SampleModels и которые могут обрабатываться более эффективно, чем Raster, созданный путём объединения внешне сгенерированного SampleModel и DataBuffer.

См. также:
DataBuffer, SampleModel, PixelInterleavedSampleModel, BandedSampleModel, SinglePixelPackedSampleModel, MultiPixelPackedSampleModel

Поля

Модификатор и тип Поле Описание
protected DataBuffer dataBuffer

DataBuffer, хранящий данные изображения.

protected int height

Высота этого Raster.

protected int minX

Координата X верхнего левого пикселя этого Raster.

protected int minY

Координата Y верхнего левого пикселя этого Raster.

protected int numBands

Количество полос в Raster.

protected int numDataElements

Количество элементов данных DataBuffer на пиксель.

protected Raster parent

Родитель этого Raster или null.

protected SampleModel sampleModel

SampleModel, описывающий, как пиксели этого Raster хранятся в DataBuffer.

protected int sampleModelTranslateX

Смещение по оси X от координатного пространства SampleModel Raster до координатного пространства самого Raster.

protected int sampleModelTranslateY

Смещение по оси Y от координатного пространства SampleModel Raster до координатного пространства самого Raster.

protected int width

Ширина этого Raster.

Конструкторы

Модификатор Конструктор Описание
protected Raster​(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)

Создаёт Raster с заданным SampleModel и DataBuffer.

protected Raster​(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, Raster parent)

Создаёт Raster с заданным SampleModel, DataBuffer и родителем.

protected Raster​(SampleModel sampleModel, Point origin)

Создаёт Raster с заданным SampleModel.

Методы

Модификатор и тип Метод Описание
static WritableRaster createBandedRaster​(int dataType, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets, Point location)

Создаёт Raster на основе BandedSampleModel с указанным типом данных, шириной, высотой, шагом строки сканирования, индексами банка и смещениями каналов.

static WritableRaster createBandedRaster​(int dataType, int w, int h, int bands, Point location)

Создаёт Raster на основе BandedSampleModel с указанным типом данных, шириной, высотой и количеством каналов.

static WritableRaster createBandedRaster​(DataBuffer dataBuffer, int w, int h, int scanlineStride, int[] bankIndices, int[] bandOffsets, Point location)

Создаёт Raster на основе BandedSampleModel с указанным DataBuffer, шириной, высотой, шагом строки сканирования, индексами банка и смещениями каналов.

Raster createChild​(int parentX, int parentY, int width, int height, int childMinX, int childMinY, int[] bandList)

Возвращает новый Raster, который разделяет весь или часть DataBuffer этого Raster.

WritableRaster createCompatibleWritableRaster()

Создаёт совместимый WritableRaster с такими же размерами, как у этого Raster, с той же SampleModel и новым инициализированным DataBuffer.

WritableRaster createCompatibleWritableRaster​(int w, int h)

Создаёт совместимый WritableRaster с указанными размерами, новой SampleModel и новым инициализированным DataBuffer.

WritableRaster createCompatibleWritableRaster​(int x, int y, int w, int h)

Создаёт совместимый WritableRaster с указанным расположением (minX, minY) и размерами (ширина, высота), новой SampleModel и новым инициализированным DataBuffer.

WritableRaster createCompatibleWritableRaster​(Rectangle rect)

Создаёт совместимый WritableRaster с расположением (minX, minY) и размерами (ширина, высота), заданными rect, новой SampleModel и новым инициализированным DataBuffer.

static WritableRaster createInterleavedRaster​(int dataType, int w, int h, int scanlineStride, int pixelStride, int[] bandOffsets, Point location)

Создаёт Raster на основе PixelInterleavedSampleModel с указанным типом данных, шириной, высотой, шагом строки сканирования, шагом пикселя и смещениями каналов.

static WritableRaster createInterleavedRaster​(int dataType, int w, int h, int bands, Point location)

Создаёт Raster на основе PixelInterleavedSampleModel с указанным типом данных, шириной, высотой и количеством каналов.

static WritableRaster createInterleavedRaster​(DataBuffer dataBuffer, int w, int h, int scanlineStride, int pixelStride, int[] bandOffsets, Point location)

Создаёт Raster на основе PixelInterleavedSampleModel с указанным DataBuffer, шириной, высотой, шагом строки сканирования, шагом пикселя и смещениями каналов.

static WritableRaster createPackedRaster​(int dataType, int w, int h, int[] bandMasks, Point location)

Создаёт Raster на основе SinglePixelPackedSampleModel с указанным типом данных, шириной, высотой и масками каналов.

static WritableRaster createPackedRaster​(int dataType, int w, int h, int bands, int bitsPerBand, Point location)

Создаёт Raster на основе упакованной SampleModel с указанным типом данных, шириной, высотой, количеством каналов и количеством бит на канал.

static WritableRaster createPackedRaster​(DataBuffer dataBuffer, int w, int h, int scanlineStride, int[] bandMasks, Point location)

Создаёт Raster на основе SinglePixelPackedSampleModel с указанным DataBuffer, шириной, высотой, шагом строки сканирования и масками каналов.

static WritableRaster createPackedRaster​(DataBuffer dataBuffer, int w, int h, int bitsPerPixel, Point location)

Создаёт Raster на основе MultiPixelPackedSampleModel с указанным DataBuffer, шириной, высотой и количеством бит на пиксель.

static Raster createRaster​(SampleModel sm, DataBuffer db, Point location)

Создаёт Raster с указанной SampleModel и DataBuffer.

Raster createTranslatedChild​(int childMinX, int childMinY)

Создаёт Raster с такими же размерами, SampleModel и DataBuffer, как у этого, но с другим расположением.

static WritableRaster createWritableRaster​(SampleModel sm, DataBuffer db, Point location)

Создаёт WritableRaster с указанной SampleModel и DataBuffer.

static WritableRaster createWritableRaster​(SampleModel sm, Point location)

Создаёт WritableRaster с указанной SampleModel.

Rectangle getBounds()

Возвращает ограничивающую прямоугольную область этого Raster.

DataBuffer getDataElements​(int x, int y, int w, int h, Object outData)

Возвращает DataBuffer, связанный с этим Raster.

Object getDataElements​(int x, int y, Object outData)

Возвращает данные пикселей для указанного прямоугольника пикселей в примитивном массиве типа TransferType.

Object getHeight()

Возвращает данные одного пикселя в примитивном массиве типа TransferType.

int getMinX()

Возвращает высоту в пикселях Raster.

int getMinY()

Возвращает минимальную допустимую координату X Raster.

int getNumBands()

Возвращает минимальную допустимую координату Y Raster.

int getNumDataElements()

Возвращает количество каналов (образцов на пиксель) в этом Raster.

int getParent()

Возвращает количество элементов данных, необходимых для передачи одного пикселя с помощью методов getDataElements и setDataElements.

Raster getPixel​(int x, int y, double[] dArray)

Возвращает родительский Raster (если есть) этого Raster или null.

double[] getPixel​(int x, int y, float[] fArray)

Возвращает образцы в массиве double для указанного пикселя.

float[] getPixel​(int x, int y, int[] iArray)

Возвращает образцы в массиве float для указанного пикселя.

int[] getPixels​(int x, int y, int w, int h, double[] dArray)

Возвращает образцы в массиве int для указанного пикселя.

double[] getPixels​(int x, int y, int w, int h, float[] fArray)

Возвращает массив double, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива.

float[] getPixels​(int x, int y, int w, int h, int[] iArray)

Возвращает массив float, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива.

int[] getSample​(int x, int y, int b)

Возвращает массив int, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива.

int getSampleDouble​(int x, int y, int b)

Возвращает образец в указанном канале для пикселя, расположенного по координатам (x, y), как целое число.

double getSampleFloat​(int x, int y, int b)

Возвращает образец в указанном канале для пикселя, расположенного по координатам (x, y), как число с плавающей запятой двойной точности.

float getSampleModel()

Возвращает образец в указанном канале для пикселя, расположенного по координатам (x, y), как число с плавающей запятой одинарной точности.

SampleModel getSampleModelTranslateX()

Возвращает SampleModel, описывающий расположение данных изображения.

int getSampleModelTranslateY()

Возвращает сдвиг X из системы координат SampleModel в систему координат Raster.

int getSamples​(int x, int y, int w, int h, int b, double[] dArray)

Возвращает сдвиг Y из системы координат SampleModel в систему координат Raster.

double[] getSamples​(int x, int y, int w, int h, int b, float[] fArray)

Возвращает образцы для указанного канала для указанного прямоугольника пикселей в массиве double, по одному образцу на элемент массива.

float[] getSamples​(int x, int y, int w, int h, int b, int[] iArray)

Возвращает образцы для указанного канала для указанного прямоугольника пикселей в массиве float, по одному образцу на элемент массива.

int[] getTransferType()

Возвращает образцы для указанного канала для указанного прямоугольника пикселей в массиве int, по одному образцу на элемент массива.

int getWidth()

Возвращает TransferType, используемый для передачи пикселей с помощью методов getDataElements и setDataElements.

int
protected SampleModel sampleModel

Возвращает ширину в пикселях Raster.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Поля

sampleModel

protected SampleModel sampleModel

SampleModel, описывающий, как пиксели из этого Raster хранятся в DataBuffer.

dataBuffer

protected DataBuffer dataBuffer

DataBuffer, хранящий данные изображения.

minX

protected int minX

Координата X левого верхнего пикселя этого Raster.

minY

protected int minY

Координата Y левого верхнего пикселя этого Raster.

ширина

protected int width

Ширина этого Raster.

высота

protected int height

Высота этого Raster.

sampleModelTranslateX

protected int sampleModelTranslateX

Сдвиг по оси X от координатного пространства SampleModel этого Raster к координатам самого Raster.

sampleModelTranslateY

protected int sampleModelTranslateY

Сдвиг по оси Y от координатного пространства SampleModel этого Raster к координатам самого Raster.

количество_каналов

protected int numBands

Количество каналов в Raster.

количество_элементов_данных

protected int numDataElements

Количество элементов данных DataBuffer на пиксель.

родитель

protected Raster parent

Родитель этого Raster, или null.

Конструкторы

Raster

protected Raster(SampleModel sampleModel,
                 Point origin)

Создаёт Raster с заданным SampleModel. Левый верхний угол Raster находится в начале координат и имеет тот же размер, что и SampleModel. DataBuffer достаточного размера для описания Raster создаётся автоматически.

Параметры:
sampleModel - SampleModel, определяющий расположение
origin - Точка, определяющая начало координат
Исключения:
RasterFormatException - если вычисление origin.x + sampleModel.getWidth() или origin.y + sampleModel.getHeight() приводит к переполнению целого
NullPointerException - если либо sampleModel или origin равно null

Raster

protected Raster(SampleModel sampleModel,
                 DataBuffer dataBuffer,
                 Point origin)

Создаёт Raster с заданным SampleModel и DataBuffer. Левый верхний угол Raster находится в начале координат и имеет тот же размер, что и SampleModel. DataBuffer не инициализируется и должен быть совместим с SampleModel.

Параметры:
sampleModel - SampleModel, определяющий расположение
dataBuffer - DataBuffer, содержащий данные изображения
origin - Точка, определяющая начало координат
Исключения:
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)

Создаёт Raster с заданным SampleModel, DataBuffer и родителем. aRegion определяет область рамки нового Raster. После преобразования в координатную систему базового Raster, aRegion должна быть в пределах базового Raster. (Базовый Raster — это предок Raster, у которого нет родителя.) sampleModelTranslate определяет значения sampleModelTranslateX и sampleModelTranslateY нового Raster. Обратите внимание, что этот конструктор обычно вызывается другими конструкторами или методами создания, а не используется напрямую.

Параметры:
sampleModel - SampleModel, определяющий расположение
dataBuffer - DataBuffer, содержащий данные изображения
aRegion - Rectangle, определяющий область изображения
sampleModelTranslate - Точка, определяющая сдвиг от координат SampleModel к координатам Raster
parent - Родитель (если есть) этого Raster
Исключения:
NullPointerException - если любой из sampleModel, dataBuffer, aRegion или sampleModelTranslate равен null
RasterFormatException - если у aRegion ширина или высота меньше или равны нулю, или вычисление aRegion.x + aRegion.width или aRegion.y + aRegion.height приводит к переполнению целого

Методы

createInterleavedRaster

public static WritableRaster createInterleavedRaster(int dataType,
                                                     int w,
                                                     int h,
                                                     int bands,
                                                     Point location)

Создает Raster на основе PixelInterleavedSampleModel с указанным типом данных, шириной, высотой и количеством полос.

Левый верхний угол Raster задается аргументом location. Если location имеет значение null, будет использоваться (0, 0). Параметр dataType должен быть одним из перечисленных значений, определенных в классе DataBuffer.

Обратите внимание, что чересстрочные DataBuffer.TYPE_INT Raster не поддерживаются. Чтобы создать 1-полосный Raster типа DataBuffer.TYPE_INT, используйте Raster.createPackedRaster().

В настоящее время поддерживаются только dataTypes TYPE_BYTE и TYPE_USHORT.

Параметры:
dataType - тип данных для хранения выборок
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
bands - количество полос
location - левый верхний угол Raster
Возвращает:
объект WritableRaster с указанным типом данных, шириной, высотой и количеством полос.
Исключения:
RasterFormatException - если w или h меньше или равно нулю, или вычисление 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)

Создает Raster на основе PixelInterleavedSampleModel с указанным типом данных, шириной, высотой, шагом строки сканирования, шагом пикселя и смещениями полос. Количество полос выводится из bandOffsets.length.

Левый верхний угол Raster задается аргументом location. Если location имеет значение null, будет использоваться (0, 0). Параметр dataType должен быть одним из перечисленных значений, определенных в классе DataBuffer.

Обратите внимание, что чересстрочные DataBuffer.TYPE_INT Raster не поддерживаются. Чтобы создать 1-полосный Raster типа DataBuffer.TYPE_INT, используйте Raster.createPackedRaster().

В настоящее время поддерживаются только dataTypes TYPE_BYTE и TYPE_USHORT.

Параметры:
dataType - тип данных для хранения выборок
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
scanlineStride - шаг строки изображения
pixelStride - шаг пикселя данных изображения
bandOffsets - смещения всех полос
location - левый верхний угол Raster
Возвращает:
объект WritableRaster с указанным типом данных, шириной, высотой, шагом строки сканирования, шагом пикселя и смещениями полос.
Исключения:
RasterFormatException - если w или h меньше или равно нулю, или вычисление location.x + w или location.y + h приводит к целочисленному переполнению
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которые являются DataBuffer.TYPE_BYTE, или DataBuffer.TYPE_USHORT.

createBandedRaster

public static WritableRaster createBandedRaster(int dataType,
                                                int w,
                                                int h,
                                                int bands,
                                                Point location)

Создает Raster на основе BandedSampleModel с указанным типом данных, шириной, высотой и количеством полос.

Левый верхний угол Raster задается аргументом location. Если location имеет значение null, будет использоваться (0, 0). Параметр dataType должен быть одним из перечисленных значений, определенных в классе DataBuffer.

В настоящее время поддерживаются только dataTypes TYPE_BYTE, TYPE_USHORT и TYPE_INT.

Параметры:
dataType - тип данных для хранения выборок
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
bands - количество полос
location - левый верхний угол Raster
Возвращает:
объект WritableRaster с указанным типом данных, шириной, высотой и количеством полос.
Исключения:
RasterFormatException - если w или h меньше или равно нулю, или вычисление 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)

Создает Raster на основе BandedSampleModel с указанным типом данных, шириной, высотой, шагом строки сканирования, индексами банков и смещениями полос. Количество полос выводится из bankIndices.length и bandOffsets.length, которые должны быть одинаковыми.

Левый верхний угол Raster задается аргументом location. Параметр dataType должен быть одним из перечисленных значений, определенных в классе DataBuffer.

В настоящее время поддерживаются только dataTypes TYPE_BYTE, TYPE_USHORT и TYPE_INT.

Параметры:
dataType - тип данных для хранения выборок
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
scanlineStride - шаг строки данных изображения
bankIndices - индексы банков для каждой полосы
bandOffsets - смещения всех полос
location - левый верхний угол Raster
Возвращает:
объект WritableRaster с указанным типом данных, шириной, высотой, шагом строки сканирования, индексами банков и смещениями полос.
Исключения:
RasterFormatException - если w или h меньше или равно нулю, или вычисление location.x + w или location.y + h приводит к целочисленному переполнению
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которые являются DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT
ArrayIndexOutOfBoundsException - если bankIndices или bandOffsets является null

createPackedRaster

public static WritableRaster createPackedRaster(int dataType,
                                                int w,
                                                int h,
                                                int[] bandMasks,
                                                Point location)

Создает Raster на основе SinglePixelPackedSampleModel с указанным типом данных, шириной, высотой и масками полос. Количество полос выводится из bandMasks.length.

Левый верхний угол Raster задается аргументом location. Если location имеет значение null, будет использоваться (0, 0). Параметр dataType должен быть одним из перечисленных значений, определенных в классе DataBuffer.

В настоящее время поддерживаются только dataTypes TYPE_BYTE, TYPE_USHORT и TYPE_INT.

Параметры:
dataType - тип данных для хранения выборок
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
bandMasks - массив, содержащий запись для каждой полосы
location - левый верхний угол Raster
Возвращает:
объект WritableRaster с указанным типом данных, шириной, высотой и масками полос.
Исключения:
RasterFormatException - если w или h меньше или равно нулю, или вычисление location.x + w или location.y + h приводит к целочисленному переполнению
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которые являются DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT

createPackedRaster

public static WritableRaster createPackedRaster(int dataType,
                                                int w,
                                                int h,
                                                int bands,
                                                int bitsPerBand,
                                                Point location)

Создает Raster на основе упакованной SampleModel с указанным типом данных, шириной, высотой, количеством полос и битов на полосу. Если количество полос равно одному, SampleModel будет MultiPixelPackedSampleModel.

Если количество полос больше одного, SampleModel будет SinglePixelPackedSampleModel, при этом каждая полоса будет иметь bitsPerBand бит. В любом случае, требования к dataType и bitsPerBand, налагаемые соответствующей SampleModel, должны быть выполнены.

Левый верхний угол Raster задается аргументом location. Если location имеет значение null, будет использоваться (0, 0). Параметр dataType должен быть одним из перечисленных значений, определенных в классе DataBuffer.

В настоящее время поддерживаются только dataTypes TYPE_BYTE, TYPE_USHORT и TYPE_INT.

Параметры:
dataType - тип данных для хранения выборок
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
bands - количество полос
bitsPerBand - количество битов на полосу
location - левый верхний угол Raster
Возвращает:
объект WritableRaster с указанным типом данных, шириной, высотой, количеством полос и битов на полосу.
Исключения:
RasterFormatException - если w или h меньше или равно нулю, или вычисление location.x + w или location.y + h приводит к целочисленному переполнению
IllegalArgumentException - если произведение bitsPerBand и bands больше, чем количество битов, содержащихся в dataType
IllegalArgumentException - если bitsPerBand или bands не больше нуля
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которые являются DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT

createInterleavedRaster

public static WritableRaster createInterleavedRaster(DataBuffer dataBuffer,
                                                     int w,
                                                     int h,
                                                     int scanlineStride,
                                                     int pixelStride,
                                                     int[] bandOffsets,
                                                     Point location)

Создает Raster на основе PixelInterleavedSampleModel с указанным DataBuffer, шириной, высотой, шагом строки сканирования, шагом пикселя и смещениями полос. Количество полос выводится из bandOffsets.length. Левый верхний угол Raster задается аргументом location. Если location имеет значение null, будет использоваться (0, 0).

Обратите внимание, что чересстрочные DataBuffer.TYPE_INT Raster не поддерживаются. Чтобы создать 1-полосный Raster типа DataBuffer.TYPE_INT, используйте Raster.createPackedRaster().

Параметры:
dataBuffer - данные изображения
w - ширина данных изображения в пикселях
h - высота данных изображения в пикселях
scanlineStride - шаг строки данных изображения
pixelStride - шаг пикселя данных изображения
bandOffsets - смещения всех каналов
location - верхний левый угол Raster
Возвращает:
объект WritableRaster с указанными DataBuffer, шириной, высотой, шагом строки, шагом пикселя и смещениями каналов.
Выбрасывает:
RasterFormatException - если w или h меньше или равны нулю, или вычисление location.x + w или location.y + h приводит к переполнению целых чисел
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которыми являются DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT
RasterFormatException - если dataBuffer содержит более одного банка.
NullPointerException - если dataBuffer равно null

createBandedRaster

public static WritableRaster createBandedRaster(DataBuffer dataBuffer,
                                                int w,
                                                int h,
                                                int scanlineStride,
                                                int[] bankIndices,
                                                int[] bandOffsets,
                                                Point location)

Создаёт Raster на основе BandedSampleModel с указанным DataBuffer, шириной, высотой, шагом строки, индексами банков и смещениями каналов. Количество каналов определяется по длине массивов bankIndices и bandOffsets, которые должны быть одинаковыми. Верхний левый угол Raster задаётся аргументом location. Если location равно null, используется (0, 0).

Параметры:
dataBuffer - данные изображения
w - ширина данных изображения в пикселях
h - высота данных изображения в пикселях
scanlineStride - шаг строки данных изображения
bankIndices - индексы банков для каждого канала
bandOffsets - смещения всех каналов
location - верхний левый угол Raster
Возвращает:
объект WritableRaster с указанными DataBuffer, шириной, высотой, шагом строки, индексами банков и смещениями каналов.
Выбрасывает:
RasterFormatException - если w или h меньше или равны нулю, или вычисление location.x + w или location.y + h приводит к переполнению целых чисел
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которыми являются DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT
NullPointerException - если dataBuffer равно null

createPackedRaster

public static WritableRaster createPackedRaster(DataBuffer dataBuffer,
                                                int w,
                                                int h,
                                                int scanlineStride,
                                                int[] bandMasks,
                                                Point location)

Создаёт Raster на основе SinglePixelPackedSampleModel с указанным DataBuffer, шириной, высотой, шагом строки и масками каналов. Количество каналов определяется по длине массива bandMasks. Верхний левый угол Raster задаётся аргументом location. Если location равно null, используется (0, 0).

Параметры:
dataBuffer - данные изображения
w - ширина данных изображения в пикселях
h - высота данных изображения в пикселях
scanlineStride - шаг строки данных изображения
bandMasks - массив, содержащий запись для каждого канала
location - верхний левый угол Raster
Возвращает:
объект WritableRaster с указанными DataBuffer, шириной, высотой, шагом строки и масками каналов.
Выбрасывает:
RasterFormatException - если w или h меньше или равны нулю, или вычисление location.x + w или location.y + h приводит к переполнению целых чисел
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которыми являются DataBuffer.TYPE_BYTE, DataBuffer.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)

Создаёт Raster на основе MultiPixelPackedSampleModel с указанным DataBuffer, шириной, высотой и количеством бит на пиксель. Верхний левый угол Raster задаётся аргументом location. Если location равно null, используется (0, 0).

Параметры:
dataBuffer - данные изображения
w - ширина данных изображения в пикселях
h - высота данных изображения в пикселях
bitsPerPixel - количество бит на пиксель
location - верхний левый угол Raster
Возвращает:
объект WritableRaster с указанными DataBuffer, шириной, высотой и количеством бит на пиксель.
Выбрасывает:
RasterFormatException - если w или h меньше или равны нулю, или вычисление location.x + w или location.y + h приводит к переполнению целых чисел
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которыми являются DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT
RasterFormatException - если dataBuffer содержит более одного банка.
NullPointerException - если dataBuffer равно null

createRaster

public static Raster createRaster(SampleModel sm,
                                  DataBuffer db,
                                  Point location)

Создаёт Raster с указанным SampleModel и DataBuffer. Верхний левый угол Raster задаётся аргументом location. Если location равно null, используется (0, 0).

Параметры:
sm - указанный SampleModel
db - указанный DataBuffer
location - верхний левый угол Raster
Возвращает:
Raster с указанным SampleModel, DataBuffer, и location.
Выбрасывает:
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)

Создаёт WritableRaster с указанным SampleModel. Верхний левый угол Raster задаётся аргументом location. Если location равно null, используется (0, 0).

Параметры:
sm - указанный SampleModel
location - верхний левый угол WritableRaster
Возвращает:
WritableRaster с указанным SampleModel и location.
Выбрасывает:
RasterFormatException - если вычисление location.x + sm.getWidth() или location.y + sm.getHeight() приводит к переполнению целых чисел

createWritableRaster

public static WritableRaster createWritableRaster(SampleModel sm,
                                                  DataBuffer db,
                                                  Point location)

Создаёт WritableRaster с указанным SampleModel и DataBuffer. Верхний левый угол Raster задаётся аргументом location. Если location равно null, используется (0, 0).

Параметры:
sm - указанный SampleModel
db - указанный DataBuffer
location - верхний левый угол WritableRaster
Возвращает:
WritableRaster с указанным SampleModel, DataBuffer, и location.
Выбрасывает:
RasterFormatException - если вычисление location.x + sm.getWidth() или location.y + sm.getHeight() приводит к переполнению целых чисел
RasterFormatException - если db содержит более одного банка, а sm является PixelInterleavedSampleModel, SinglePixelPackedSampleModel или MultiPixelPackedSampleModel.
NullPointerException - если SampleModel или DataBuffer равны null

getParent

public Raster getParent()

Возвращает родительский Raster (если есть) или null.

Возвращает:
родительский Raster или null.

getSampleModelTranslateX

public final int getSampleModelTranslateX()

Возвращает смещение по оси X от системы координат SampleModel к системе координат Raster. Для преобразования координаты пикселя по оси X из системы координат Raster в систему координат SampleModel необходимо вычесть это значение.

Возвращает:
смещение по оси X от пространства координат SampleModel к пространству координат Raster.

getSampleModelTranslateY

public final int getSampleModelTranslateY()

Возвращает смещение по оси Y от системы координат SampleModel к системе координат Raster. Для преобразования координаты пикселя по оси Y из системы координат Raster в систему координат SampleModel необходимо вычесть это значение.

Возвращает:
смещение по оси Y от пространства координат SampleModel к пространству координат Raster.

createCompatibleWritableRaster

public WritableRaster createCompatibleWritableRaster()

Создаёт совместимый WritableRaster с теми же размерами, что и этот Raster, с тем же SampleModel и новым инициализированным DataBuffer.

Возвращает:
совместимый WritableRaster с тем же sample model и новым data buffer.

createCompatibleWritableRaster

public WritableRaster createCompatibleWritableRaster(int w,
                                                     int h)

Создаёт совместимый WritableRaster с указанными размерами, новым SampleModel и новым инициализированным DataBuffer.

Параметры:
w - заданная ширина нового WritableRaster
h - заданная высота нового WritableRaster
Возвращает:
совместимый WritableRaster с заданным размером и новым образцом модели и буфером данных.
Выбрасывает:
RasterFormatException - если ширина или высота меньше или равны нулю.

createCompatibleWritableRaster

public WritableRaster createCompatibleWritableRaster(Rectangle rect)

Создаёт совместимый WritableRaster с расположением (minX, minY) и размером (width, height), заданными rect, новой SampleModel и новым инициализированным DataBuffer.

Параметры:
rect - a Rectangle, определяющий размер и расположение WritableRaster
Возвращает:
совместимый WritableRaster с заданным размером и расположением, и новым образцом модели и буфером данных.
Выбрасывает:
RasterFormatException - если у rect ширина или высота меньше или равны нулю, или вычисление rect.x + rect.width или rect.y + rect.height приводит к переполнению целого числа
NullPointerException - если rect равно null

createCompatibleWritableRaster

public WritableRaster createCompatibleWritableRaster(int x,
                                                     int y,
                                                     int w,
                                                     int h)

Создаёт совместимый WritableRaster с заданным расположением (minX, minY) и размером (width, height), новой SampleModel и новым инициализированным DataBuffer.

Параметры:
x - координата X левого верхнего угла WritableRaster
y - координата Y левого верхнего угла WritableRaster
w - заданная ширина WritableRaster
h - заданная высота WritableRaster
Возвращает:
совместимый WritableRaster с заданными размером и расположением, и новым образцом модели и буфером данных.
Выбрасывает:
RasterFormatException - если w или h меньше или равны нулю, или вычисление x + w или y + h приводит к переполнению целого числа

createTranslatedChild

public Raster createTranslatedChild(int childMinX,
                                    int childMinY)

Создаёт Raster с таким же размером, SampleModel и DataBuffer, как у этого, но с другим расположением. Новый Raster будет содержать ссылку на текущий Raster, доступный через метод getParent().

Параметры:
childMinX - координата X левого верхнего угла нового Raster
childMinY - координата Y левого верхнего угла нового Raster
Возвращает:
новый Raster с таким же размером, SampleModel и DataBuffer, как у этого 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 будет содержать ссылку на текущий Raster, доступный через метод getParent().

Параметры parentX, parentY, width и height формируют прямоугольник в координатном пространстве этого Raster, указывающем область пикселей для совместного использования. Ошибка будет выброшена, если этот прямоугольник не содержится в границах текущего Raster.

Новый Raster может дополнительно быть переведён в другую систему координат для плоскости, отличную от используемой текущим Raster. Параметры childMinX и childMinY дают новые (x, y) координаты верхнего левого пикселя возвращаемого Raster; координата (childMinX, childMinY) в новом Raster будет соответствовать координате (parentX, parentY) в текущем Raster.

Новый Raster может быть определён, чтобы содержать только подмножество полос текущего Raster, возможно, переупорядоченных, с помощью параметра bandList. Если bandList равен null, предполагается, что он включает все полосы текущего Raster в их текущем порядке.

Чтобы создать новый Raster, содержащий подрегион текущего Raster, но разделяющий его систему координат и полосы, этот метод должен быть вызван с childMinX равным parentX, childMinY равным parentY и bandList равным null.

Параметры:
parentX - Координата X верхнего левого угла в координатах этого Raster
parentY - Координата Y верхнего левого угла в координатах этого Raster
width - Ширина области, начинающейся в (parentX, parentY)
height - Высота области, начинающейся в (parentX, parentY).
childMinX - Координата X верхнего левого угла возвращаемого Raster
childMinY - Координата Y верхнего левого угла возвращаемого Raster
bandList - Массив индексов полос или null для использования всех полос
Возвращает:
новый Raster.
Выбрасывает:
RasterFormatException - если указанный подрегион находится вне границ растра.
RasterFormatException - если width или height меньше или равны нулю, или вычисление parentX + width, parentY + height, childMinX + width, или childMinY + height приводит к переполнению целого числа

getBounds

public Rectangle getBounds()

Возвращает прямоугольник границ этого Raster. Эта функция возвращает ту же информацию, что и getMinX/MinY/Width/Height.

Возвращает:
прямоугольник границ этого Raster.

getMinX

public final int getMinX()

Возвращает минимальную допустимую координату X Raster.

Возвращает:
минимальную координату x этого Raster.

getMinY

public final int getMinY()

Возвращает минимальную допустимую координату Y Raster.

Возвращает:
минимальную координату y этого Raster.

getWidth

public final int getWidth()

Возвращает ширину Raster в пикселях.

Возвращает:
ширину этого Raster.

getHeight

public final int getHeight()

Возвращает высоту Raster в пикселях.

Возвращает:
высоту этого Raster.

getNumBands

public final int getNumBands()

Возвращает количество полос (образцов на пиксель) в этом Raster.

Возвращает:
количество полос этого Raster.

getNumDataElements

public final int getNumDataElements()

Возвращает количество элементов данных, необходимых для передачи одного пикселя через методы getDataElements и setDataElements. Когда пиксели передаются через эти методы, они могут передаваться в упакованном или распакованном формате в зависимости от реализации базовой SampleModel. Используя эти методы, пиксели передаются как массив из getNumDataElements() элементов примитивного типа, заданного getTransferType(). Тип TransferType может или не может совпадать с типом данных хранения DataBuffer.

Возвращает:
количество элементов данных.

getTransferType

public final int getTransferType()

Возвращает тип TransferType, используемый для передачи пикселей через методы getDataElements и setDataElements. Когда пиксели передаются через эти методы, они могут передаваться в упакованном или распакованном формате в зависимости от реализации базовой SampleModel. Используя эти методы, пиксели передаются как массив из getNumDataElements() элементов примитивного типа, заданного getTransferType(). Тип TransferType может или не может совпадать с типом данных хранения DataBuffer. Тип TransferType будет одним из типов, определённых в DataBuffer.

Возвращает:
этот тип передачи.

getDataBuffer

public DataBuffer getDataBuffer()

Возвращает DataBuffer, связанный с этим Raster.

Возвращает:
DataBuffer этого Raster.

getSampleModel

public SampleModel getSampleModel()

Возвращает SampleModel, описывающий расположение данных изображения.

Возвращает:
SampleModel этого Raster.

getDataElements

public Object getDataElements(int x,
                              int y,
                              Object outData)

Возвращает данные для одного пикселя в примитивном массиве типа TransferType. Для данных изображений, поддерживаемых API Java 2D, это будет один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные могут быть возвращены в упакованном формате, что увеличивает эффективность передачи данных. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в границах. Однако явная проверка границ не гарантируется. Будет выброшено исключение ClassCastException, если входной объект не равен null и ссылается на что-либо, кроме массива TransferType.

Параметры:
x - Координата X расположения пикселя
y - Координата Y расположения пикселя
outData - Ссылка на объект на массив типа, определённого getTransferType(), и длиной getNumDataElements(). Если null, будет выделен массив соответствующего типа и размера
Возвращает:
Ссылка на объект на массив типа, определённого getTransferType(), с запрошенными данными пикселя.
Выбрасывает:
ArrayIndexOutOfBoundsException - если координаты не находятся в границах или если outData слишком мал для хранения результата.
См. также:
SampleModel.getDataElements(int, int, Object, DataBuffer)

getDataElements

public Object getDataElements(int x,
                              int y,
                              int w,
                              int h,
                              Object outData)

Возвращает данные пикселей для указанного прямоугольника пикселей в примитивном массиве типа TransferType. Для данных изображений, поддерживаемых API Java 2D, это будет один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные могут быть возвращены в упакованном формате, что увеличивает эффективность передачи данных. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в границах. Однако явная проверка границ не гарантируется. Будет выброшено исключение ClassCastException, если входной объект не равен null и ссылается на что-либо, кроме массива TransferType.

Параметры:
x - Координата X верхнего левого пикселя
y - Координата Y верхнего левого пикселя
w - Ширина прямоугольника пикселей
h - Высота прямоугольника пикселей
outData - Ссылка на объект массива типа, определенного getTransferType(), и длиной w*h*getNumDataElements(). Если null, будет выделен массив соответствующего типа и размера.
Возвращает:
Ссылка на объект массива типа, определенного getTransferType(), с запрошенными пиксельными данными.
Выбрасывает:
ArrayIndexOutOfBoundsException - если координаты вне границ или outData слишком мал для хранения выходных данных.
См. также:
SampleModel.getDataElements(int, int, int, int, Object, DataBuffer)

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)

Возвращает массив 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)

Возвращает массив 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)

Возвращает массив 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, по одному образцу на элемент массива. Может быть выброшено исключение 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, по одному образцу на элемент массива. Может быть выброшено исключение 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, по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты вне границ. Однако явная проверка границ не гарантируется.

Параметры:
x - Координата X верхнего левого пикселя
y - Координата Y верхнего левого пикселя
w - Ширина прямоугольника пикселей
h - Высота прямоугольника пикселей
b - Полоса для возврата
dArray - Дополнительно предопределённый массив double
Возвращает:
образцы для указанной полосы для указанного прямоугольника пикселей.
Выбрасывает:
ArrayIndexOutOfBoundsException - если координаты или индекс полосы находятся вне границ, или если dArray слишком мал для хранения выходных данных.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/awt/image/Raster.html

Spec-Zone .ru
спецификации, руководства, описания, API