Класс 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(int dataType,
int w,
int h,
int pixelStride,
int scanlineStride,
int[] bandOffsets) |
Создает PixelInterleavedSampleModel со специфицированными параметрами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
SampleModel |
createCompatibleSampleModel(int w,
int h) |
Создает новый PixelInterleavedSampleModel с указанной шириной и высотой. |
SampleModel |
createSubsetSampleModel(int[] bands) |
Создает новый 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
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Подробное описание конструкторов
PixelInterleavedSampleModel
public PixelInterleavedSampleModel(int dataType,
int w,
int h,
int pixelStride,
int scanlineStride,
int[] bandOffsets)
Создает PixelInterleavedSampleModel со специфицированными параметрами. Количество каналов будет задано длиной массива bandOffsets.
- Parameters:
-
dataType- Тип данных для хранения образцов. -
w- Ширина (в пикселях) области данных изображения. -
h- Высота (в пикселях) области данных изображения. -
pixelStride- Шаг пикселя данных изображения. -
scanlineStride- Шаг строки данных изображения. -
bandOffsets- Смещения всех каналов. - Throws:
-
IllegalArgumentException- еслиwилиhне больше 0 -
IllegalArgumentException- если любое смещение между каналами больше шага строки сканирования -
IllegalArgumentException- если произведениеpixelStrideиwбольшеscanlineStride -
IllegalArgumentException- еслиpixelStrideменьше любого смещения между каналами -
IllegalArgumentException- еслиdataTypeне является одним из поддерживаемых типов данных
Подробное описание методов
createCompatibleSampleModel
public SampleModel createCompatibleSampleModel(int w,
int h)
Создает новый PixelInterleavedSampleModel с указанной шириной и высотой. Новый PixelInterleavedSampleModel будет иметь то же количество каналов, тип данных хранения и шаг пикселя, что и этот PixelInterleavedSampleModel. Смещения каналов могут быть сжаты так, что минимум всех смещений каналов равен нулю.
- Overrides:
-
createCompatibleSampleModelв классеComponentSampleModel - Parameters:
-
w- ширина полученногоSampleModel -
h- высота полученногоSampleModel - Returns:
- новый
SampleModelс указанной шириной и высотой. - Throws:
-
IllegalArgumentException- еслиwилиhне больше 0
createSubsetSampleModel
public SampleModel createSubsetSampleModel(int[] bands)
Создает новый PixelInterleavedSampleModel с подмножеством каналов этого PixelInterleavedSampleModel. Новый PixelInterleavedSampleModel может быть использован с любым DataBuffer, с которым может быть использован существующий PixelInterleavedSampleModel. Новая комбинация PixelInterleavedSampleModel/DataBuffer будет представлять изображение с подмножеством каналов исходной комбинации PixelInterleavedSampleModel/DataBuffer.
- Overrides:
-
createSubsetSampleModelв классеComponentSampleModel - Parameters:
-
bands- подмножество каналов из этогоComponentSampleModel - Returns:
- PixelInterleavedSampleModel, созданный с подмножеством каналов из этого PixelInterleavedSampleModel.
© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.desktop/java/awt/image/PixelInterleavedSampleModel.html