Spec-Zone.ru › OpenJDK 24

Класс Raster

java.lang.Object
java.awt.image.Raster
Прямые известные подклассы:
WritableRaster
public class Raster extends Object
Класс, представляющий прямоугольный массив пикселей. Raster инкапсулирует 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 — использование одного из статических методов create, определённых в этом классе. Эти методы создают экземпляры Raster, использующие стандартные SampleModels Interleaved, Banded и Packed и которые могут обрабатываться более эффективно, чем 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.

Краткое описание конструкторов

Raster(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)
Raster(SampleModel sampleModel, DataBuffer dataBuffer, Rectangle aRegion, Point sampleModelTranslate, Raster parent)
Raster(SampleModel sampleModel, Point origin)
Модификатор Конструктор Описание
protected
Создаёт Raster с заданным SampleModel и DataBuffer.
protected
Создаёт Raster с заданным SampleModel, DataBuffer и родителем.
protected
Создаёт 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 со указанным буфером данных, шириной, высотой, шагом сканирования, индексами банков и смещениями каналов.
Raster createChild(int parentX, int parentY, int width, int height, int childMinX, int childMinY, int[] bandList)
Возвращает новый Raster, который использует весь или часть буфера данных этого Raster.
WritableRaster createCompatibleWritableRaster()
Создаёт совместимый WritableRaster с теми же размерами, SampleModel и инициализированным буфером данных, что и этот Raster.
WritableRaster createCompatibleWritableRaster(int w, int h)
Создаёт совместимый WritableRaster с заданными размерами, новым SampleModel и инициализированным буфером данных.
WritableRaster createCompatibleWritableRaster(int x, int y, int w, int h)
Создаёт совместимый WritableRaster с заданной локацией (minX, minY) и размером (width, height), новым SampleModel и инициализированным буфером данных.
WritableRaster createCompatibleWritableRaster(Rectangle rect)
Создаёт совместимый WritableRaster с локацией (minX, minY) и размером (width, height), заданными rect, новым SampleModel и инициализированным буфером данных.
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 с указанным буфером данных, шириной, высотой, шагом сканирования, шагом пикселя и смещениями каналов.
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 с указанным буфером данных, шириной, высотой, шагом сканирования и масками каналов.
static WritableRaster createPackedRaster(DataBuffer dataBuffer, int w, int h, int bitsPerPixel, Point location)
Создаёт Raster на основе MultiPixelPackedSampleModel с указанным буфером данных, шириной, высотой и количеством бит на пиксель.
static Raster createRaster(SampleModel sm, DataBuffer db, Point location)
Создаёт Raster с указанным SampleModel и буфером данных.
Raster createTranslatedChild(int childMinX, int childMinY)
Создаёт Raster с такими же размерами, SampleModel и буфером данных, что и этот, но с другим расположением.
static WritableRaster createWritableRaster(SampleModel sm, DataBuffer db, Point location)
Создаёт WritableRaster с указанным SampleModel и буфером данных.
static WritableRaster createWritableRaster(SampleModel sm, Point location)
Создаёт WritableRaster с указанным SampleModel.
Rectangle getBounds()
Возвращает ограничивающую прямоугольную область этого Raster.
DataBuffer getDataBuffer()
Возвращает буфер данных, связанный с этим Raster.
Object getDataElements(int x, int y, int w, int h, Object outData)
Возвращает данные пикселей для заданного прямоугольника пикселей в примитивном массиве типа TransferType.
Object getDataElements(int x, int y, Object outData)
Возвращает данные одного пикселя в примитивном массиве типа TransferType.
final int getHeight()
Возвращает высоту Raster в пикселях.
final int getMinX()
Возвращает минимальную действительную координату X Raster.
final int getMinY()
Возвращает минимальную действительную координату Y Raster.
final int getNumBands()
Возвращает количество каналов (образов на пиксель) в этом Raster.
final int getNumDataElements()
Возвращает количество элементов данных, необходимых для передачи одного пикселя с помощью методов getDataElements и setDataElements.
Raster getParent()
Возвращает родительский 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)
Возвращает массив double, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива.
float[] getPixels(int x, int y, int w, int h, float[] fArray)
Возвращает массив float, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива.
int[] getPixels(int x, int y, int w, int h, int[] iArray)
Возвращает массив 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 getSampleModel()
Возвращает SampleModel, описывающий расположение данных изображения.
final int getSampleModelTranslateX()
Возвращает смещение по оси X от системы координат SampleModel к системе координат Raster.
final int getSampleModelTranslateY()
Возвращает смещение по оси Y от системы координат SampleModel к системе координат Raster.
double[] getSamples(int x, int y, int w, int h, int b, double[] dArray)
Возвращает образцы для указанного канала для заданного прямоугольника пикселей в массиве double, по одному образцу на элемент массива.
float[] getSamples(int x, int y, int w, int h, int b, float[] fArray)
Возвращает образцы для указанного канала для заданного прямоугольника пикселей в массиве float, по одному образцу на элемент массива.
int[] getSamples(int x, int y, int w, int h, int b, int[] iArray)
Возвращает образцы для указанного канала для заданного прямоугольника пикселей в массиве int, по одному образцу на элемент массива.
final int getTransferType()
Возвращает TransferType, используемый для передачи пикселей через методы getDataElements и setDataElements.
final int getWidth()
Возвращает ширину Raster в пикселях.

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

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

