Spec-Zone.ru › OpenJDK 27

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

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

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

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

Все конструкторы защищённые. Правильный способ создать Raster — использовать один из статических методов create, определённых в этом классе. Эти методы создают экземпляры Raster со стандартными SampleModel типа 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 с указанными 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, что и этот Raster, но с другим расположением.
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 в пикселях.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект какому-либо другому объекту.
protected void finalize()
Устарело, подлежит удалению: этот элемент API может быть удалён в будущей версии.
Финализация объявлена устаревшей и подлежит удалению в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

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

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 задается точкой origin, а его размер совпадает с размером SampleModel. Автоматически создается DataBuffer, достаточно большой для описания Raster.
Параметры:
sampleModel — SampleModel, задающий компоновку
origin — Point, задающая начало координат
Исключения:
RasterFormatException — если вычисление origin.x + sampleModel.getWidth() или origin.y + sampleModel.getHeight() приводит к переполнению целого числа
NullPointerException — если sampleModel или origin имеет значение null

Raster

protected Raster(SampleModel sampleModel, DataBuffer dataBuffer, Point origin)
Создает Raster с заданными SampleModel и DataBuffer. Верхний левый угол Raster задается точкой origin, а его размер совпадает с размером SampleModel. DataBuffer не инициализируется и должен быть совместим с SampleModel.
Параметры:
sampleModel — SampleModel, задающий компоновку
dataBuffer — DataBuffer, содержащий данные изображения
origin — Point, задающая начало координат
Исключения:
RasterFormatException — если вычисление origin.x + sampleModel.getWidth() или origin.y + sampleModel.getHeight() приводит к переполнению целого числа
NullPointerException — если sampleModel или origin имеет значение null

Raster

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

Обратите внимание: чередующиеся Rasters DataBuffer.TYPE_INT не поддерживаются. Чтобы создать однополосный Raster типа 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 и bands больше 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.length.

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

Обратите внимание: чередующиеся Rasters DataBuffer.TYPE_INT не поддерживаются. Чтобы создать однополосный Raster типа 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
IllegalArgumentException — если w * pixelStride больше scanlineStride
IllegalArgumentException — если размер данных, необходимый для хранения всех строк изображения, больше Integer.MAX_VALUE
NullPointerException — если bandOffsets имеет значение null
IllegalArgumentException — если какой-либо элемент bandOffsets больше pixelStride или scanlineStride

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.length и bandOffsets.length, которые должны совпадать.

Верхний левый угол 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
IllegalArgumentException — если длины bankIndices и bandOffsets различаются.
IllegalArgumentException — если размер данных, необходимый для хранения всех строк банка изображения, больше Integer.MAX_VALUE
NullPointerException — если bandOffsets имеет значение null

createPackedRaster

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

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

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

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

createPackedRaster

public static WritableRaster createPackedRaster(int dataType, int w, int h, int bands, int bitsPerBand, Point location)
Создает Raster на основе упакованной модели SampleModel с указанными типом данных, шириной, высотой, количеством полос и числом битов на полосу. Если количество полос равно единице, SampleModel будет иметь тип MultiPixelPackedSampleModel.

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

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

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

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

createInterleavedRaster

public static WritableRaster createInterleavedRaster(DataBuffer dataBuffer, int w, int h, int scanlineStride, int pixelStride, int[] bandOffsets, Point location)
Создает Raster на основе PixelInterleavedSampleModel с указанными DataBuffer, шириной, высотой, шагом сканирования строки, шагом пикселя и смещениями полос. Количество полос определяется по bandOffsets.length. Верхний левый угол Raster задается аргументом location. Если location имеет значение null, используется (0, 0).

