Класс Raster
- java.lang.Object
-
- java.awt.image.Raster
- Прямые известные подклассы:
- WritableRaster
public class Raster extends Object
Класс, представляющий прямоугольный массив пикселей. Объект Raster инкапсулирует DataBuffer, хранящий значения выборок, и SampleModel, описывающий способ определения значения конкретной выборки в DataBuffer.
Raster определяет значения пикселей, занимающих определённую прямоугольную область на плоскости, не обязательно включающую (0, 0). Прямоугольник, известный как граничная область Raster и доступный посредством метода getBounds, определяется значениями minX, minY, width и height. Значения minX и minY определяют координаты левого верхнего угла Raster. Ссылки на пиксели за пределами граничной области могут привести к выбрасыванию исключения или ссылкам на непредназначенные элементы связанного с Raster DataBuffer. Пользователь несет ответственность за предотвращение доступа к таким пикселям.
SampleModel описывает, как выборки Raster хранятся в элементах примитивного массива DataBuffer. Выборки могут храниться по одной на каждый элемент данных, как в PixelInterleavedSampleModel или BandedSampleModel, или упаковываться по несколько в один элемент, как в SinglePixelPackedSampleModel или MultiPixelPackedSampleModel. SampleModel также управляет расширением знака выборок, позволяя хранить беззнаковые данные в таких знаковых типах данных Java, как byte, short и int.
Хотя Raster может находиться в любом месте на плоскости, SampleModel использует простую систему координат, начинающуюся с (0, 0). Поэтому Raster содержит коэффициент перевода, позволяющий сопоставлять расположения пикселей между системой координат Raster и SampleModel. Перевод из системы координат SampleModel в систему координат Raster можно получить с помощью методов getSampleModelTranslateX и getSampleModelTranslateY.
Raster может совместно использовать DataBuffer с другим Raster как явно, так и с помощью методов createChild и createTranslatedChild. Rasters, созданные этими методами, могут вернуть ссылку на Raster, из которого они были созданы, посредством метода getParent. Для Raster, который не был создан с помощью вызова createTranslatedChild или createChild, getParent вернет null.
Метод createTranslatedChild возвращает новый Raster, который совместно использует все данные текущего Raster, но занимает прямоугольную область той же ширины и высоты, но с другой точкой начала. Например, если родительский Raster занимал область (10, 10) до (100, 100), а Raster с переводом был определён как начинающийся в (50, 50), то пиксель (20, 20) родительского и пиксель (60, 60) дочернего занимают одно и то же место в DataBuffer, совместно используемом этими двумя Rasters. В первом случае к координатам пикселя необходимо добавить (-10, -10) для получения соответствующих координат SampleModel, а во втором случае (-50, -50).
Перевод между родительским и дочерним Raster можно определить, вычитав значения child's 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. |
Конструкторы
| Модификатор | Конструктор и описание |
|---|---|
protected |
Raster(SampleModel sampleModel,
DataBuffer dataBuffer,
Point origin) Конструирует Raster с заданным SampleModel и DataBuffer. |
protected |
Raster(SampleModel sampleModel,
DataBuffer dataBuffer,
Rectangle aRegion,
Point sampleModelTranslate,
Raster parent) Конструирует Raster с заданным SampleModel, DataBuffer и родителем. |
protected |
Raster(SampleModel sampleModel,
Point origin) Конструирует Raster с заданным SampleModel. |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
static WritableRaster |
createBandedRaster(DataBuffer dataBuffer,
int w,
int h,
int scanlineStride,
int[] bankIndices,
int[] bandOffsets,
Point location) Создаёт Raster на основе BandedSampleModel с указанным DataBuffer, шириной, высотой, шагом строки сканирования, индексами банка и смещениями каналов. |
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 с указанным типом данных, шириной, высотой и количеством каналов. |
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(DataBuffer dataBuffer,
int w,
int h,
int scanlineStride,
int pixelStride,
int[] bandOffsets,
Point location) Создаёт Raster на основе PixelInterleavedSampleModel с указанным 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 |
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 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 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. |
int |
getHeight() Возвращает высоту Raster в пикселях. |
int |
getMinX() Возвращает минимальную допустимую координату X Raster. |
int |
getMinY() Возвращает минимальную допустимую координату Y Raster. |
int |
getNumBands() Возвращает количество каналов (образцов на пиксель) в этом Raster. |
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, описывающий расположение данных изображения. |
int |
getSampleModelTranslateX() Возвращает смещение X из системы координат SampleModel в систему координат Raster. |
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, по одному образцу на элемент массива. |
int |
getTransferType() Возвращает TransferType, используемый для передачи пикселей с помощью методов getDataElements и setDataElements. |
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 создается автоматически.
- Параметры:
-
sampleModel- SampleModel, определяющий расположение -
origin- Точка, определяющая начало координат - Исключения:
-
RasterFormatException- если вычислениеorigin.x + sampleModel.getWidth()илиorigin.y + sampleModel.getHeight()приводит к переполнению целого числа -
NullPointerException- еслиsampleModelилиoriginравны null
Raster
protected Raster(SampleModel sampleModel,
DataBuffer dataBuffer,
Point origin) Создает Raster с заданным SampleModel и DataBuffer. Левый верхний угол Raster находится в начале координат и имеет тот же размер, что и SampleModel. DataBuffer не инициализирован и должен быть совместим с SampleModel.
- Параметры:
-
sampleModel- SampleModel, определяющий расположение -
dataBuffer- DataBuffer, содержащий данные изображения -
origin- Точка, определяющая начало координат - Исключения:
-
RasterFormatException- если вычислениеorigin.x + sampleModel.getWidth()илиorigin.y + sampleModel.getHeight()приводит к переполнению целого числа -
NullPointerException- еслиsampleModelилиoriginравны null
Raster
protected Raster(SampleModel sampleModel,
DataBuffer dataBuffer,
Rectangle aRegion,
Point sampleModelTranslate,
Raster parent) Создает Raster с заданным SampleModel, DataBuffer и родительским элементом. aRegion определяет ограничивающую прямоугольную область нового Raster. При переводе в координатную систему базового Raster, aRegion должна быть содержащейся в базовом Raster. (Базовый Raster — это предок Raster, у которого нет родителя.) sampleModelTranslate определяет значения sampleModelTranslateX и sampleModelTranslateY нового Raster. Обратите внимание, что этот конструктор, как правило, вызывается другими конструкторами или методами создания, а не используется напрямую.
- Параметры:
-
sampleModel- SampleModel, определяющий расположение -
dataBuffer- DataBuffer, содержащий данные изображения -
aRegion- Прямоугольник, определяющий область изображения -
sampleModelTranslate- Точка, определяющая сдвиг от координат SampleModel к координатам Raster -
parent- Родительский элемент (если есть) этого Raster - Исключения:
-
NullPointerException- если любой изsampleModel,dataBuffer,aRegionилиsampleModelTranslateравен null -
RasterFormatException- если уaRegionширина или высота меньше или равны нулю, или вычислениеaRegion.x + aRegion.widthилиaRegion.y + aRegion.heightприводит к переполнению целого числа
Методы
createInterleavedRaster
public static WritableRaster createInterleavedRaster(int dataType,
int w,
int h,
int bands,
Point location) Создает Raster на основе PixelInterleavedSampleModel с указанным типом данных, шириной, высотой и количеством полос.
Левый верхний угол Raster задается параметром location. Если location равен null, используется (0, 0). Параметр dataType должен быть одним из перечисленных значений, определенных в классе DataBuffer.
Обратите внимание, что интерлинованные DataBuffer.TYPE_INT Raster не поддерживаются. Для создания Raster с 1 полосой типа DataBuffer.TYPE_INT, используйте Raster.createPackedRaster().
В настоящее время поддерживаются только типы данных TYPE_BYTE и TYPE_USHORT.
- Параметры:
-
dataType- тип данных для хранения образцов -
w- ширина изображения в пикселях -
h- высота изображения в пикселях -
bands- количество полос -
location- верхний левый уголRaster - Возвращает:
- объект WritableRaster с заданным типом данных, шириной, высотой и количеством полос.
- Исключения:
-
RasterFormatException- еслиwилиhменьше или равно нулю, или вычислениеlocation.x + wилиlocation.y + hприводит к переполнению целого числа
createInterleavedRaster
public static WritableRaster createInterleavedRaster(int dataType,
int w,
int h,
int scanlineStride,
int pixelStride,
int[] bandOffsets,
Point location) Создает Raster на основе PixelInterleavedSampleModel с указанным типом данных, шириной, высотой, шагом строки сканирования, шагом пикселя и смещениями полос. Количество полос определяется из bandOffsets.length.
Левый верхний угол Raster задается параметром location. Если location равен null, используется (0, 0). Параметр dataType должен быть одним из перечисленных значений, определенных в классе DataBuffer.
Обратите внимание, что интерлинованные DataBuffer.TYPE_INT Raster не поддерживаются. Для создания Raster с 1 полосой типа DataBuffer.TYPE_INT, используйте Raster.createPackedRaster().
В настоящее время поддерживаются только типы данных TYPE_BYTE и TYPE_USHORT.
- Параметры:
-
dataType- тип данных для хранения образцов -
w- ширина изображения в пикселях -
h- высота изображения в пикселях -
scanlineStride- шаг строки сканирования -
pixelStride- шаг пикселя -
bandOffsets- смещения всех полос -
location- верхний левый уголRaster - Возвращает:
- объект WritableRaster с заданным типом данных, шириной, высотой, шагом строки сканирования, шагом пикселя и смещениями полос.
- Исключения:
-
RasterFormatException- еслиwилиhменьше или равно нулю, или вычислениеlocation.x + wилиlocation.y + hприводит к переполнению целого числа -
IllegalArgumentException- еслиdataTypeне является одним из поддерживаемых типов данных, которые являютсяDataBuffer.TYPE_BYTE, илиDataBuffer.TYPE_USHORT.
createBandedRaster
public static WritableRaster createBandedRaster(int dataType,
int w,
int h,
int bands,
Point location) Создает Raster на основе BandedSampleModel с указанным типом данных, шириной, высотой и количеством полос.
Левый верхний угол Raster задается параметром location. Если location равен null, используется (0, 0). Параметр dataType должен быть одним из перечисленных значений, определенных в классе DataBuffer.
В настоящее время поддерживаются только типы данных TYPE_BYTE, TYPE_USHORT и TYPE_INT.
- Параметры:
-
dataType- тип данных для хранения образцов -
w- ширина изображения в пикселях -
h- высота изображения в пикселях -
bands- количество полос -
location- верхний левый уголRaster - Возвращает:
- объект WritableRaster с заданным типом данных, шириной, высотой и количеством полос.
- Исключения:
-
RasterFormatException- еслиwилиhменьше или равно нулю, или вычислениеlocation.x + wилиlocation.y + hприводит к переполнению целого числа -
ArrayIndexOutOfBoundsException- еслиbandsменьше 1
createBandedRaster
public static WritableRaster createBandedRaster(int dataType,
int w,
int h,
int scanlineStride,
int[] bankIndices,
int[] bandOffsets,
Point location) Создает Raster на основе BandedSampleModel с указанным типом данных, шириной, высотой, шагом строки сканирования, индексами блоков и смещениями полос. Количество полос определяется из bankIndices.length и bandOffsets.length, которые должны быть одинаковыми.
Левый верхний угол Raster задается параметром location. Параметр dataType должен быть одним из перечисленных значений, определенных в классе DataBuffer.
В настоящее время поддерживаются только типы данных TYPE_BYTE, TYPE_USHORT и TYPE_INT.
- Параметры:
-
dataType- тип данных для хранения образцов -
w- ширина изображения в пикселях -
h- высота изображения в пикселях -
scanlineStride- шаг строки сканирования -
bankIndices- индексы блоков для каждой полосы -
bandOffsets- смещения всех полос -
location- верхний левый уголRaster - Возвращает:
- объект WritableRaster с заданным типом данных, шириной, высотой, шагом строки сканирования, индексами блоков и смещениями полос.
- Исключения:
-
RasterFormatException- еслиwилиhменьше или равно нулю, или вычислениеlocation.x + wилиlocation.y + hприводит к переполнению целого числа -
IllegalArgumentException- еслиdataTypeне является одним из поддерживаемых типов данных, которые являютсяDataBuffer.TYPE_BYTE,DataBuffer.TYPE_USHORTилиDataBuffer.TYPE_INT -
ArrayIndexOutOfBoundsException- еслиbankIndicesилиbandOffsetsnull
createPackedRaster
public static WritableRaster createPackedRaster(int dataType,
int w,
int h,
int[] bandMasks,
Point location) Создаёт растр на основе SinglePixelPackedSampleModel с указанным типом данных, шириной, высотой и масками каналов. Количество каналов определяется по длине массива bandMasks.
Верхний левый угол растра задаётся аргументом 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) Создаёт растр на основе упакованного SampleModel с указанным типом данных, шириной, высотой, количеством каналов и битами на канал. Если количество каналов равно одному, SampleModel будет MultiPixelPackedSampleModel.
Если количество каналов больше одного, SampleModel будет SinglePixelPackedSampleModel, при этом каждый канал будет иметь bitsPerBand битов. В любом случае, должны быть соблюдены требования к dataType и bitsPerBand, налагаемые соответствующим SampleModel.
Верхний левый угол растра задаётся аргументом 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) Создаёт растр на основе PixelInterleavedSampleModel с указанным DataBuffer, шириной, высотой, шагом по строке, шагом по пикселю и смещениями каналов. Количество каналов определяется по длине массива bandOffsets. Верхний левый угол растра задаётся аргументом location. Если location равно null, используется (0, 0).
Обратите внимание, что интерлинованные DataBuffer.TYPE_INT растры не поддерживаются. Для создания растра с 1 каналом типа DataBuffer.TYPE_INT, используйте Raster.createPackedRaster().
- Параметры:
-
dataBuffer-DataBuffer, содержащий данные изображения -
w- ширина в пикселях данных изображения -
h- высота в пикселях данных изображения -
scanlineStride- шаг по строке данных изображения -
pixelStride- шаг по пикселю данных изображения -
bandOffsets- смещения всех каналов -
location- верхний левый уголRaster - Возвращает:
- объект WritableRaster с указанными
DataBuffer, шириной, высотой, шагом по строке, шагом по пикселю и смещениями каналов. - Исключения:
-
RasterFormatException- еслиwилиhменьше или равно нулю, или вычислениеlocation.x + wилиlocation.y + hприводит к переполнению целого числа -
IllegalArgumentException- еслиdataTypeне является одним из поддерживаемых типов данных, а именноDataBuffer.TYPE_BYTE,DataBuffer.TYPE_USHORT -
RasterFormatException- еслиdataBufferсодержит более одного банка. -
NullPointerException- еслиdataBufferравно null
createBandedRaster
public static WritableRaster createBandedRaster(DataBuffer dataBuffer,
int w,
int h,
int scanlineStride,
int[] bankIndices,
int[] bandOffsets,
Point location) Создаёт растр на основе BandedSampleModel с указанным DataBuffer, шириной, высотой, шагом по строке, индексами банков и смещениями каналов. Количество каналов определяется по длине массивов bankIndices и bandOffsets, которые должны быть одинаковыми. Верхний левый угол растра задаётся аргументом location. Если location равно null, используется (0, 0).
- Параметры:
-
dataBuffer-DataBufferсодержащий данные изображения -
w- ширина в пикселях данных изображения -
h- высота в пикселях данных изображения -
scanlineStride- шаг по строке данных изображения -
bankIndices- индексы банков для каждого канала -
bandOffsets- смещения всех каналов -
location- верхний левый уголRaster - Возвращает:
- объект WritableRaster с указанными
DataBuffer, шириной, высотой, шагом по строке, индексами банков и смещениями каналов. - Исключения:
-
RasterFormatException- еслиwилиhменьше или равно нулю, или вычислениеlocation.x + wилиlocation.y + hприводит к переполнению целого числа -
IllegalArgumentException- еслиdataTypeне является одним из поддерживаемых типов данных, а именноDataBuffer.TYPE_BYTE,DataBuffer.TYPE_USHORTилиDataBuffer.TYPE_INT -
NullPointerException- еслиdataBufferравно null
createPackedRaster
public static WritableRaster createPackedRaster(DataBuffer dataBuffer,
int w,
int h,
int scanlineStride,
int[] bandMasks,
Point location) Создаёт растр на основе SinglePixelPackedSampleModel с указанным DataBuffer, шириной, высотой, шагом по строке и масками каналов. Количество каналов определяется по длине массива bandMasks. Верхний левый угол растра задаётся аргументом 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- еслиdataTypeне является одним из поддерживаемых типов данных, а именноDataBuffer.TYPE_BYTE,DataBuffer.TYPE_USHORTилиDataBuffer.TYPE_INT -
RasterFormatException- еслиdataBufferсодержит более одного банка. -
NullPointerException- еслиdataBufferравно null
createPackedRaster
public static WritableRaster createPackedRaster(DataBuffer dataBuffer,
int w,
int h,
int bitsPerPixel,
Point location) Создаёт растр на основе MultiPixelPackedSampleModel с указанным DataBuffer, шириной, высотой и битами на пиксель. Верхний левый угол растра задаётся аргументом 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) Создаёт растр с указанным SampleModel и DataBuffer. Верхний левый угол растра задаётся аргументом location. Если location равно null, используется (0, 0).
- Параметры:
-
sm- указанныйSampleModel -
db- указанныйDataBuffer -
location- верхний левый уголRaster - Возвращает:
- a
Rasterс указаннымиSampleModel,DataBuffer, и расположением. - Выбрасывает:
-
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 - Возвращает:
- a
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 - Возвращает:
- a
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 (если есть) этого 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с тем же sample model и новым data buffer.
createCompatibleWritableRaster
public WritableRaster createCompatibleWritableRaster(int w,
int h) Создаёт совместимый WritableRaster заданного размера, нового SampleModel и нового инициализированного DataBuffer.
- Параметры:
-
w- заданная ширина новогоWritableRaster -
h- заданная высота новогоWritableRaster - Возвращает:
- совместимый
WritableRasterзаданного размера и нового sample model и data buffer. - Выбрасывает:
-
RasterFormatException- если ширина или высота меньше или равны нулю.
createCompatibleWritableRaster
public WritableRaster createCompatibleWritableRaster(Rectangle rect)
Создаёт совместимый WritableRaster с расположением (minX, minY) и размером (width, height), заданными rect, новым SampleModel и новым инициализированным DataBuffer.
- Параметры:
-
rect-Rectangle, который задаёт размер и расположениеWritableRaster - Возвращает:
- совместимый
WritableRasterс указанным размером и расположением и новым sample model и data buffer. - Выбрасывает:
-
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с указанным размером и расположением и новым sample model и data buffer. - Выбрасывает:
-
RasterFormatException- еслиwилиhменьше или равны нулю, или вычислениеx + wилиy + hприводит к переполнению целого числа
createTranslatedChild
public Raster createTranslatedChild(int childMinX,
int childMinY) Создаёт Raster с тем же размером, SampleModel и DataBuffer, что и текущий, но с другим расположением. Новый Raster будет иметь ссылку на текущий Raster, доступную через метод getParent().
- Параметры:
-
childMinX- координата X верхнего левого угла новогоRaster -
childMinY- координата Y верхнего левого угла новогоRaster - Возвращает:
- новый
Rasterс тем же размером, SampleModel и DataBuffer, что и этотRaster, но с заданным расположением. - Выбрасывает:
-
RasterFormatException- если вычислениеchildMinX + this.getWidth()илиchildMinY + this.getHeight()приводит к переполнению целого числа
createChild
public Raster createChild(int parentX,
int parentY,
int width,
int height,
int childMinX,
int childMinY,
int[] bandList) Возвращает новый Raster, который разделяет весь или часть DataBuffer этого Raster. Новый Raster будет иметь ссылку на текущий Raster, доступную через метод getParent().
Параметры parentX, parentY, width и height образуют прямоугольник в координатном пространстве этого Raster, указывающий область пикселей, которые будут совместно использоваться. Ошибка будет выброшена, если этот прямоугольник не содержится в границах текущего Raster.
Новый Raster может дополнительно быть перемещён в другую систему координат для плоскости, отличную от используемой текущим Raster. Параметры childMinX и childMinY задают новые (x, y) координаты верхнего левого пикселя возвращаемого Raster; координата (childMinX, childMinY) в новом Raster будет соответствовать той же пикселю, что и координата (parentX, parentY) в текущем Raster.
Новый Raster может быть определён для включения только подмножества каналов текущего Raster, возможно, в переупорядоченном виде, с помощью параметра bandList. Если bandList равен null, предполагается, что он включает все каналы текущего Raster в их текущем порядке.
Для создания нового Raster, содержащего подобласть текущего Raster, но разделяющего его систему координат и каналы, этот метод должен быть вызван с childMinX равным parentX, childMinY равным parentY, и bandList равным null.
- Параметры:
-
parentX- Координата X верхнего левого угла в координатах этого Raster -
parentY- Координата Y верхнего левого угла в координатах этого Raster -
width- Ширина области, начинающейся в (parentX, parentY) -
height- Высота области, начинающейся в (parentX, parentY). -
childMinX- Координата X верхнего левого угла возвращаемого Raster -
childMinY- Координата Y верхнего левого угла возвращаемого Raster -
bandList- Массив индексов каналов, или null для использования всех каналов - Возвращает:
- новый
Raster. - Выбрасывает:
-
RasterFormatException- если указанная подобласть находится вне границ растра. -
RasterFormatException- еслиwidthилиheightменьше или равно нулю, или вычисление любого изparentX + width,parentY + height,childMinX + width, илиchildMinY + heightприводит к переполнению целого числа
getBounds
public Rectangle getBounds()
Возвращает прямоугольник границ этого Raster. Эта функция возвращает ту же информацию, что и getMinX/MinY/Width/Height.
- Возвращает:
- прямоугольник границ этого
Raster.
getMinX
public final int getMinX()
Возвращает минимальную допустимую координату X растра.
- Возвращает:
- минимальная координата 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.
getNumDataElements
public final int getNumDataElements()
Возвращает количество элементов данных, необходимых для передачи одного пикселя с помощью методов getDataElements и setDataElements. При передаче пикселей с помощью этих методов они могут передаваться в упакованном или распакованном формате в зависимости от реализации базовой модели SampleModel. Используя эти методы, пиксели передаются как массив из getNumDataElements() элементов примитивного типа, заданного getTransferType(). TransferType может совпадать или не совпадать с типом данных хранилища DataBuffer.
- Возвращает:
- количество элементов данных.
getTransferType
public final int getTransferType()
Возвращает TransferType, используемый для передачи пикселей с помощью методов getDataElements и setDataElements. При передаче пикселей с помощью этих методов они могут передаваться в упакованном или распакованном формате в зависимости от реализации базовой модели SampleModel. Используя эти методы, пиксели передаются как массив из getNumDataElements() элементов примитивного типа, заданного getTransferType(). TransferType может совпадать или не совпадать с типом данных хранилища DataBuffer. TransferType будет одним из типов, определенных в DataBuffer.
- Возвращает:
- этот тип передачи.
getDataBuffer
public DataBuffer getDataBuffer()
Возвращает DataBuffer, связанный с этим растром.
- Возвращает:
DataBufferэтогоRaster.
getSampleModel
public SampleModel getSampleModel()
Возвращает SampleModel, который описывает расположение данных изображения.
- Возвращает:
SampleModelэтогоRaster.
getDataElements
public Object getDataElements(int x,
int y,
Object outData) Возвращает данные для одного пикселя в примитивном массиве типа TransferType. Для данных изображения, поддерживаемых API Java 2D(tm), это будет один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные могут возвращаться в упакованном формате, что повышает эффективность передачи данных. Исключение ArrayIndexOutOfBoundsException может быть выброшено, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется. Исключение ClassCastException будет выброшено, если входной объект не равен null и ссылается на что-либо, отличное от массива TransferType.
- Параметры:
-
x- Координата X местоположения пикселя -
y- Координата Y местоположения пикселя -
outData- Ссылка на объект на массив типа, определенного getTransferType(), и длиной getNumDataElements(). Если null, будет выделен массив соответствующего типа и размера - Возвращает:
- Ссылка на объект на массив типа, определенного getTransferType(), с запрошенными данными пикселя.
- Вызывает:
-
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ или если outData слишком мал, чтобы вместить выходные данные. - См. также:
SampleModel.getDataElements(int, int, Object, DataBuffer)
getDataElements
public Object getDataElements(int x,
int y,
int w,
int h,
Object outData) Возвращает данные пикселей для указанного прямоугольника пикселей в примитивном массиве типа TransferType. Для данных изображения, поддерживаемых API Java 2D, это будет один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные могут возвращаться в упакованном формате, что повышает эффективность передачи данных. Исключение ArrayIndexOutOfBoundsException может быть выброшено, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется. Исключение ClassCastException будет выброшено, если входной объект не равен null и ссылается на что-либо, отличное от массива TransferType.
- Параметры:
-
x- Координата X левого верхнего пикселя -
y- Координата Y левого верхнего пикселя -
w- Ширина прямоугольника пикселей -
h- Высота прямоугольника пикселей -
outData- Ссылка на объект на массив типа, определенного getTransferType(), и длиной w*h*getNumDataElements(). Если null, будет выделен массив соответствующего типа и размера. - Возвращает:
- Ссылка на объект на массив типа, определенного getTransferType(), с запрошенными данными пикселя.
- Вызывает:
-
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ или если outData слишком мал, чтобы вместить выходные данные. - См. также:
SampleModel.getDataElements(int, int, int, int, Object, DataBuffer)
getPixel
public int[] getPixel(int x,
int y,
int[] iArray) Возвращает образцы в массиве int для указанного пикселя. Исключение ArrayIndexOutOfBoundsException может быть выброшено, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
- Параметры:
-
x- Координата X местоположения пикселя -
y- Координата Y местоположения пикселя -
iArray- Необязательно предварительно выделенный массив int - Возвращает:
- образцы для указанного пикселя.
- Вызывает:
-
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ или если iArray слишком мал, чтобы вместить выходные данные.
getPixel
public float[] getPixel(int x,
int y,
float[] fArray) Возвращает образцы в массиве float для указанного пикселя. Исключение ArrayIndexOutOfBoundsException может быть выброшено, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
- Параметры:
-
x- Координата X местоположения пикселя -
y- Координата Y местоположения пикселя -
fArray- Необязательно предварительно выделенный массив float - Возвращает:
- образцы для указанного пикселя.
- Вызывает:
-
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ или если fArray слишком мал, чтобы вместить выходные данные.
getPixel
public double[] getPixel(int x,
int y,
double[] dArray) Возвращает образцы в массиве double для указанного пикселя. Исключение ArrayIndexOutOfBoundsException может быть выброшено, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
- Параметры:
-
x- Координата X местоположения пикселя -
y- Координата Y местоположения пикселя -
dArray- Необязательно предварительно выделенный массив double - Возвращает:
- образцы для указанного пикселя.
- Вызывает:
-
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ или если dArray слишком мал, чтобы вместить выходные данные.
getPixels
public int[] getPixels(int x,
int y,
int w,
int h,
int[] iArray) Возвращает массив int, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива. Исключение ArrayIndexOutOfBoundsException может быть выброшено, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
- Параметры:
-
x- Координата X левого верхнего пикселя -
y- Координата Y левого верхнего пикселя -
w- Ширина прямоугольника пикселей -
h- Высота прямоугольника пикселей -
iArray- Необязательно предварительно выделенный массив int - Возвращает:
- образцы для указанного прямоугольника пикселей.
- Вызывает:
-
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ или если iArray слишком мал, чтобы вместить выходные данные.
getPixels
public float[] getPixels(int x,
int y,
int w,
int h,
float[] fArray) Возвращает массив float, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива. Исключение ArrayIndexOutOfBoundsException может быть выброшено, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
- Параметры:
-
x- Координата X местоположения пикселя -
y- Координата Y местоположения пикселя -
w- Ширина прямоугольника пикселей -
h- Высота прямоугольника пикселей -
fArray- Необязательно предварительно выделенный массив float - Возвращает:
- образцы для указанного прямоугольника пикселей.
- Вызывает:
-
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ или если fArray слишком мал, чтобы вместить выходные данные.
getPixels
public double[] getPixels(int x,
int y,
int w,
int h,
double[] dArray) Возвращает массив double, содержащий все образцы для прямоугольника пикселей, по одному образцу на элемент массива. Исключение ArrayIndexOutOfBoundsException может быть выброшено, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
- Параметры:
-
x- Координата X левого верхнего пикселя -
y- Координата Y левого верхнего пикселя -
w- Ширина прямоугольника пикселей -
h- Высота прямоугольника пикселей -
dArray- Необязательно предварительно выделенный массив double - Возвращает:
- образцы для указанного прямоугольника пикселей.
- Вызывает:
-
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ или если dArray слишком мал, чтобы вместить выходные данные.
getSample
public int getSample(int x,
int y,
int b) Возвращает образец в указанной полосе для пикселя, расположенного в точке (x,y), как int. Исключение ArrayIndexOutOfBoundsException может быть выброшено, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
- Параметры:
-
x- Координата X местоположения пикселя -
y- Координата Y местоположения пикселя -
b- Полоса для возврата - Возвращает:
- образец в указанной полосе для пикселя в указанной координате.
- Вызывает:
-
ArrayIndexOutOfBoundsException- если координаты или индекс полосы находятся за пределами границ.
getSampleFloat
public float getSampleFloat(int x,
int y,
int b) Возвращает образец в указанной полосе для пикселя, расположенного в точке (x,y), как float. Исключение ArrayIndexOutOfBoundsException может быть выброшено, если координаты находятся за пределами границ. Однако явная проверка границ не гарантируется.
- Параметры:
-
x- Координата X пикселя -
y- Координата Y пикселя -
b- Номер канала - Возвращает:
- значение выборки в указанном канале для пикселя по заданным координатам.
- Вызывает исключение:
-
ArrayIndexOutOfBoundsException- если координаты или индекс канала находятся вне границ.
getSampleDouble
public double getSampleDouble(int x,
int y,
int b) Возвращает значение выборки в указанном канале для пикселя по координатам (x, y) в формате double. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явное проверка границ не гарантируется.
- Параметры:
-
x- Координата X пикселя -
y- Координата Y пикселя -
b- Номер канала - Возвращает:
- значение выборки в указанном канале для пикселя по заданным координатам.
- Вызывает исключение:
-
ArrayIndexOutOfBoundsException- если координаты или индекс канала находятся вне границ.
getSamples
public int[] getSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray) Возвращает выборки для указанного канала для заданного прямоугольника пикселей в массиве int, по одной выборке на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явное проверка границ не гарантируется.
- Параметры:
-
x- Координата X верхнего левого пикселя -
y- Координата Y верхнего левого пикселя -
w- Ширина прямоугольника пикселей -
h- Высота прямоугольника пикселей -
b- Номер канала -
iArray- Дополнительно выделенный массив int - Возвращает:
- выборки для указанного канала для заданного прямоугольника пикселей.
- Вызывает исключение:
-
ArrayIndexOutOfBoundsException- если координаты или индекс канала находятся вне границ, или если массив iArray слишком мал для хранения результата.
getSamples
public float[] getSamples(int x,
int y,
int w,
int h,
int b,
float[] fArray) Возвращает выборки для указанного канала для заданного прямоугольника пикселей в массиве float, по одной выборке на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явное проверка границ не гарантируется.
- Параметры:
-
x- Координата X верхнего левого пикселя -
y- Координата Y верхнего левого пикселя -
w- Ширина прямоугольника пикселей -
h- Высота прямоугольника пикселей -
b- Номер канала -
fArray- Дополнительно выделенный массив float - Возвращает:
- выборки для указанного канала для заданного прямоугольника пикселей.
- Вызывает исключение:
-
ArrayIndexOutOfBoundsException- если координаты или индекс канала находятся вне границ, или если массив fArray слишком мал для хранения результата.
getSamples
public double[] getSamples(int x,
int y,
int w,
int h,
int b,
double[] dArray) Возвращает выборки для указанного канала для заданного прямоугольника пикселей в массиве double, по одной выборке на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты находятся вне границ. Однако явное проверка границ не гарантируется.
- Параметры:
-
x- Координата X верхнего левого пикселя -
y- Координата Y верхнего левого пикселя -
w- Ширина прямоугольника пикселей -
h- Высота прямоугольника пикселей -
b- Номер канала -
dArray- Дополнительно выделенный массив double - Возвращает:
- выборки для указанного канала для заданного прямоугольника пикселей.
- Вызывает исключение:
-
ArrayIndexOutOfBoundsException- если координаты или индекс канала находятся вне границ, или если массив dArray слишком мал для хранения результата.
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.