Подробное описание полей

sampleModel

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

dataBuffer

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

minX

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

minY

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

width

protected int width
Ширина этого Raster.

height

protected int height
Высота этого Raster.

sampleModelTranslateX

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

sampleModelTranslateY

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

numBands

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

numDataElements

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

parent

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 и родительским Raster. aRegion определяет ограничивающий прямоугольник нового Raster. При переводе в систему координат базового Raster, aRegion должен быть содержимым базового Raster. (Базовый Raster — это предок Raster, у которого нет родителя.) sampleModelTranslate задаёт значения sampleModelTranslateX и sampleModelTranslateY нового Raster. Обратите внимание, что этот конструктор, как правило, вызывается другими конструкторами или методами создания, его не следует использовать напрямую.
Параметры:
sampleModel - SampleModel, определяющий расположение
dataBuffer - DataBuffer, содержащий данные изображения
aRegion - Прямоугольник, определяющий область изображения
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 не поддерживаются. Для создания Raster с 1 каналом типа DataBuffer.TYPE_INT используйте Raster.createPackedRaster().

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

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

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

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

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

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

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.

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

Параметры:
dataType - тип данных для хранения образцов
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
bands - число каналов
location - верхний левый угол Raster
Возвращает:
объект WritableRaster с указанным типом данных, шириной, высотой и числом каналов.
Исключения:
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которые являются DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT
IllegalArgumentException - если w и h не оба больше 0
IllegalArgumentException - если произведение w и h больше, чем 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)
Создаёт Raster на основе BandedSampleModel с указанным типом данных, шириной, высотой, шагом строки сканирования, индексами банка и смещениями каналов. Число каналов определяется по длине bankIndices и bandOffsets, которые должны быть одинаковыми.

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

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

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

createPackedRaster

public static WritableRaster createPackedRaster(int dataType, int w, int h, int[] bandMasks, Point location)
Создаёт Raster на основе SinglePixelPackedSampleModel с указанным типом данных, шириной, высотой и масками каналов. Число каналов определяется по длине bandMasks.

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

В настоящее время поддерживаются только типы данных 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 на основе packed SampleModel с указанным типом данных, шириной, высотой, числом каналов и битами на канал. Если число каналов равно одному, SampleModel будет MultiPixelPackedSampleModel.

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

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

В настоящее время поддерживаются только типы данных 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. Верхний левый угол Raster задаётся аргументом location. Если location равен null, будет использоваться (0, 0).

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