Обратите внимание: чередующиеся Rasters DataBuffer.TYPE_INT не поддерживаются. Чтобы создать однополосный 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 содержит больше одного банка.
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
IllegalArgumentException — если какой-либо элемент bandOffsets больше pixelStride или scanlineStride

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 — если длины bankIndices и bandOffsets различаются.
ArrayIndexOutOfBoundsException — если какой-либо элемент bankIndices больше или равен количеству полос в dataBuffer
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, шириной, высотой, шагом сканирования строки и масками полос.
Исключения:
NullPointerException — если bandMasks имеет значение null
IllegalArgumentException — если w и h не оба больше 0
IllegalArgumentException — если произведение w и h больше Integer.MAX_VALUE
RasterFormatException — если вычисление 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, шириной, высотой и количеством битов на пиксель.
Исключения:
IllegalArgumentException — если w и h не оба больше 0
IllegalArgumentException — если произведение w и h больше Integer.MAX_VALUE
RasterFormatException — если вычисление location.x + w или location.y + h приводит к переполнению целого числа
IllegalArgumentException — если dataType не относится к поддерживаемым типам данных: DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT
RasterFormatException — если dataBuffer содержит больше одного банка.
RasterFormatException — если bitsPixel меньше 1, не является степенью 2 или превышает размер элемента 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. Верхний левый угол растра задается аргументом location. Если location равен null, будет использоваться (0, 0).
Параметры:
sm — указанная SampleModel
location — верхний левый угол WritableRaster
Возвращает:
WritableRaster с указанными SampleModel и местоположением.
Исключения:
RasterFormatException — если вычисление location.x + sm.getWidth() или location.y + sm.getHeight() приводит к переполнению целого числа

createWritableRaster

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

getParent

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

getSampleModelTranslateX

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

getSampleModelTranslateY

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

createCompatibleWritableRaster

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

createCompatibleWritableRaster

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

createCompatibleWritableRaster

public WritableRaster createCompatibleWritableRaster(Rectangle rect)
Создает совместимый WritableRaster с местоположением (minX, minY) и размером (width, height), заданными параметром rect, с новой моделью SampleModel и новым инициализированным буфером DataBuffer.
Параметры:
rect — Rectangle, задающий размер и местоположение WritableRaster
Возвращает:
совместимый WritableRaster указанного размера и местоположения с новой моделью SampleModel и буфером DataBuffer.
Исключения:
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 и буфером DataBuffer.
Исключения:
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, доступную через его метод getParent().

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

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

Параметр bandList позволяет определить новый Raster так, чтобы он содержал только подмножество полос текущего Raster, возможно, в другом порядке. Если 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 растра.
Возвращает:
минимальную координату x этого Raster.

getMinY

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

getWidth

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

getHeight

public final int getHeight()
Возвращает высоту растра в пикселях.
Возвращает:
высоту этого 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()
Возвращает связанный с этим Raster буфер DataBuffer.
Возвращает:
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. Однако явная проверка границ не гарантируется. Если входной объект не равен null и ссылается не на массив типа TransferType, будет вызвано исключение ClassCastException.
Параметры:
x — координата X местоположения пикселя
y — координата Y местоположения пикселя
outData — ссылка на объект, содержащий массив типа, определяемого методом getTransferType(), и длины getNumDataElements(). Если значение равно null, будет выделен массив подходящего типа и размера
Возвращает:
ссылку на объект, содержащий массив типа, определяемого методом getTransferType(), с данными запрошенного пикселя.
Исключения:
ArrayIndexOutOfBoundsException — если координаты находятся за пределами допустимого диапазона или outData недостаточно велик для хранения результата.
См. также:
  • SampleModel.getDataElements(int, int, Object, DataBuffer)

getDataElements

public Object getDataElements(int x, int y, int w, int h, Object outData)
Возвращает данные пикселей указанного прямоугольника в примитивном массиве типа TransferType. Для данных изображений, поддерживаемых API Java 2D, это будет один из типов DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные могут возвращаться в упакованном формате, что повышает эффективность передачи. Если координаты находятся за пределами допустимого диапазона, может быть вызвано исключение ArrayIndexOutOfBoundsException. Однако явная проверка границ не гарантируется. Если входной объект не равен null и ссылается не на массив типа TransferType, будет вызвано исключение ClassCastException.
Параметры:
x — координата X местоположения верхнего левого пикселя
y — координата Y местоположения верхнего левого пикселя
w — ширина прямоугольника пикселей
h — высота прямоугольника пикселей
outData — ссылка на объект, содержащий массив типа, определяемого методом getTransferType(), и длины w*h*getNumDataElements(). Если значение равно null, будет выделен массив подходящего типа и размера.
Возвращает:
ссылку на объект, содержащий массив типа, определяемого методом getTransferType(), с данными запрошенных пикселей.
Исключения:
ArrayIndexOutOfBoundsException — если координаты находятся за пределами допустимого диапазона или outData недостаточно велик для хранения результата.
См. также:
  • SampleModel.getDataElements(int, int, int, int, Object, DataBuffer)

