Класс PixelInterleavedSampleModel
java.lang.Object
java.awt.image.SampleModel
java.awt.image.ComponentSampleModel
java.awt.image.PixelInterleavedSampleModel
public class PixelInterleavedSampleModel extends ComponentSampleModel
Этот класс представляет данные изображения, хранящиеся в виде пиксельного интерливинга, и для каждого образца пикселя занимает один элемент данных DataBuffer. Он наследуется от ComponentSampleModel, но обеспечивает более эффективную реализацию для доступа к данным изображения с пиксельным интерливингом, чем ComponentSampleModel. Этот класс хранит образцовые данные для всех каналов в одном банке DataBuffer. Предоставляются методы доступа, чтобы данные изображения можно было непосредственно обрабатывать. Шаг пикселя — это количество элементов массива данных между двумя образцами одного и того же канала на одной и той же строке сканирования. Шаг строки сканирования — это количество элементов массива данных между заданным образцом и соответствующим образцом в том же столбце следующей строки сканирования. Смещения каналов обозначают количество элементов массива данных от первого элемента массива данных банка DataBuffer, содержащего каждый канал, до первого образца канала. Каналы пронумерованы с 0 до N-1. Индексы банка указывают соответствие между банком буфера данных и каналом данных изображения. Этот класс поддерживает типы данных
TYPE_BYTE, TYPE_USHORT, TYPE_SHORT, TYPE_INT, TYPE_FLOAT и TYPE_DOUBLE.Краткое описание полей
Поля, объявленные в классе java.awt.image.ComponentSampleModel
bandOffsets, bankIndices, numBands, numBanks, pixelStride, scanlineStride
Поля, объявленные в классе java.awt.image.SampleModel
dataType, height, width
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
PixelInterleavedSampleModel |
Создаёт PixelInterleavedSampleModel с указанными параметрами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
SampleModel |
createCompatibleSampleModel |
Создаёт новый PixelInterleavedSampleModel с указанной шириной и высотой. |
SampleModel |
createSubsetSampleModel |
Создаёт новый PixelInterleavedSampleModel с подмножеством каналов этого PixelInterleavedSampleModel. |
Методы, объявленные в классе java.awt.image.ComponentSampleModel
createDataBuffer, getBandOffsets, getBankIndices, getDataElements, getNumDataElements, getOffset, getOffset, getPixel, getPixels, getPixelStride, getSample, getSampleDouble, getSampleFloat, getSamples, getSampleSize, getSampleSize, getScanlineStride, setDataElements, setPixel, setPixels, setSample, setSample, setSample, setSamples
Методы, объявленные в классе java.awt.image.SampleModel
getDataElements, getDataType, getHeight, getNumBands, getPixel, getPixel, getPixels, getPixels, getSamples, getSamples, getTransferType, getWidth, setDataElements, setPixel, setPixel, setPixels, setPixels, setSamples, setSamples
Подробное описание конструкторов
PixelInterleavedSampleModel
public PixelInterleavedSampleModel(int dataType, int w, int h, int pixelStride, int scanlineStride, int[] bandOffsets)
Создаёт PixelInterleavedSampleModel с указанными параметрами. Количество каналов определяется длиной массива bandOffsets.
- Параметры:
-
dataType- Тип данных для хранения образцов. -
w- Ширина (в пикселях) области данных изображения. -
h- Высота (в пикселях) области данных изображения. -
pixelStride- Шаг пикселя данных изображения. -
scanlineStride- Шаг строки данных изображения. -
bandOffsets- Смещения всех каналов. - Исключения:
-
IllegalArgumentException- еслиwилиhне больше 0 -
IllegalArgumentException- если смещение между каналами больше шага строки сканирования -
IllegalArgumentException- если произведениеpixelStrideиwбольшеscanlineStride -
IllegalArgumentException- еслиpixelStrideменьше любого смещения между каналами -
IllegalArgumentException- еслиdataTypeне является одним из поддерживаемых типов данных
Подробное описание методов
createCompatibleSampleModel
public SampleModel createCompatibleSampleModel(int w, int h)
Создаёт новый PixelInterleavedSampleModel с указанной шириной и высотой. Новый PixelInterleavedSampleModel будет иметь то же количество каналов, тип данных хранения и шаг пикселя, что и этот PixelInterleavedSampleModel. Смещения каналов могут быть сжаты таким образом, что минимум всех смещений каналов равен нулю.
- Переопределяет:
-
createCompatibleSampleModelв классеComponentSampleModel - Параметры:
-
w- ширина результирующегоSampleModel -
h- высота результирующегоSampleModel - Возвращает:
- новый
SampleModelс указанной шириной и высотой. - Исключения:
-
IllegalArgumentException- еслиwилиhне больше 0
createSubsetSampleModel
public SampleModel createSubsetSampleModel(int[] bands)
Создаёт новый PixelInterleavedSampleModel с подмножеством каналов этого PixelInterleavedSampleModel. Новый PixelInterleavedSampleModel может использоваться с любым DataBuffer, с которым может использоваться существующий PixelInterleavedSampleModel. Новая комбинация PixelInterleavedSampleModel/DataBuffer будет представлять изображение с подмножеством каналов исходной комбинации PixelInterleavedSampleModel/DataBuffer.
- Переопределяет:
-
createSubsetSampleModelв классеComponentSampleModel - Параметры:
-
bands- подмножество каналов из этогоComponentSampleModel - Возвращает:
- PixelInterleavedSampleModel, созданный с подмножеством каналов из этого PixelInterleavedSampleModel.
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/java/awt/image/PixelInterleavedSampleModel.html