Параметры:
dataBuffer - DataBuffer, содержащий данные изображения
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
scanlineStride - шаг строки сканирования данных изображения
pixelStride - шаг пикселя данных изображения
bandOffsets - смещения всех каналов
location - верхний левый угол Raster
Возвращает:
объект WritableRaster с указанными DataBuffer, шириной, высотой, шагом строки сканирования, шагом пикселя и смещениями каналов.
Исключения:
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которые являются DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT
NullPointerException - если dataBuffer равен null
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которые являются DataBuffer.TYPE_BYTE или DataBuffer.TYPE_USHORT.
RasterFormatException - если dataBuffer содержит более одного банка.
IllegalArgumentException - если w и h не оба > 0
IllegalArgumentException - если произведение w и h больше, чем 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)
Создаёт Raster на основе BandedSampleModel с указанным DataBuffer, шириной, высотой, шагом строки сканирования, индексами банков и смещениями каналов. Количество каналов определяется по длине массивов bankIndices и bandOffsets, которые должны быть одинаковыми. Верхний левый угол Raster задаётся аргументом location. Если location равен null, используется (0, 0).
Parameters:
dataBuffer - the DataBuffer that contains the image data
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
scanlineStride - шаг строки сканирования данных изображения
bankIndices - индексы банков для каждого канала
bandOffsets - смещения всех каналов
location - верхний левый угол Raster
Returns:
объект WritableRaster с указанным DataBuffer, шириной, высотой, шагом строки сканирования, индексами банков и смещениями каналов.
Throws:
NullPointerException - если dataBuffer равен null, или bankIndices равен null, или bandOffsets равен null
IllegalArgumentException - если dataType не является одним из поддерживаемых типов данных, которые являются DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT, или если w или h меньше или равно нулю, или если произведение w и h больше Integer.MAX_VALUE или если scanlineStride меньше нуля, или если длина 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)
Создаёт Raster на основе SinglePixelPackedSampleModel с указанным DataBuffer, шириной, высотой, шагом строки сканирования и масками каналов. Количество каналов определяется по длине массива bandMasks. Верхний левый угол Raster задаётся аргументом location. Если location равен null, используется (0, 0).
Parameters:
dataBuffer - the DataBuffer that contains the image data
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
scanlineStride - шаг строки сканирования данных изображения
bandMasks - массив, содержащий запись для каждого канала
location - верхний левый угол Raster
Returns:
объект WritableRaster с указанным DataBuffer, шириной, высотой, шагом строки сканирования и масками каналов.
Throws:
RasterFormatException - если w или h меньше или равно нулю, или вычисление location.x + w или location.y + h приводит к переполнению целого числа
IllegalArgumentException - если dataBuffer не является одним из поддерживаемых типов данных, которые являются 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).
Parameters:
dataBuffer - the DataBuffer that contains the image data
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
bitsPerPixel - количество бит на каждый пиксель
location - верхний левый угол Raster
Returns:
объект WritableRaster с указанным DataBuffer, шириной, высотой и количеством бит на пиксель.
Throws:
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).
Parameters:
sm - указанный SampleModel
db - указанный DataBuffer
location - верхний левый угол Raster
Returns:
Raster с указанным SampleModel, DataBuffer и location.
Throws:
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).
Parameters:
sm - указанный SampleModel
location - верхний левый угол WritableRaster
Returns:
WritableRaster с указанным SampleModel и location.
Throws:
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).
Parameters:
sm - указанный SampleModel
db - указанный DataBuffer
location - верхний левый угол WritableRaster
Returns:
WritableRaster с указанным SampleModel, DataBuffer и location.
Throws:
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.
Returns:
родительский Raster или null.

getSampleModelTranslateX

public final int getSampleModelTranslateX()
Возвращает смещение по X из системы координат SampleModel в систему координат Raster. Для преобразования координаты пикселя X из системы координат Raster в систему координат SampleModel, это значение необходимо вычесть.
Returns:
смещение по X из пространства координат SampleModel Raster в пространство координат Raster.

getSampleModelTranslateY

public final int getSampleModelTranslateY()
Возвращает смещение по Y из системы координат SampleModel в систему координат Raster. Для преобразования координаты пикселя Y из системы координат Raster в систему координат SampleModel, это значение необходимо вычесть.
Returns:
смещение по Y из пространства координат SampleModel Raster в пространство координат Raster.

createCompatibleWritableRaster

public WritableRaster createCompatibleWritableRaster()
Создаёт совместимый WritableRaster того же размера, что и этот Raster, с тем же SampleModel и новым инициализированным DataBuffer.
Returns:
совместимый WritableRaster с тем же sample model и новым data buffer.

