Spec-Zone.ru › OpenJDK 21

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

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

Modifier and Type Method Description
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) и размером (width, height), новой SampleModel и новым инициализированным DataBuffer.
WritableRaster createCompatibleWritableRaster(Rectangle rect)
Создает совместимый WritableRaster с позицией (minX, minY) и размером (width, height), заданными 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 getDataBuffer()
Возвращает DataBuffer, связанный с этим 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
Модель 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 создаётся автоматически.
Parameters:
sampleModel - SampleModel, определяющая макет
origin - Точка, определяющая начало координат
Throws:
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.
Parameters:
sampleModel - SampleModel, определяющая макет
dataBuffer - DataBuffer, содержащий данные изображения
origin - Точка, определяющая начало координат
Throws:
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. Обратите внимание, что этот конструктор, как правило, вызывается другими конструкторами или методами создания, его не следует использовать напрямую.
Parameters:
sampleModel - SampleModel, определяющая макет
dataBuffer - DataBuffer, содержащий данные изображения
aRegion - Прямоугольник, определяющий область изображения
sampleModelTranslate - Точка, определяющая сдвиг от координат SampleModel к координатам Raster
parent - Родительский Raster (если есть)
Throws:
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.

Parameters:
dataType - тип данных для хранения образцов
w - ширина изображения в пикселях
h - высота изображения в пикселях
bands - количество каналов
location - верхний левый угол Raster
Returns:
объект WritableRaster с указанным типом данных, шириной, высотой и количеством каналов.
Throws:
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 с указанным типом данных, шириной, высотой, шагом строки, шагом пикселя и смещениями каналов. Количество каналов определяется по length массива bandOffsets.

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

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

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

Parameters:
dataType - тип данных для хранения образцов
w - ширина изображения в пикселях
h - высота изображения в пикселях
scanlineStride - шаг строки данных изображения
pixelStride - шаг пикселя данных изображения
bandOffsets - смещения всех каналов
location - верхний левый угол Raster
Returns:
объект WritableRaster с указанными типом данных, шириной, высотой, шагом строки, шагом пикселя и смещениями каналов.
Throws:
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

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).

Обратите внимание, что интерлинованные DataBuffer.TYPE_INT Raster не поддерживаются. Для создания Raster с 1 каналом типа 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.length и bandOffsets.length, которые должны быть одинаковыми. Левый верхний угол Raster задаётся аргументом location. Если location равно null, будет использоваться (0, 0).
Параметры:
dataBuffer - DataBuffer который содержит данные изображения
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
scanlineStride - шаг строки данных изображения
bankIndices - индексы банков для каждой полосы
bandOffsets - смещения всех полос
location - левый верхний угол Raster
Возвращает:
объект WritableRaster с указанными DataBuffer, шириной, высотой, шагом строки сканирования, индексами банков и смещениями полос.
Исключения:
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.length. Левый верхний угол Raster задаётся аргументом location. Если location равно null, будет использоваться (0, 0).
Параметры:
dataBuffer - DataBuffer который содержит данные изображения
w - ширина в пикселях данных изображения
h - высота в пикселях данных изображения
scanlineStride - шаг строки данных изображения
bandMasks - массив, содержащий запись для каждой полосы
location - левый верхний угол Raster
Возвращает:
объект WritableRaster с указанными DataBuffer, шириной, высотой, шагом строки сканирования и масками полос.
Исключения:
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).
Параметры:
dataBuffer - 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 (если есть) этого Raster или null.
Возвращает:
родительский Raster или null.

getSampleModelTranslateX

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

getSampleModelTranslateY

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

createCompatibleWritableRaster

public WritableRaster createCompatibleWritableRaster()
Создаёт совместимый WritableRaster того же размера, что и этот Raster, с тем же SampleModel и новым инициализированным DataBuffer.
Возвращает:
совместимый WritableRaster с той же моделью выборки и новым буфером данных.

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.
Parameters:
rect - a Rectangle, который определяет размер и расположение WritableRaster
Returns:
совместимый WritableRaster с указанными размером и расположением, а также новым sample model и буфером данных.
Throws:
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.
Parameters:
x - координата X левого верхнего угла WritableRaster
y - координата Y левого верхнего угла WritableRaster
w - указанная ширина WritableRaster
h - указанная высота WritableRaster
Returns:
совместимый WritableRaster с указанными размером и расположением, а также новым sample model и буфером данных.
Throws:
RasterFormatException - если w или h меньше или равны нулю, или вычисление x + w или y + h приводит к переполнению целого числа

createTranslatedChild

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

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

getBounds

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

getMinX

public final int getMinX()
Возвращает минимальную допустимую координату X Raster.
Returns:
минимальная координата x этого Raster.

getMinY

public final int getMinY()
Возвращает минимальную допустимую координату Y Raster.
Returns:
минимальная координата y этого Raster.

getWidth

public final int getWidth()
Возвращает ширину Raster в пикселях.
Returns:
ширина этого Raster.

getHeight

public final int getHeight()
Возвращает высоту Raster в пикселях.
Returns:
высота этого Raster.

getNumBands

public final int getNumBands()
Возвращает количество полос (выборка на пиксель) в этом Raster.
Returns:
количество полос этого Raster.

getNumDataElements

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

getTransferType

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

getDataBuffer

public DataBuffer getDataBuffer()
Возвращает DataBuffer, связанный с этим Raster.
Returns:
DataBuffer этого Raster.

getSampleModel

public SampleModel getSampleModel()
Возвращает SampleModel, описывающий расположение данных изображения.
Returns:
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, если координаты находятся вне границ. Однако явное проверка границ не гарантируется.
Параметры:
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, 2023, 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/21/docs/api/java.desktop/java/awt/image/Raster.html

Spec-Zone.ru

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