getPixel

public int[] getPixel(int x, int y, int[] iArray)
Возвращает значения отсчетов указанного пикселя в массиве int. Если координаты находятся за пределами допустимого диапазона, может быть вызвано исключение ArrayIndexOutOfBoundsException. Однако явная проверка границ не гарантируется.
Параметры:
x — координата X местоположения пикселя
y — координата Y местоположения пикселя
iArray — необязательный предварительно выделенный массив int
Возвращает:
значения отсчетов указанного пикселя.
Исключения:
ArrayIndexOutOfBoundsException — если координаты находятся за пределами допустимого диапазона или iArray недостаточно велик для хранения результата.

getPixel

public float[] getPixel(int x, int y, float[] fArray)
Возвращает значения отсчетов указанного пикселя в массиве float. Если координаты находятся за пределами допустимого диапазона, может быть вызвано исключение ArrayIndexOutOfBoundsException. Однако явная проверка границ не гарантируется.
Параметры:
x — координата X местоположения пикселя
y — координата Y местоположения пикселя
fArray — необязательный предварительно выделенный массив float
Возвращает:
значения отсчетов указанного пикселя.
Исключения:
ArrayIndexOutOfBoundsException — если координаты находятся за пределами допустимого диапазона или fArray недостаточно велик для хранения результата.

getPixel

public double[] getPixel(int x, int y, double[] dArray)
Возвращает значения отсчетов указанного пикселя в массиве double. Если координаты находятся за пределами допустимого диапазона, может быть вызвано исключение ArrayIndexOutOfBoundsException. Однако явная проверка границ не гарантируется.
Параметры:
x — координата X местоположения пикселя
y — координата Y местоположения пикселя
dArray — необязательный предварительно выделенный массив double
Возвращает:
значения отсчетов указанного пикселя.
Исключения:
ArrayIndexOutOfBoundsException — если координаты находятся за пределами допустимого диапазона или dArray недостаточно велик для хранения результата.

getPixels

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

getPixels

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

getPixels

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

getSample

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

getSampleFloat

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

getSampleDouble

public double getSampleDouble(int x, int y, int b)
Возвращает значение отсчета указанной полосы пикселя с координатами (x,y) как double. Если координаты находятся за пределами допустимого диапазона, может быть вызвано исключение ArrayIndexOutOfBoundsException. Однако явная проверка границ не гарантируется.
Параметры:
x — координата X местоположения пикселя
y — координата Y местоположения пикселя
b — возвращаемая полоса
Возвращает:
значение отсчета указанной полосы пикселя с указанными координатами.
Исключения:
ArrayIndexOutOfBoundsException — если координаты или индекс полосы находятся за пределами допустимого диапазона.

getSamples

public int[] getSamples(int x, int y, int w, int h, int b, int[] iArray)
Возвращает отсчеты указанной полосы указанного прямоугольника пикселей в массиве int, по одному отсчету на элемент массива. Если координаты находятся за пределами допустимого диапазона, может быть вызвано исключение ArrayIndexOutOfBoundsException. Однако явная проверка границ не гарантируется.
Параметры:
x — координата X местоположения верхнего левого пикселя
y — координата Y местоположения верхнего левого пикселя
w — ширина прямоугольника пикселей
h — высота прямоугольника пикселей
b — возвращаемая полоса
iArray — необязательный предварительно выделенный массив int
Возвращает:
отсчеты указанной полосы указанного прямоугольника пикселей.
Исключения:
ArrayIndexOutOfBoundsException — если координаты или индекс полосы находятся за пределами допустимого диапазона либо iArray недостаточно велик для хранения результата.

getSamples

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

getSamples

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

Сообщить об ошибке или предложить улучшение
Для получения дополнительных справочных материалов по API и документации для разработчиков см. Документацию Java SE, которая содержит более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

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

Spec-Zone.ru

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