createCompatibleWritableRaster

public WritableRaster createCompatibleWritableRaster(int w, int h)
Создать совместимый WritableRaster заданного размера, с новой моделью SampleModel и новым инициализированным буфером DataBuffer.
Параметры:
w - указанная ширина нового WritableRaster
h - указанная высота нового WritableRaster
Возвращает:
совместимый WritableRaster заданного размера с новой моделью SampleModel и буфером.
Исключение:
RasterFormatException - если ширина или высота меньше или равны нулю.

createCompatibleWritableRaster

public WritableRaster createCompatibleWritableRaster(Rectangle rect)
Создать совместимый WritableRaster с расположением (minX, minY) и размером (width, height), заданным rect, с новой моделью SampleModel и новым инициализированным буфером DataBuffer.
Параметры:
rect - Rectangle, который задаёт размер и расположение WritableRaster
Возвращает:
совместимый WritableRaster с заданным размером и расположением и новой моделью SampleModel и буфером.
Исключение:
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 с заданным размером и расположением и новой моделью SampleModel и буфером.
Исключение:
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(tm), это будет один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные могут быть возвращены в упакованном формате, что повышает эффективность передачи данных. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется. Будет выброшено исключение ClassCastException, если входной объект не null и ссылается на что-либо, кроме массива типа TransferType.
Parameters:
x - Координата X расположения пикселя
y - Координата Y расположения пикселя
outData - Ссылка на объект на массив типа, определенного getTransferType(), и длиной getNumDataElements(). Если null, будет выделен массив соответствующего типа и размера
Returns:
Ссылка на объект на массив типа, определенного getTransferType(), с запрошенными данными пикселя.
Throws:
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или outData слишком мал для хранения результата.
See Also:
  • 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.
Parameters:
x - Координата X расположения верхнего левого пикселя
y - Координата Y расположения верхнего левого пикселя
w - Ширина прямоугольника пикселей
h - Высота прямоугольника пикселей
outData - Ссылка на объект на массив типа, определенного getTransferType(), и длиной w*h*getNumDataElements(). Если null, будет выделен массив соответствующего типа и размера.
Returns:
Ссылка на объект на массив типа, определенного getTransferType(), с запрошенными данными пикселя.
Throws:
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или outData слишком мал для хранения результата.
See Also:
  • SampleModel.getDataElements(int, int, int, int, Object, DataBuffer)

getPixel

public int[] getPixel(int x, int y, int[] iArray)
Возвращает образцы в массиве int для указанного пикселя. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X расположения пикселя
y - Координата Y расположения пикселя
iArray - Дополнительно предварительно выделенный массив int
Returns:
образцы для указанного пикселя.
Throws:
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или iArray слишком мал для хранения результата.

getPixel

public float[] getPixel(int x, int y, float[] fArray)
Возвращает образцы в массиве float для указанного пикселя. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X расположения пикселя
y - Координата Y расположения пикселя
fArray - Дополнительно предварительно выделенный массив float
Returns:
образцы для указанного пикселя.
Throws:
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или fArray слишком мал для хранения результата.

getPixel

public double[] getPixel(int x, int y, double[] dArray)
Возвращает образцы в массиве double для указанного пикселя. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X расположения пикселя
y - Координата Y расположения пикселя
dArray - Дополнительно предварительно выделенный массив double
Returns:
образцы для указанного пикселя.
Throws:
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или dArray слишком мал для хранения результата.

getPixels

public int[] getPixels(int x, int y, int w, int h, int[] iArray)
Возвращает массив int, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X расположения верхнего левого пикселя
y - Координата Y расположения верхнего левого пикселя
w - Ширина прямоугольника пикселей
h - Высота прямоугольника пикселей
iArray - Дополнительно предварительно выделенный массив int
Returns:
образцы для указанного прямоугольника пикселей.
Throws:
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или iArray слишком мал для хранения результата.

getPixels

