Класс SampleModel
- java.lang.Object
-
- java.awt.image.SampleModel
- Прямые известные подклассы:
- ComponentSampleModel, MultiPixelPackedSampleModel, SinglePixelPackedSampleModel
public abstract class SampleModel extends Object
Этот абстрактный класс определяет интерфейс для извлечения выборок пикселей на изображении. Все данные изображения выражаются как набор пикселей. Каждый пиксель состоит из нескольких выборок. Выборка — это данные для одного канала изображения, а канал состоит из всех выборок определённого типа на изображении. Например, пиксель может содержать три выборки, представляющие его красный, зелёный и синий компоненты. На изображении, содержащем этот пиксель, есть три канала. Один канал состоит из всех красных выборок из всех пикселей на изображении. Второй канал состоит из всех зелёных выборок, а оставшийся канал состоит из всех синих выборок. Пиксель может храниться в различных форматах. Например, все выборки из определённого канала могут храниться непрерывно, или все выборки из одного пикселя могут храниться непрерывно.
Подклассы SampleModel указывают типы выборок, которые они могут представлять (например, беззнаковые 8-битные байты, знакомые 16-битные целые числа и т. д.) и могут указывать, как выборки организованы в памяти. В API Java 2D(tm) встроенные операторы обработки изображений могут не работать со всеми возможными типами выборок, но обычно работают со значениями выборок без знака целых чисел 16 бит или меньше. Некоторые операторы поддерживают более широкий спектр типов выборок.
Набор пикселей представлен как Raster, который состоит из DataBuffer и SampleModel. SampleModel позволяет получить доступ к выборкам в DataBuffer и может предоставить низкоуровневую информацию, которую программист может использовать для непосредственного управления выборками и пикселями в DataBuffer.
Этот класс обычно является резервным методом для работы с изображениями. Более эффективный код будет приводить SampleModel к соответствующему подклассу и извлекать необходимую информацию для непосредственного управления пикселями в DataBuffer.
- См. также:
-
DataBuffer,Raster,ComponentSampleModel,PixelInterleavedSampleModel,BandedSampleModel,MultiPixelPackedSampleModel,SinglePixelPackedSampleModel
Сводка полей
| Модификатор и тип | Поле и описание |
|---|---|
protected int |
dataType Тип данных DataBuffer, хранящий данные пикселей. |
protected int |
height Высота в пикселях области данных изображения, описываемой этим SampleModel. |
protected int |
numBands Количество каналов данных изображения, описываемых этим SampleModel. |
protected int |
width Ширина в пикселях области данных изображения, описываемой этим SampleModel. |
Сводка конструкторов
| Конструктор и описание |
|---|
SampleModel(int dataType,
int w,
int h,
int numBands) Конструирует SampleModel со специфицированными параметрами. |
Сводка методов
| Модификатор и тип | Метод и описание |
|---|---|
abstract SampleModel |
createCompatibleSampleModel(int w,
int h) Создаёт SampleModel, описывающий данные в формате этого SampleModel, но с другой шириной и высотой. |
abstract DataBuffer |
createDataBuffer() Создаёт DataBuffer, соответствующий этому SampleModel. |
abstract SampleModel |
createSubsetSampleModel(int[] bands) Создаёт новый SampleModel с подмножеством полос этого SampleModel. |
Object |
getDataElements(int x,
int y,
int w,
int h,
Object obj,
DataBuffer data) Возвращает данные пикселей для указанного прямоугольника пикселей в примитивном массиве типа TransferType. |
abstract Object |
getDataElements(int x,
int y,
Object obj,
DataBuffer data) Возвращает данные для одного пикселя в примитивном массиве типа TransferType. |
int |
getDataType() Возвращает тип данных DataBuffer, хранящий данные пикселей. |
int |
getHeight() Возвращает высоту в пикселях. |
int |
getNumBands() Возвращает общее количество полос данных изображения. |
abstract int |
getNumDataElements() Возвращает количество элементов данных, необходимых для передачи пикселя через методы getDataElements и setDataElements. |
double[] |
getPixel(int x,
int y,
double[] dArray,
DataBuffer data) Возвращает образцы для указанного пикселя в массиве double. |
float[] |
getPixel(int x,
int y,
float[] fArray,
DataBuffer data) Возвращает образцы для указанного пикселя в массиве float. |
int[] |
getPixel(int x,
int y,
int[] iArray,
DataBuffer data) Возвращает образцы для указанного пикселя в массиве int, по одному образцу на элемент массива. |
double[] |
getPixels(int x,
int y,
int w,
int h,
double[] dArray,
DataBuffer data) Возвращает все образцы для прямоугольника пикселей в массиве double, по одному образцу на элемент массива. |
float[] |
getPixels(int x,
int y,
int w,
int h,
float[] fArray,
DataBuffer data) Возвращает все образцы для прямоугольника пикселей в массиве float, по одному образцу на элемент массива. |
int[] |
getPixels(int x,
int y,
int w,
int h,
int[] iArray,
DataBuffer data) Возвращает все образцы для прямоугольника пикселей в массиве int, по одному образцу на элемент массива. |
abstract int |
getSample(int x,
int y,
int b,
DataBuffer data) Возвращает образец в указанной полосе для пикселя, расположенного в (x,y), как int. |
double |
getSampleDouble(int x,
int y,
int b,
DataBuffer data) Возвращает образец в указанной полосе для пикселя, расположенного в (x,y), как double. |
float |
getSampleFloat(int x,
int y,
int b,
DataBuffer data) Возвращает образец в указанной полосе для пикселя, расположенного в (x,y), как float. |
double[] |
getSamples(int x,
int y,
int w,
int h,
int b,
double[] dArray,
DataBuffer data) Возвращает образцы для указанной полосы для указанного прямоугольника пикселей в массиве double, по одному образцу на элемент массива. |
float[] |
getSamples(int x,
int y,
int w,
int h,
int b,
float[] fArray,
DataBuffer data) Возвращает образцы для указанной полосы для указанного прямоугольника пикселей в массиве float, по одному образцу на элемент массива. |
int[] |
getSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray,
DataBuffer data) Возвращает размер в битах образцов для всех полос. |
abstract int[] |
getSampleSize() Возвращает размер в битах образцов для указанной полосы. |
abstract int |
getSampleSize(int band) Возвращает TransferType, используемый для передачи пикселей через методы getDataElements и setDataElements. |
int |
getTransferType() Возвращает ширину в пикселях. |
int |
getWidth() Устанавливает данные для прямоугольника пикселей в указанном DataBuffer из примитивного массива типа TransferType. |
void |
setDataElements(int x,
int y,
int w,
int h,
Object obj,
DataBuffer data) Устанавливает данные для одного пикселя в указанном DataBuffer из примитивного массива типа TransferType. |
abstract void |
setDataElements(int x,
int y,
Object obj,
DataBuffer data) Устанавливает пиксель в DataBuffer, используя массив double образцов для ввода. |
void |
setPixel(int x,
int y,
double[] dArray,
DataBuffer data) Устанавливает пиксель в DataBuffer, используя массив float образцов для ввода. |
void |
setPixel(int x,
int y,
float[] fArray,
DataBuffer data) Устанавливает пиксель в DataBuffer, используя массив int образцов для ввода. |
void |
setPixel(int x,
int y,
int[] iArray,
DataBuffer data) Устанавливает все образцы для прямоугольника пикселей из массива double, содержащего по одному образцу на элемент массива. |
void |
setPixels(int x,
int y,
int w,
int h,
double[] dArray,
DataBuffer data) Устанавливает все образцы для прямоугольника пикселей из массива float, содержащего по одному образцу на элемент массива. |
void |
setPixels(int x,
int y,
int w,
int h,
int[] iArray,
DataBuffer data) Устанавливает все образцы для прямоугольника пикселей из массива int, содержащего по одному образцу на каждый элемент массива. |
void |
setSample(int x,
int y,
int b,
double s,
DataBuffer data) Устанавливает образец в указанной полосе для пикселя, расположенного в координатах (x, y) в DataBuffer, используя double в качестве входных данных. |
void |
setSample(int x,
int y,
int b,
float s,
DataBuffer data) Устанавливает образец в указанной полосе для пикселя, расположенного в координатах (x, y) в DataBuffer, используя float в качестве входных данных. |
abstract void |
setSample(int x,
int y,
int b,
int s,
DataBuffer data) Устанавливает образец в указанной полосе для пикселя, расположенного в координатах (x, y) в DataBuffer, используя int в качестве входных данных. |
void |
setSamples(int x,
int y,
int w,
int h,
int b,
double[] dArray,
DataBuffer data) Устанавливает образцы в указанной полосе для указанного прямоугольника пикселей из массива double, содержащего по одному образцу на каждый элемент массива. |
void |
setSamples(int x,
int y,
int w,
int h,
int b,
float[] fArray,
DataBuffer data) Устанавливает образцы в указанной полосе для указанного прямоугольника пикселей из массива float, содержащего по одному образцу на каждый элемент массива. |
void |
setSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray,
DataBuffer data) Устанавливает образцы в указанной полосе для указанного прямоугольника пикселей из массива int, содержащего по одному образцу на каждый элемент массива. |
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Поля
width
protected int width
Ширина в пикселях области данных изображения, описываемой этим SampleModel.
height
protected int height
Высота в пикселях области данных изображения, описываемой этим SampleModel.
numBands
protected int numBands
Количество цветовых каналов данных изображения, описываемого этим SampleModel.
dataType
protected int dataType
Тип данных DataBuffer, хранящего данные пикселей.
- См. также:
DataBuffer
Конструкторы
SampleModel
public SampleModel(int dataType,
int w,
int h,
int numBands) Создаёт SampleModel со специфицированными параметрами.
- Параметры:
-
dataType- Тип данных DataBuffer, хранящего данные пикселей. -
w- Ширина (в пикселях) области данных изображения. -
h- Высота (в пикселях) области данных изображения. -
numBands- Количество цветовых каналов данных изображения. - Исключения:
-
IllegalArgumentException- еслиwилиhне больше 0 -
IllegalArgumentException- если произведениеwиhбольшеInteger.MAX_VALUE -
IllegalArgumentException- еслиdataTypeне является одним из поддерживаемых типов данных
Методы
getWidth
public final int getWidth()
Возвращает ширину в пикселях.
- Возвращает:
- ширину в пикселях области данных изображения, описываемой этим
SampleModel.
getHeight
public final int getHeight()
Возвращает высоту в пикселях.
- Возвращает:
- высоту в пикселях области данных изображения, описываемой этим
SampleModel.
getNumBands
public final int getNumBands()
Возвращает общее количество цветовых каналов данных изображения.
- Возвращает:
- количество цветовых каналов данных изображения, описываемого этим
SampleModel.
getNumDataElements
public abstract int getNumDataElements()
Возвращает количество элементов данных, необходимых для передачи пикселя через методы getDataElements и setDataElements. При передаче пикселей через эти методы они могут передаваться в упакованном или распакованном формате, в зависимости от реализации SampleModel. Используя эти методы, пиксели передаются как массив из getNumDataElements() элементов примитивного типа, заданного getTransferType(). Тип TransferType может или не может совпадать с типом хранения DataType.
- Возвращает:
- количество элементов данных.
- См. также:
-
getDataElements(int, int, Object, DataBuffer),getDataElements(int, int, int, int, Object, DataBuffer),setDataElements(int, int, Object, DataBuffer),setDataElements(int, int, int, int, Object, DataBuffer),getTransferType()
getDataType
public final int getDataType()
Возвращает тип данных DataBuffer, хранящего данные пикселей.
- Возвращает:
- тип данных.
getTransferType
public int getTransferType()
Возвращает TransferType, используемый для передачи пикселей через методы getDataElements и setDataElements. При передаче пикселей через эти методы они могут передаваться в упакованном или распакованном формате, в зависимости от реализации SampleModel. Используя эти методы, пиксели передаются как массив из getNumDataElements() элементов примитивного типа, заданного getTransferType(). Тип TransferType может или не может совпадать с типом хранения DataType. TransferType будет одним из типов, определённых в DataBuffer.
- Возвращает:
- тип передачи.
- См. также:
-
getDataElements(int, int, Object, DataBuffer),getDataElements(int, int, int, int, Object, DataBuffer),setDataElements(int, int, Object, DataBuffer),setDataElements(int, int, int, int, Object, DataBuffer),getNumDataElements(),DataBuffer
getPixel
public int[] getPixel(int x,
int y,
int[] iArray,
DataBuffer data) Возвращает образцы для указанного пикселя в массиве int, по одному образцу на элемент массива. ArrayIndexOutOfBoundsException может быть выброшен, если координаты не находятся в пределах границ.
- Параметры:
-
x- Координата X пикселя. -
y- Координата Y пикселя. -
iArray- Если не null, возвращает выборки в этом массиве. -
data- DataBuffer, содержащий данные изображения. - Возвращает:
- выборки для указанного пикселя.
- Выбрасывает:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ или iArray слишком мал для хранения результата. - См. также:
setPixel(int, int, int[], DataBuffer)
getDataElements
public abstract Object getDataElements(int x,
int y,
Object obj,
DataBuffer data) Возвращает данные для одного пикселя в примитивном массиве типа TransferType. Для данных изображений, поддерживаемых API Java 2D, это будет один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные могут быть возвращены в упакованном формате, что повышает эффективность передачи данных. Как правило, obj следует передавать в качестве null, чтобы объект создавался автоматически и был правильного примитивного типа данных.
Следующий код демонстрирует передачу данных для одного пикселя из DataBuffer db1, структура хранения которого описана в SampleModel sm1, в DataBuffer db2, структура хранения которого описана в SampleModel sm2. Эта передача, как правило, будет более эффективной, чем использование getPixel/setPixel.
SampleModel sm1, sm2;
DataBuffer db1, db2;
sm2.setDataElements(x, y, sm1.getDataElements(x, y, null, db1), db2); Использование getDataElements/setDataElements для передачи между двумя парами DataBuffer/SampleModel допустимо, если SampleModel имеют одинаковое количество полос, соответствующие полосы имеют одинаковое количество битов на выборку, а TransferType одинаковые. Если obj не null, он должен быть примитивным массивом типа TransferType. В противном случае будет сгенерировано исключение ClassCastException. Может быть сгенерировано исключение ArrayIndexOutOfBoundsException, если координаты находятся за пределами границ или если obj не null и недостаточно велик для хранения данных пикселя.
- Параметры:
-
x- Координата X пикселя. -
y- Координата Y пикселя. -
obj- Если не null, примитивный массив, в котором будут возвращены данные пикселя. -
data- DataBuffer, содержащий данные изображения. - Возвращает:
- элементы данных для указанного пикселя.
- Выбрасывает:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ или obj слишком мал для хранения результата. - См. также:
-
getNumDataElements(),getTransferType(),DataBuffer,setDataElements(int, int, Object, DataBuffer)
getDataElements
public Object getDataElements(int x,
int y,
int w,
int h,
Object obj,
DataBuffer data) Возвращает данные пикселей для указанного прямоугольника пикселей в примитивном массиве типа TransferType. Для данных изображений, поддерживаемых API Java 2D, это будет один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные могут быть возвращены в упакованном формате, что повышает эффективность передачи данных. Как правило, obj следует передавать в качестве null, чтобы объект создавался автоматически и был правильного примитивного типа данных.
Следующий код демонстрирует передачу данных для прямоугольной области пикселей из DataBuffer db1, структура хранения которого описана в SampleModel sm1, в DataBuffer db2, структура хранения которого описана в SampleModel sm2. Эта передача, как правило, будет более эффективной, чем использование getPixels/setPixels.
SampleModel sm1, sm2;
DataBuffer db1, db2;
sm2.setDataElements(x, y, w, h, sm1.getDataElements(x, y, w,
h, null, db1), db2); Использование getDataElements/setDataElements для передачи между двумя парами DataBuffer/SampleModel допустимо, если SampleModel имеют одинаковое количество полос, соответствующие полосы имеют одинаковое количество битов на выборку, а TransferType одинаковые. Если obj не null, он должен быть примитивным массивом типа TransferType. В противном случае будет сгенерировано исключение ClassCastException. Может быть сгенерировано исключение ArrayIndexOutOfBoundsException, если координаты находятся за пределами границ или если obj не null и недостаточно велик для хранения данных пикселя.
- Параметры:
-
x- Минимальная координата X пиксельного прямоугольника. -
y- Минимальная координата Y пиксельного прямоугольника. -
w- Ширина пиксельного прямоугольника. -
h- Высота пиксельного прямоугольника. -
obj- Если не null, примитивный массив, в который будет возвращено пиксельное содержимое. -
data- Объект DataBuffer, содержащий данные изображения. - Возвращает:
- элементы данных для указанной области пикселей.
- Исключения:
-
NullPointerException- если данные null. -
ArrayIndexOutOfBoundsException- если координаты выходят за пределы границ, или если obj недостаточно велик для хранения выходных данных. - См. также:
-
getNumDataElements(),getTransferType(),setDataElements(int, int, int, int, Object, DataBuffer),DataBuffer
setDataElements
public abstract void setDataElements(int x,
int y,
Object obj,
DataBuffer data) Устанавливает данные для одного пикселя в указанном DataBuffer из примитивного массива типа TransferType. Для данных изображений, поддерживаемых API Java 2D, это будет один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные в массиве могут быть в упакованном формате, что повышает эффективность передачи данных.
Следующий код иллюстрирует передачу данных для одного пикселя из DataBuffer db1, структура хранения которого описана SampleModel sm1, в DataBuffer db2, структура хранения которого описана SampleModel sm2. Передача, как правило, будет более эффективной, чем использование getPixel/setPixel.
SampleModel sm1, sm2;
DataBuffer db1, db2;
sm2.setDataElements(x, y, sm1.getDataElements(x, y, null, db1),
db2); Использование getDataElements/setDataElements для передачи между двумя парами DataBuffer/SampleModel допустимо, если SampleModel имеют одинаковое количество полос, соответствующие полосы имеют одинаковое количество битов на образец, и типы TransferType одинаковы. obj должен быть примитивным массивом типа TransferType. В противном случае будет брошено исключение ClassCastException. Может быть брошено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы границ, или если obj недостаточно велик для хранения данных пикселя.
- Параметры:
-
x- Координата X расположения пикселя. -
y- Координата Y расположения пикселя. -
obj- Примитивный массив, содержащий пиксельные данные. -
data- Объект DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если данные null. -
ArrayIndexOutOfBoundsException- если координаты выходят за пределы границ, или если obj недостаточно велик для хранения входных данных. - См. также:
-
getNumDataElements(),getTransferType(),getDataElements(int, int, Object, DataBuffer),DataBuffer
setDataElements
public void setDataElements(int x,
int y,
int w,
int h,
Object obj,
DataBuffer data) Устанавливает данные для прямоугольника пикселей в указанном DataBuffer из примитивного массива типа TransferType. Для данных изображений, поддерживаемых API Java 2D, это будет один из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT или DataBuffer.TYPE_DOUBLE. Данные в массиве могут быть в упакованном формате, что повышает эффективность передачи данных.
Следующий код иллюстрирует передачу данных для прямоугольной области пикселей из DataBuffer db1, структура хранения которого описана SampleModel sm1, в DataBuffer db2, структура хранения которого описана SampleModel sm2. Передача, как правило, будет более эффективной, чем использование getPixels/setPixels.
SampleModel sm1, sm2;
DataBuffer db1, db2;
sm2.setDataElements(x, y, w, h, sm1.getDataElements(x, y, w, h,
null, db1), db2); Использование getDataElements/setDataElements для передачи между двумя парами DataBuffer/SampleModel допустимо, если SampleModel имеют одинаковое количество полос, соответствующие полосы имеют одинаковое количество битов на образец, и типы TransferType одинаковы. obj должен быть примитивным массивом типа TransferType. В противном случае будет брошено исключение ClassCastException. Может быть брошено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы границ, или если obj недостаточно велик для хранения данных пикселей.
- Параметры:
-
x- Минимальная координата X пиксельной области. -
y- Минимальная координата Y пиксельной области. -
w- Ширина пиксельной области. -
h- Высота пиксельной области. -
obj- Примитивный массив, содержащий данные пикселей. -
data- Объект DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если данные равны null. -
ArrayIndexOutOfBoundsException- если координаты выходят за пределы области, или obj слишком мал для хранения входных данных. - См. также:
-
getNumDataElements(),getTransferType(),getDataElements(int, int, int, int, Object, DataBuffer),DataBuffer
getPixel
public float[] getPixel(int x,
int y,
float[] fArray,
DataBuffer data) Возвращает выборки для указанного пикселя в массиве float. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы области.
- Параметры:
-
x- Координата X расположения пикселя. -
y- Координата Y расположения пикселя. -
fArray- Если не null, возвращает выборки в этом массиве. -
data- Объект DataBuffer, содержащий данные изображения. - Возвращает:
- выборки для указанного пикселя.
- Исключения:
-
NullPointerException- если данные равны null. -
ArrayIndexOutOfBoundsException- если координаты выходят за пределы области, или fArray слишком мал для хранения результата. - См. также:
setPixel(int, int, float[], DataBuffer)
getPixel
public double[] getPixel(int x,
int y,
double[] dArray,
DataBuffer data) Возвращает выборки для указанного пикселя в массиве double. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы области.
- Параметры:
-
x- Координата X расположения пикселя. -
y- Координата Y расположения пикселя. -
dArray- Если не null, возвращает выборки в этом массиве. -
data- Объект DataBuffer, содержащий данные изображения. - Возвращает:
- выборки для указанного пикселя.
- Исключения:
-
NullPointerException- если данные равны null. -
ArrayIndexOutOfBoundsException- если координаты выходят за пределы области, или dArray слишком мал для хранения результата. - См. также:
setPixel(int, int, double[], DataBuffer)
getPixels
public int[] getPixels(int x,
int y,
int w,
int h,
int[] iArray,
DataBuffer data) Возвращает все выборки для прямоугольника пикселей в массиве int, по одной выборке на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы области.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
iArray- Если не null, возвращает выборки в этом массиве. -
data- Объект DataBuffer, содержащий данные изображения. - Возвращает:
- выборки для указанной области пикселей.
- Исключения:
-
NullPointerException- если данные равны null. -
ArrayIndexOutOfBoundsException- если координаты выходят за пределы области, или iArray слишком мал для хранения результата. - См. также:
setPixels(int, int, int, int, int[], DataBuffer)
getPixels
public float[] getPixels(int x,
int y,
int w,
int h,
float[] fArray,
DataBuffer data) Возвращает все выборки для прямоугольника пикселей в массиве float, по одной выборке на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы области.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
fArray- Если не null, возвращает выборки в этом массиве. -
data- Объект DataBuffer, содержащий данные изображения. - Возвращает:
- выборки для указанной области пикселей.
- Исключения:
-
NullPointerException- если данные равны null. -
ArrayIndexOutOfBoundsException- если координаты выходят за пределы области, или fArray слишком мал для хранения результата. - См. также:
setPixels(int, int, int, int, float[], DataBuffer)
getPixels
public double[] getPixels(int x,
int y,
int w,
int h,
double[] dArray,
DataBuffer data) Возвращает все выборки для прямоугольника пикселей в массиве double, по одной выборке на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы области.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
dArray- Если не null, возвращает образцы в этом массиве. -
data- DataBuffer, содержащий данные изображения. - Возвращает:
- образцы для указанной области пикселей.
- Выбрасывает:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты находятся за пределами границ, или если dArray слишком мал для хранения выходных данных. - См. также:
setPixels(int, int, int, int, double[], DataBuffer)
getSample
public abstract int getSample(int x,
int y,
int b,
DataBuffer data) Возвращает образец в указанной полосе для пикселя с координатами (x, y) в виде целого числа. ArrayIndexOutOfBoundsException может быть выброшен, если координаты находятся за пределами границ.
- Параметры:
-
x- Координата X пикселя. -
y- Координата Y пикселя. -
b- Полоса для возвращения. -
data- DataBuffer, содержащий данные изображения. - Возвращает:
- образец в указанной полосе для указанного пикселя.
- Выбрасывает:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы находятся за пределами границ. - См. также:
setSample(int, int, int, int, DataBuffer)
getSampleFloat
public float getSampleFloat(int x,
int y,
int b,
DataBuffer data) Возвращает образец в указанной полосе для пикселя с координатами (x, y) в виде числа с плавающей точкой. ArrayIndexOutOfBoundsException может быть выброшен, если координаты находятся за пределами границ.
- Параметры:
-
x- Координата X пикселя. -
y- Координата Y пикселя. -
b- Полоса для возвращения. -
data- DataBuffer, содержащий данные изображения. - Возвращает:
- образец в указанной полосе для указанного пикселя.
- Выбрасывает:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы находятся за пределами границ.
getSampleDouble
public double getSampleDouble(int x,
int y,
int b,
DataBuffer data) Возвращает образец в указанной полосе для пикселя с координатами (x, y) в виде числа с двойной точностью. ArrayIndexOutOfBoundsException может быть выброшен, если координаты находятся за пределами границ.
- Параметры:
-
x- Координата X пикселя. -
y- Координата Y пикселя. -
b- Полоса для возвращения. -
data- DataBuffer, содержащий данные изображения. - Возвращает:
- образец в указанной полосе для указанного пикселя.
- Выбрасывает:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы находятся за пределами границ.
getSamples
public int[] getSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray,
DataBuffer data) Возвращает образцы для указанной полосы для указанного прямоугольника пикселей в целочисленном массиве, по одному образцу на элемент массива. ArrayIndexOutOfBoundsException может быть выброшен, если координаты находятся за пределами границ.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
b- Полоса для возвращения. -
iArray- Если не null, возвращает образцы в этом массиве. -
data- DataBuffer, содержащий данные изображения. - Возвращает:
- образцы для указанной полосы для указанной области пикселей.
- Выбрасывает:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы находятся за пределами границ, или если iArray слишком мал для хранения выходных данных. - См. также:
setSamples(int, int, int, int, int, int[], DataBuffer)
getSamples
public float[] getSamples(int x,
int y,
int w,
int h,
int b,
float[] fArray,
DataBuffer data) Возвращает образцы для указанной полосы для указанного прямоугольника пикселей в массиве с плавающей точкой, по одному образцу на элемент массива. ArrayIndexOutOfBoundsException может быть выброшен, если координаты находятся за пределами границ.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
b- Полоса для возврата. -
fArray- Если не null, возвращает образцы в этом массиве. -
data- DataBuffer, содержащий данные изображения. - Возвращает:
- образцы для указанной полосы для указанной области пикселей.
- Исключения:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы выходят за пределы границ, или если fArray слишком мал для хранения результата. - См. также:
setSamples(int, int, int, int, int, float[], DataBuffer)
getSamples
public double[] getSamples(int x,
int y,
int w,
int h,
int b,
double[] dArray,
DataBuffer data) Возвращает образцы для указанной полосы для указанного прямоугольника пикселей в массиве double, по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы границ.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
b- Полоса для возврата. -
dArray- Если не null, возвращает образцы в этом массиве. -
data- DataBuffer, содержащий данные изображения. - Возвращает:
- образцы для указанной полосы для указанной области пикселей.
- Исключения:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы выходят за пределы границ, или если dArray слишком мал для хранения результата. - См. также:
setSamples(int, int, int, int, int, double[], DataBuffer)
setPixel
public void setPixel(int x,
int y,
int[] iArray,
DataBuffer data) Устанавливает пиксель в DataBuffer, используя массив int образцов для ввода. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы границ.
- Параметры:
-
x- Координата X пикселя. -
y- Координата Y пикселя. -
iArray- Входные образцы в массиве int. -
data- DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если iArray или data равно null. -
ArrayIndexOutOfBoundsException- если координаты выходят за пределы границ, или если iArray слишком мал для хранения входных данных. - См. также:
getPixel(int, int, int[], DataBuffer)
setPixel
public void setPixel(int x,
int y,
float[] fArray,
DataBuffer data) Устанавливает пиксель в DataBuffer, используя массив float образцов для ввода. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы границ.
- Параметры:
-
x- Координата X пикселя. -
y- Координата Y пикселя. -
fArray- Входные образцы в массиве float. -
data- DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если fArray или data равно null. -
ArrayIndexOutOfBoundsException- если координаты выходят за пределы границ, или если fArray слишком мал для хранения входных данных. - См. также:
getPixel(int, int, float[], DataBuffer)
setPixel
public void setPixel(int x,
int y,
double[] dArray,
DataBuffer data) Устанавливает пиксель в DataBuffer, используя массив double образцов для ввода.
- Параметры:
-
x- Координата X пикселя. -
y- Координата Y пикселя. -
dArray- Входные образцы в массиве double. -
data- DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если dArray или data равно null. -
ArrayIndexOutOfBoundsException- если координаты выходят за пределы границ, или если fArray слишком мал для хранения входных данных. - См. также:
getPixel(int, int, double[], DataBuffer)
setPixels
public void setPixels(int x,
int y,
int w,
int h,
int[] iArray,
DataBuffer data) Устанавливает все образцы для прямоугольника пикселей из массива int, содержащего по одному образцу на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты выходят за пределы границ.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
iArray- Входные образцы в массиве int. -
data- DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если iArray или data равны null. -
ArrayIndexOutOfBoundsException- если координаты не находятся в границах, или если iArray недостаточно велик для хранения входных данных. - См. также:
getPixels(int, int, int, int, int[], DataBuffer)
setPixels
public void setPixels(int x,
int y,
int w,
int h,
float[] fArray,
DataBuffer data) Устанавливает все образцы для прямоугольника пикселей из массива float, содержащего по одному образцу на элемент массива. ArrayIndexOutOfBoundsException может быть вызван, если координаты не находятся в пределах границ.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
fArray- Входные образцы в массиве float. -
data- DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если fArray или data равны null. -
ArrayIndexOutOfBoundsException- если координаты не находятся в границах, или если fArray недостаточно велик для хранения входных данных. - См. также:
getPixels(int, int, int, int, float[], DataBuffer)
setPixels
public void setPixels(int x,
int y,
int w,
int h,
double[] dArray,
DataBuffer data) Устанавливает все образцы для прямоугольника пикселей из массива double, содержащего по одному образцу на элемент массива. ArrayIndexOutOfBoundsException может быть вызван, если координаты не находятся в пределах границ.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
dArray- Входные образцы в массиве double. -
data- DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если dArray или data равны null. -
ArrayIndexOutOfBoundsException- если координаты не находятся в границах, или если dArray недостаточно велик для хранения входных данных. - См. также:
getPixels(int, int, int, int, double[], DataBuffer)
setSample
public abstract void setSample(int x,
int y,
int b,
int s,
DataBuffer data) Устанавливает образец в указанной полосе для пикселя, расположенного в (x,y) в DataBuffer, используя int для входных данных. ArrayIndexOutOfBoundsException может быть вызван, если координаты не находятся в пределах границ.
- Параметры:
-
x- Координата X расположения пикселя. -
y- Координата Y расположения пикселя. -
b- Полоса для установки. -
s- Входной образец как int. -
data- DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы не находятся в границах. - См. также:
getSample(int, int, int, DataBuffer)
setSample
public void setSample(int x,
int y,
int b,
float s,
DataBuffer data) Устанавливает образец в указанной полосе для пикселя, расположенного в (x,y) в DataBuffer, используя float для входных данных. По умолчанию эта функция преобразует входной образец float в int и затем вызывает метод setSample(int, int, int, DataBuffer) с этим значением int. ArrayIndexOutOfBoundsException может быть вызван, если координаты не находятся в пределах границ.
- Параметры:
-
x- Координата X расположения пикселя. -
y- Координата Y расположения пикселя. -
b- Полоса для установки. -
s- Входной образец как float. -
data- DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если data равно null. -
ArrayIndexOutOfBoundsException- если координаты или индекс полосы не находятся в границах. - См. также:
getSample(int, int, int, DataBuffer)
setSample
public void setSample(int x,
int y,
int b,
double s,
DataBuffer data) Устанавливает образец в указанной полосе для пикселя, расположенного в (x,y) в DataBuffer, используя double для входных данных. По умолчанию эта функция преобразует входной образец double в int и затем вызывает метод setSample(int, int, int, DataBuffer) с этим значением int. ArrayIndexOutOfBoundsException может быть вызван, если координаты не находятся в пределах границ.
- Параметры:
-
x- Координата X пикселя. -
y- Координата Y пикселя. -
b- Номер канала для установки. -
s- Входное значение выборки как double. -
data- Объект DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если данные равны null. -
ArrayIndexOutOfBoundsException- если координаты или индекс канала не находятся в пределах. - См. также:
getSample(int, int, int, DataBuffer)
setSamples
public void setSamples(int x,
int y,
int w,
int h,
int b,
int[] iArray,
DataBuffer data) Устанавливает значения выборок в указанном канале для заданного прямоугольника пикселей из массива int, содержащего по одной выборке на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
b- Номер канала для установки. -
iArray- Входные выборки в массиве int. -
data- Объект DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если iArray или data равны null. -
ArrayIndexOutOfBoundsException- если координаты или индекс канала не находятся в пределах, или если iArray слишком мал для хранения ввода. - См. также:
getSamples(int, int, int, int, int, int[], DataBuffer)
setSamples
public void setSamples(int x,
int y,
int w,
int h,
int b,
float[] fArray,
DataBuffer data) Устанавливает значения выборок в указанном канале для заданного прямоугольника пикселей из массива float, содержащего по одной выборке на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
b- Номер канала для установки. -
fArray- Входные выборки в массиве float. -
data- Объект DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если fArray или data равны null. -
ArrayIndexOutOfBoundsException- если координаты или индекс канала не находятся в пределах, или если fArray слишком мал для хранения ввода. - См. также:
getSamples(int, int, int, int, int, float[], DataBuffer)
setSamples
public void setSamples(int x,
int y,
int w,
int h,
int b,
double[] dArray,
DataBuffer data) Устанавливает значения выборок в указанном канале для заданного прямоугольника пикселей из массива double, содержащего по одной выборке на элемент массива. Может быть выброшено исключение ArrayIndexOutOfBoundsException, если координаты не находятся в пределах.
- Параметры:
-
x- Координата X верхнего левого пикселя. -
y- Координата Y верхнего левого пикселя. -
w- Ширина прямоугольника пикселей. -
h- Высота прямоугольника пикселей. -
b- Номер канала для установки. -
dArray- Входные выборки в массиве double. -
data- Объект DataBuffer, содержащий данные изображения. - Исключения:
-
NullPointerException- если dArray или data равны null. -
ArrayIndexOutOfBoundsException- если координаты или индекс канала не находятся в пределах, или если dArray слишком мал для хранения ввода. - См. также:
getSamples(int, int, int, int, int, double[], DataBuffer)
createCompatibleSampleModel
public abstract SampleModel createCompatibleSampleModel(int w,
int h) Создает SampleModel, описывающий данные в формате этого SampleModel, но с другой шириной и высотой.
- Параметры:
-
w- ширина данных изображения -
h- высота данных изображения - Возвращает:
- объект SampleModel, описывающий те же данные изображения, что и этот SampleModel, но с другим размером.
createSubsetSampleModel
public abstract SampleModel createSubsetSampleModel(int[] bands)
Создает новый SampleModel с подмножеством каналов этого SampleModel.
- Параметры:
-
bands- подмножество каналов этого SampleModel - Возвращает:
- SampleModel с подмножеством каналов этого SampleModel.
createDataBuffer
public abstract DataBuffer createDataBuffer()
Создает DataBuffer, соответствующий этому SampleModel. Ширина и высота DataBuffer будут соответствовать этому SampleModel.
- Возвращает:
- DataBuffer, соответствующий этому SampleModel.
getSampleSize
public abstract int[] getSampleSize()
Возвращает размер в битах выборок для всех каналов.
- Возвращает:
- размер выборок для всех полос.
getSampleSize
public abstract int getSampleSize(int band)
Возвращает размер в битах выборок для указанной полосы.
- Параметры:
-
band- указанная полоса - Возвращает:
- размер выборок указанной полосы.
© 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.