public float[] getPixels(int x, int y, int w, int h, float[] fArray)
Возвращает массив float, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X расположения пикселя
y - Координата Y расположения пикселя
w - Ширина прямоугольника пикселей
h - Высота прямоугольника пикселей
fArray - Дополнительно предварительно выделенный массив float
Returns:
образцы для указанного прямоугольника пикселей.
Throws:
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или fArray слишком мал для хранения результата.

getPixels

public double[] getPixels(int x, int y, int w, int h, double[] dArray)
Возвращает массив double, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X расположения верхнего левого пикселя
y - Координата Y расположения верхнего левого пикселя
w - Ширина прямоугольника пикселей
h - Высота прямоугольника пикселей
dArray - Дополнительно предварительно выделенный массив double
Returns:
образцы для указанного прямоугольника пикселей.
Throws:
ArrayIndexOutOfBoundsException - если координаты находятся вне границ или dArray слишком мал для хранения результата.

getSample

public int getSample(int x, int y, int b)
Возвращает образец в указанной полосе для пикселя, расположенного по координатам (x, y), в виде int. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X расположения пикселя
y - Координата Y расположения пикселя
b - Полоса для возврата
Returns:
образец в указанной полосе для пикселя в указанной координате.
Throws:
ArrayIndexOutOfBoundsException - если координаты или индекс полосы находятся вне границ.

getSampleFloat

public float getSampleFloat(int x, int y, int b)
Возвращает образец в указанной полосе для пикселя, расположенного по координатам (x, y), в виде float. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X расположения пикселя
y - Координата Y расположения пикселя
b - Полоса для возврата
Returns:
образец в указанной полосе для пикселя в указанной координате.
Throws:
ArrayIndexOutOfBoundsException - если координаты или индекс полосы находятся вне границ.

getSampleDouble

public double getSampleDouble(int x, int y, int b)
Возвращает образец в указанной полосе для пикселя, расположенного по координатам (x,y), в виде double. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X местоположения пикселя
y - Координата Y местоположения пикселя
b - Номер полосы для возврата
Returns:
образец в указанной полосе для пикселя по указанным координатам.
Throws:
ArrayIndexOutOfBoundsException - если координаты или индекс полосы находятся за пределами границ.

getSamples

public int[] getSamples(int x, int y, int w, int h, int b, int[] iArray)
Возвращает образцы для указанной полосы для заданного прямоугольника пикселей в массиве int, по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X верхнего левого пикселя
y - Координата Y верхнего левого пикселя
w - Ширина прямоугольника пикселей
h - Высота прямоугольника пикселей
b - Номер полосы для возврата
iArray - Дополнительно предварительно выделенный массив int
Returns:
образцы для указанной полосы для заданного прямоугольника пикселей.
Throws:
ArrayIndexOutOfBoundsException - если координаты или индекс полосы находятся за пределами границ или если iArray слишком мал для хранения результата.

getSamples

public float[] getSamples(int x, int y, int w, int h, int b, float[] fArray)
Возвращает образцы для указанной полосы для заданного прямоугольника пикселей в массиве float, по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X верхнего левого пикселя
y - Координата Y верхнего левого пикселя
w - Ширина прямоугольника пикселей
h - Высота прямоугольника пикселей
b - Номер полосы для возврата
fArray - Дополнительно предварительно выделенный массив float
Returns:
образцы для указанной полосы для заданного прямоугольника пикселей.
Throws:
ArrayIndexOutOfBoundsException - если координаты или индекс полосы находятся за пределами границ или если fArray слишком мал для хранения результата.

getSamples

public double[] getSamples(int x, int y, int w, int h, int b, double[] dArray)
Возвращает образцы для указанной полосы для заданного прямоугольника пикселей в массиве double, по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
Parameters:
x - Координата X верхнего левого пикселя
y - Координата Y верхнего левого пикселя
w - Ширина прямоугольника пикселей
h - Высота прямоугольника пикселей
b - Номер полосы для возврата
dArray - Дополнительно предварительно выделенный массив double
Returns:
образцы для указанной полосы для заданного прямоугольника пикселей.
Throws:
ArrayIndexOutOfBoundsException - если координаты или индекс полосы находятся за пределами границ или если dArray слишком мал для хранения результата.

© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/image/Raster.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API