Класс DirectColorModel
- Все реализуемые интерфейсы:
Transparency
public class DirectColorModel extends PackedColorModel
DirectColorModel — это класс ColorModel, который работает со значениями пикселей, представляющими информацию о цвете RGB и альфа-канале в виде отдельных отсчётов и упаковывающими все отсчёты для одного пикселя в одну величину типа int, short или byte. Этот класс можно использовать только с цветовыми пространствами типа ColorSpace.TYPE_RGB. Кроме того, для каждого компонента ColorSpace минимальное нормализованное значение компонента, получаемое с помощью метода getMinValue() класса ColorSpace, должно быть равно 0.0, а максимальное значение, получаемое с помощью метода getMaxValue(), должно быть равно 1.0 (эти минимальное и максимальное значения типичны для пространств RGB). Значения пикселей должны содержать три цветовых отсчёта и могут содержать один альфа-отсчёт. Для методов, использующих представление пикселя в виде примитивного массива типа transferType, длина массива всегда равна единице. Поддерживаются типы передачи DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT и DataBuffer.TYPE_INT. Цветовые отсчёты и отсчёты альфа-канала хранятся в единственном элементе массива в битах, указанных битовыми масками. Каждая битовая маска должна быть непрерывной, и маски не должны перекрываться. Для представления пикселя в виде одного значения int, используемого другими методами, применяются те же маски. Соответствие масок цветовым отсчётам и отсчётам альфа-канала следующее: - Маски идентифицируются индексами от 0 до 2, если альфа-канал отсутствует, или до 3, если он присутствует.
- Первые три индекса относятся к цветовым отсчётам: индекс 0 соответствует красному, индекс 1 — зелёному, а индекс 2 — синему.
- Индекс 3 соответствует отсчёту альфа-канала, если он присутствует.
При преобразовании значений пикселей в цветовые компоненты и компоненты альфа-канала для отображения или обработки каждому отсчёту соответствует одна компонента. DirectColorModel обычно используется с данными изображения, в которых для определения упакованных отсчётов применяются маски. Например, DirectColorModel можно использовать вместе с SinglePixelPackedSampleModel для создания BufferedImage. Обычно маски, используемые SampleModel и ColorModel, совпадают. Однако если они различаются, интерпретация цвета данных пикселей выполняется согласно маскам ColorModel.
Представление пикселя в виде одного значения int подходит для всех объектов этого класса, поскольку значения пикселей, используемые этим классом, всегда можно представить одним значением int. Поэтому методы, использующие это представление, не выбрасывают IllegalArgumentException из-за недопустимого значения пикселя.
Эта цветовая модель похожа на визуальный класс X11 TrueColor. Цветовая модель RGB по умолчанию, задаваемая методом getRGBdefault, представляет собой DirectColorModel со следующими параметрами:
Number of bits: 32 Red mask: 0x00ff0000 Green mask: 0x0000ff00 Blue mask: 0x000000ff Alpha mask: 0xff000000 Color space: sRGB isAlphaPremultiplied: False Transparency: Transparency.TRANSLUCENT transferType: DataBuffer.TYPE_INT
Многие методы этого класса являются final. Это связано с тем, что лежащий в основе собственный графический код делает предположения о структуре и работе этого класса, которые отражены в реализациях помеченных как final методов. Вы можете создавать подклассы этого класса по другим причинам, но не можете переопределять или изменять поведение этих методов.
- См. также:
Краткое описание полей
Поля, объявленные в классе ColorModel
pixel_bits, transferType | Модификатор и тип | Поле | Описание |
|---|---|---|
protected int |
pixel_bits |
Общее количество битов в пикселе. |
protected int |
transferType |
Тип данных массива, используемого для представления значений пикселей. |
Поля, объявленные в интерфейсе Transparency
BITMASK, OPAQUE, TRANSLUCENT | Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
BITMASK |
Представляет данные изображения, которые гарантированно являются либо полностью непрозрачными, со значением альфа-канала 1.0, либо полностью прозрачными, со значением альфа-канала 0.0. |
static final int |
OPAQUE |
Представляет данные изображения, которые гарантированно являются полностью непрозрачными, то есть все пиксели имеют значение альфа-канала 1.0. |
static final int |
TRANSLUCENT |
Представляет данные изображения, содержащие или потенциально содержащие произвольные значения альфа-канала в диапазоне от 0.0 до 1.0 включительно. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
DirectColorModel |
Создаёт DirectColorModel с указанными масками, определяющими, какие биты представления пикселя int содержат красный, зелёный и синий цветовые отсчёты. |
DirectColorModel |
Создаёт DirectColorModel с указанными масками, определяющими, какие биты представления пикселя int содержат красный, зелёный и синий цветовые отсчёты, а также отсчёт альфа-канала, если он присутствует. |
DirectColorModel |
Создаёт DirectColorModel с указанными параметрами. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final ColorModel |
coerceData |
Приводит данные растра в соответствие с состоянием, заданным переменной isAlphaPremultiplied, предполагая, что данные в данный момент корректно описываются этим ColorModel. |
final WritableRaster |
createCompatibleWritableRaster |
Создаёт WritableRaster указанной ширины и высоты с расположением данных (SampleModel), совместимым с этим ColorModel. |
final int |
getAlpha |
Возвращает компонент альфа-канала указанного пикселя в диапазоне от 0 до 255. |
int |
getAlpha |
Возвращает компонент альфа-канала указанного пикселя в диапазоне от 0 до 255. |
final int |
getAlphaMask() |
Возвращает маску, указывающую, какие биты представления пикселя int содержат компонент альфа-канала. |
final int |
getBlue |
Возвращает компонент синего цвета указанного пикселя в диапазоне от 0 до 255 в цветовой модели RGB по умолчанию ColorSpace, sRGB. |
int |
getBlue |
Возвращает компонент синего цвета указанного пикселя в диапазоне от 0 до 255 в цветовой модели RGB по умолчанию ColorSpace, sRGB. |
final int |
getBlueMask() |
Возвращает маску, указывающую, какие биты представления пикселя int содержат компонент синего цвета. |
final int[] |
getComponents |
Возвращает массив ненормализованных цветовых компонентов и компонентов альфа-канала для заданного пикселя этой ColorModel. |
final int[] |
getComponents |
Возвращает массив ненормализованных цветовых компонентов и компонентов альфа-канала для заданного пикселя этой ColorModel. |
int |
getDataElement |
Возвращает значение пикселя, представленное в виде int в этой ColorModel, для заданного массива ненормализованных цветовых компонентов и компонентов альфа-канала. |
Object |
getDataElements |
Возвращает представление пикселя в виде массива элементов данных в этой ColorModel для заданного массива ненормализованных цветовых компонентов и компонентов альфа-канала. |
Object |
getDataElements |
Возвращает представление пикселя в виде массива элементов данных в этой ColorModel для заданного целочисленного представления пикселя в цветовой модели RGB по умолчанию. |
final int |
getGreen |
Возвращает компонент зелёного цвета указанного пикселя в диапазоне от 0 до 255 в цветовой модели RGB по умолчанию ColorSpace, sRGB. |
int |
getGreen |
Возвращает компонент зелёного цвета указанного пикселя в диапазоне от 0 до 255 в цветовой модели RGB по умолчанию ColorSpace, sRGB. |
final int |
getGreenMask() |
Возвращает маску, указывающую, какие биты представления пикселя int содержат компонент зелёного цвета. |
final int |
getRed |
Возвращает компонент красного цвета указанного пикселя в диапазоне от 0 до 255 в цветовой модели RGB по умолчанию ColorSpace, sRGB. |
int |
getRed |
Возвращает компонент красного цвета указанного пикселя в диапазоне от 0 до 255 в цветовой модели RGB по умолчанию ColorSpace, sRGB. |
final int |
getRedMask() |
Возвращает маску, указывающую, какие биты представления пикселя int содержат компонент красного цвета. |
final int |
getRGB |
Возвращает цветовые компоненты и компоненты альфа-канала пикселя в формате цветовой модели RGB по умолчанию. |
int |
getRGB |
Возвращает цветовые компоненты и компоненты альфа-канала указанного пикселя в формате цветовой модели RGB по умолчанию. |
boolean |
isCompatibleRaster |
Возвращает true, если raster совместим с этой ColorModel, и false в противном случае. |
String |
toString() |
Возвращает String, представляющий эту DirectColorModel. |
Методы, объявленные в классе PackedColorModel
createCompatibleSampleModel, equals, getAlphaRaster, getMask, getMasks, hashCode, isCompatibleSampleModel | Модификатор и тип | Метод | Описание |
|---|---|---|
SampleModel |
createCompatibleSampleModel |
Создаёт SampleModel указанной ширины и высоты с расположением данных, совместимым с этим ColorModel. |
boolean |
equals |
Проверяет, является ли указанный Object экземпляром PackedColorModel и равен ли он этому PackedColorModel. |
WritableRaster |
getAlphaRaster |
Возвращает WritableRaster, представляющий альфа-канал изображения, извлечённый из входного WritableRaster. |
final int |
getMask |
Возвращает маску, указывающую, какие биты пикселя содержат указанный цветовой отсчёт или отсчёт альфа-канала. |
final int[] |
getMasks() |
Возвращает массив масок, указывающих, какие биты пикселя содержат цветовые отсчёты и отсчёты альфа-канала. |
int |
hashCode() |
Возвращает хеш-код этой модели PackedColorModel. |
boolean |
isCompatibleSampleModel |
Проверяет, совместим ли указанный SampleModel с этой ColorModel. |
Методы, объявленные в классе ColorModel
getColorSpace, getComponentSize, getComponentSize, getDataElement, getDataElements, getNormalizedComponents, getNormalizedComponents, getNumColorComponents, getNumComponents, getPixelSize, getRGBdefault, getTransferType, getTransparency, getUnnormalizedComponents, hasAlpha, isAlphaPremultiplied | Модификатор и тип | Метод | Описание |
|---|---|---|
final ColorSpace |
getColorSpace() |
Возвращает ColorSpace, связанный с этой ColorModel. |
int[] |
getComponentSize() |
Возвращает массив с количеством битов на каждую цветовую компоненту или компоненту альфа-канала. |
int |
getComponentSize |
Возвращает количество битов для указанной цветовой компоненты или компоненты альфа-канала. |
int |
getDataElement |
Возвращает значение пикселя, представленное в виде int в этой ColorModel, для заданного массива нормализованных цветовых компонентов и компонентов альфа-канала. |
Object |
getDataElements |
Возвращает представление пикселя в виде массива элементов данных в этой ColorModel для заданного массива нормализованных цветовых компонентов и компонентов альфа-канала. |
float[] |
getNormalizedComponents |
Возвращает массив всех цветовых компонентов и компонентов альфа-канала в нормализованном виде для заданного массива ненормализованных компонентов. |
float[] |
getNormalizedComponents |
Возвращает массив всех цветовых компонентов и компонентов альфа-канала в нормализованном виде для заданного пикселя этой ColorModel. |
int |
getNumColorComponents() |
Возвращает количество цветовых компонентов в этой ColorModel. |
int |
getNumComponents() |
Возвращает количество компонентов, включая альфа-канал, в этой ColorModel. |
int |
getPixelSize() |
Возвращает количество битов на пиксель, описываемое этой ColorModel. |
static ColorModel |
getRGBdefault() |
Возвращает DirectColorModel, описывающую формат по умолчанию для целочисленных значений RGB, используемых во многих методах интерфейсов AWT для работы с изображениями для удобства программиста. |
final int |
getTransferType() |
Возвращает тип передачи этой ColorModel. |
int |
getTransparency() |
Возвращает степень прозрачности. |
int[] |
getUnnormalizedComponents |
Возвращает массив всех цветовых компонентов и компонентов альфа-канала в ненормализованном виде для заданного массива нормализованных компонентов. |
final boolean |
hasAlpha() |
Возвращает, поддерживается ли альфа-канал в этой ColorModel. |
final boolean |
isAlphaPremultiplied() |
Возвращает, был ли альфа-канал предварительно умножен в значениях пикселей, преобразуемых этой ColorModel. |
Методы, объявленные в классе Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии. Финализация устарела и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно вследствие вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно вследствие вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно вследствие вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
DirectColorModel
public DirectColorModel(int bits, int rmask, int gmask, int bmask)
DirectColorModel на основе указанных масок, которые определяют, какие биты в int представлении пикселя содержат образцы красного, зеленого и синего цветов. Поскольку значения пикселей не содержат сведений об альфа-канале, все пиксели считаются непрозрачными, то есть alpha = 1.0. Все биты в каждой маске должны быть смежными и укладываться в указанное количество младших битов int представления пикселя. ColorSpace — пространство sRGB по умолчанию. Значение прозрачности — Transparency.OPAQUE. Тип передачи — наименьший из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT, способный вместить один пиксель.- Параметры:
-
bits— количество битов в значениях пикселей; например, сумма количества битов в масках. -
rmask— маска, указывающая, какие биты целочисленного пикселя содержат красную компоненту -
gmask— маска, указывающая, какие биты целочисленного пикселя содержат зеленую компоненту -
bmask— маска, указывающая, какие биты целочисленного пикселя содержат синюю компоненту
DirectColorModel
public DirectColorModel(int bits, int rmask, int gmask, int bmask, int amask)
DirectColorModel на основе указанных масок, которые определяют, какие биты в int представлении пикселя содержат образцы красного, зеленого и синего цветов, а также образец альфа-канала, если он присутствует. Если amask равно 0, значения пикселей не содержат сведений об альфа-канале, и все пиксели считаются непрозрачными, то есть alpha = 1.0. Все биты в каждой маске должны быть смежными и укладываться в указанное количество младших битов int представления пикселя. Альфа-канал, если он присутствует, не предварительно умножен. ColorSpace — пространство sRGB по умолчанию. Значение прозрачности — Transparency.OPAQUE, если альфа-канал отсутствует, и Transparency.TRANSLUCENT в противном случае. Тип передачи — наименьший из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT, способный вместить один пиксель.- Параметры:
-
bits— количество битов в значениях пикселей; например, сумма количества битов в масках. -
rmask— маска, указывающая, какие биты целочисленного пикселя содержат красную компоненту -
gmask— маска, указывающая, какие биты целочисленного пикселя содержат зеленую компоненту -
bmask— маска, указывающая, какие биты целочисленного пикселя содержат синюю компоненту -
amask— маска, указывающая, какие биты целочисленного пикселя содержат компоненту альфа-канала
DirectColorModel
public DirectColorModel(ColorSpace space, int bits, int rmask, int gmask, int bmask, int amask, boolean isAlphaPremultiplied, int transferType)
DirectColorModel с указанными параметрами. Цветовые компоненты задаются в указанном ColorSpace, который должен иметь тип ColorSpace.TYPE_RGB, минимальные нормализованные значения компонент должны быть равны 0.0, а максимальные — 1.0. Маски указывают, какие биты в int представлении пикселя содержат образцы красного, зеленого и синего цветов, а также образец альфа-канала, если он присутствует. Если amask равно 0, значения пикселей не содержат сведений об альфа-канале, и все пиксели считаются непрозрачными, то есть alpha = 1.0. Все биты в каждой маске должны быть смежными и укладываться в указанное количество младших битов int представления пикселя. Если альфа-канал присутствует, boolean isAlphaPremultiplied определяет, как интерпретировать образцы цвета и альфа-канала в значениях пикселей. Если boolean имеет значение true, предполагается, что образцы цвета уже умножены на образец альфа-канала. Значение прозрачности — Transparency.OPAQUE, если альфа-канал отсутствует, и Transparency.TRANSLUCENT в противном случае. Тип передачи — тип примитивного массива, используемого для представления значений пикселей; он должен быть одним из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT.- Параметры:
-
space— указанноеColorSpace -
bits— количество битов в значениях пикселей; например, сумма количества битов в масках. -
rmask— маска, указывающая, какие биты целочисленного пикселя содержат красную компоненту -
gmask— маска, указывающая, какие биты целочисленного пикселя содержат зеленую компоненту -
bmask— маска, указывающая, какие биты целочисленного пикселя содержат синюю компоненту -
amask— маска, указывающая, какие биты целочисленного пикселя содержат компоненту альфа-канала -
isAlphaPremultiplied—true, если образцы цвета предварительно умножены на образец альфа-канала;falseв противном случае -
transferType— тип массива, используемого для представления значений пикселей - Исключения:
-
IllegalArgumentException— еслиspaceне является пространством типа TYPE_RGB или нормализованные значения минимальных/максимальных компонент не равны 0.0/1.0.
Подробное описание методов
getRedMask
public final int getRedMask()
int представлении пикселя содержат красную цветовую компоненту.- Возвращает:
- маску, указывающую, какие биты
intпредставления пикселя содержат образец красного цвета.
getGreenMask
public final int getGreenMask()
int представлении пикселя содержат зеленую цветовую компоненту.- Возвращает:
- маску, указывающую, какие биты
intпредставления пикселя содержат образец зеленого цвета.
getBlueMask
public final int getBlueMask()
int представлении пикселя содержат синюю цветовую компоненту.- Возвращает:
- маску, указывающую, какие биты
intпредставления пикселя содержат образец синего цвета.
getAlphaMask
public final int getAlphaMask()
int представлении пикселя содержат компоненту альфа-канала.- Возвращает:
- маску, указывающую, какие биты
intпредставления пикселя содержат образец альфа-канала.
getRed
public final int getRed(int pixel)
ColorSpace, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задается как int. Возвращаемое значение не является предварительно умноженным. Поэтому, если альфа-канал предварительно умножен, этот метод делит на его значение перед возвратом результата. Например, если значение альфа-канала равно 0, значение красного цвета равно 0.- Определено в:
-
getRedв классеColorModel - Параметры:
-
pixel— указанный пиксель - Возвращает:
- компоненту красного цвета указанного пикселя в диапазоне от 0 до 255 в цветовом пространстве sRGB
ColorSpace.
getGreen
public final int getGreen(int pixel)
ColorSpace, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задается как int. Возвращаемое значение не является предварительно умноженным. Поэтому, если альфа-канал предварительно умножен, этот метод делит на его значение перед возвратом результата. Например, если значение альфа-канала равно 0, значение зеленого цвета равно 0.- Определено в:
-
getGreenв классеColorModel - Параметры:
-
pixel— указанный пиксель - Возвращает:
- компоненту зеленого цвета указанного пикселя в диапазоне от 0 до 255 в цветовом пространстве sRGB
ColorSpace.
getBlue
public final int getBlue(int pixel)
ColorSpace, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задается как int. Возвращаемое значение не является предварительно умноженным. Поэтому, если альфа-канал предварительно умножен, этот метод делит на его значение перед возвратом результата. Например, если значение альфа-канала равно 0, значение синего цвета равно 0.- Определено в:
-
getBlueв классеColorModel - Параметры:
-
pixel— указанный пиксель - Возвращает:
- компоненту синего цвета указанного пикселя в диапазоне от 0 до 255 в цветовом пространстве sRGB
ColorSpace.
getAlpha
public final int getAlpha(int pixel)
int.- Определено в:
-
getAlphaв классеColorModel - Параметры:
-
pixel— указанный пиксель - Возвращает:
- значение компоненты альфа-канала
pixelв диапазоне от 0 до 255.
getRGB
public final int getRGB(int pixel)
int. Возвращаемое значение имеет формат без предварительного умножения. Поэтому, если альфа-канал предварительно умножен, этот метод делит цветовые компоненты на его значение. Например, если значение альфа-канала равно 0, все значения цвета равны 0.- Переопределяет:
-
getRGBв классеColorModel - Параметры:
-
pixel— указанный пиксель - Возвращает:
- значение RGB цветовых компонент и компоненты альфа-канала указанного пикселя.
- См. также:
getRed
public int getRed(Object inData)
ColorSpace, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задается массивом элементов данных типа transferType, переданным в виде ссылки на объект. Возвращаемое значение не является предварительно умноженным. Поэтому, если альфа-канал предварительно умножен, этот метод делит на его значение перед возвратом результата. Например, если значение альфа-канала равно 0, значение красного цвета равно 0. Если inData не является примитивным массивом типа transferType, выбрасывается ClassCastException. ArrayIndexOutOfBoundsException выбрасывается, если inData недостаточно велик, чтобы вместить значение пикселя для этой ColorModel. Поскольку DirectColorModel можно создавать подклассы, они наследуют реализацию этого метода и, если не переопределяют его, выбрасывают исключение при использовании неподдерживаемого transferType. UnsupportedOperationException выбрасывается, если эта transferType не поддерживается данной ColorModel.- Переопределяет:
-
getRedв классеColorModel - Параметры:
-
inData— массив, содержащий значение пикселя - Возвращает:
- значение компоненты красного цвета указанного пикселя.
- Исключения:
-
ArrayIndexOutOfBoundsException— еслиinDataнедостаточно велик, чтобы вместить значение пикселя для этой цветовой модели -
ClassCastException— еслиinDataне является примитивным массивом типаtransferType -
UnsupportedOperationException— если этаtransferTypeне поддерживается данной цветовой моделью
getGreen
public int getGreen(Object inData)
ColorSpace, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задается массивом элементов данных типа transferType, переданным в виде ссылки на объект. Возвращаемое значение не является предварительно умноженным. Поэтому, если альфа-канал предварительно умножен, этот метод делит на его значение перед возвратом результата. Например, если значение альфа-канала равно 0, значение зеленого цвета равно 0. Если inData не является примитивным массивом типа transferType, выбрасывается ClassCastException. ArrayIndexOutOfBoundsException выбрасывается, если inData недостаточно велик, чтобы вместить значение пикселя для этой ColorModel. Поскольку DirectColorModel можно создавать подклассы, они наследуют реализацию этого метода и, если не переопределяют его, выбрасывают исключение при использовании неподдерживаемого transferType. UnsupportedOperationException выбрасывается, если эта transferType не поддерживается данной ColorModel.- Переопределяет:
-
getGreenв классеColorModel - Параметры:
-
inData— массив, содержащий значение пикселя - Возвращает:
- значение компоненты зеленого цвета указанного пикселя.
- Исключения:
-
ArrayIndexOutOfBoundsException— еслиinDataнедостаточно велик, чтобы вместить значение пикселя для этой цветовой модели -
ClassCastException— еслиinDataне является примитивным массивом типаtransferType -
UnsupportedOperationException— если этаtransferTypeне поддерживается данной цветовой моделью
getBlue
public int getBlue(Object inData)
ColorSpace, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задается массивом элементов данных типа transferType, переданным в виде ссылки на объект. Возвращаемое значение не является предварительно умноженным. Поэтому, если альфа-канал предварительно умножен, этот метод делит на его значение перед возвратом результата. Например, если значение альфа-канала равно 0, значение синего цвета равно 0. Если inData не является примитивным массивом типа transferType, выбрасывается ClassCastException. ArrayIndexOutOfBoundsException выбрасывается, если inData недостаточно велик, чтобы вместить значение пикселя для этой ColorModel. Поскольку DirectColorModel можно создавать подклассы, они наследуют реализацию этого метода и, если не переопределяют его, выбрасывают исключение при использовании неподдерживаемого transferType. UnsupportedOperationException выбрасывается, если эта transferType не поддерживается данной ColorModel.- Переопределяет:
-
getBlueв классеColorModel - Параметры:
-
inData— массив, содержащий значение пикселя - Возвращает:
- значение компоненты синего цвета указанного пикселя.
- Исключения:
-
ArrayIndexOutOfBoundsException— еслиinDataнедостаточно велик, чтобы вместить значение пикселя для этой цветовой модели -
ClassCastException— еслиinDataне является примитивным массивом типаtransferType -
UnsupportedOperationException— если этаtransferTypeне поддерживается данной цветовой моделью
getAlpha
public int getAlpha(Object inData)
transferType, переданным в виде ссылки на объект. Если inData не является примитивным массивом типа transferType, выбрасывается ClassCastException. ArrayIndexOutOfBoundsException выбрасывается, если inData недостаточно велик, чтобы вместить значение пикселя для этой ColorModel. Поскольку DirectColorModel можно создавать подклассы, они наследуют реализацию этого метода и, если не переопределяют его, выбрасывают исключение при использовании неподдерживаемого transferType. Если эта transferType не поддерживается, выбрасывается UnsupportedOperationException.- Переопределяет:
-
getAlphaв классеColorModel - Параметры:
-
inData— указанный пиксель - Возвращает:
- компоненту альфа-канала указанного пикселя, масштабированную от 0 до 255.
- Исключения:
-
ClassCastException— еслиinDataне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException— еслиinDataнедостаточно велик, чтобы вместить значение пикселя для этойColorModel -
UnsupportedOperationException— если этаtranferTypeне поддерживается даннойColorModel
getRGB
public int getRGB(Object inData)
transferType, переданным в виде ссылки на объект. Если inData не является примитивным массивом типа transferType, выбрасывается ClassCastException. ArrayIndexOutOfBoundsException выбрасывается, если inData недостаточно велик, чтобы вместить значение пикселя для этой ColorModel. Возвращаемое значение имеет формат без предварительного умножения. Поэтому, если альфа-канал предварительно умножен, этот метод делит цветовые компоненты на его значение. Например, если значение альфа-канала равно 0, значения цвета равны 0. Поскольку DirectColorModel можно создавать подклассы, они наследуют реализацию этого метода и, если не переопределяют его, выбрасывают исключение при использовании неподдерживаемого transferType.- Переопределяет:
-
getRGBв классеColorModel - Параметры:
-
inData— указанный пиксель - Возвращает:
- цветовые компоненты и компоненту альфа-канала указанного пикселя.
- Исключения:
-
UnsupportedOperationException— если этаtransferTypeне поддерживается даннойColorModel - См. также:
getDataElements
public Object getDataElements(int rgb, Object pixel)
ColorModel, используя целочисленное представление пикселя в цветовой модели RGB по умолчанию. Этот массив можно передать методу setDataElements объекта WritableRaster. Если переменная пикселя имеет значение null, выделяется новый массив. Если pixel не имеет значения null, это должен быть примитивный массив типа transferType; в противном случае выбрасывается ClassCastException. ArrayIndexOutOfBoundsException выбрасывается, если pixel недостаточно велик, чтобы вместить значение пикселя для этой ColorModel. Возвращается массив пикселя. Поскольку DirectColorModel можно создавать подклассы, они наследуют реализацию этого метода и, если не переопределяют его, выбрасывают исключение при использовании неподдерживаемого transferType.- Переопределяет:
-
getDataElementsв классеColorModel - Параметры:
-
rgb— целочисленное представление пикселя в цветовой модели RGB по умолчанию -
pixel— указанный пиксель - Возвращает:
- представление указанного пикселя в виде массива в этой
ColorModel - Исключения:
-
ClassCastException— еслиpixelне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException— еслиpixelнедостаточно велик, чтобы вместить значение пикселя для этойColorModel -
UnsupportedOperationException— если этаtransferTypeне поддерживается даннойColorModel - См. также:
getComponents
public final int[] getComponents(int pixel, int[] components, int offset)
ColorModel. Значение пикселя задается как int. Если массив components имеет значение null, выделяется новый массив. Возвращается массив components. Цветовые компоненты и компонента альфа-канала сохраняются в массиве components, начиная с позиции offset, даже если массив выделяется этим методом. Выбрасывается ArrayIndexOutOfBoundsException, если массив components не имеет значения null и недостаточно велик для хранения всех цветовых компонент и компоненты альфа-канала, начиная с позиции offset.- Переопределяет:
-
getComponentsв классеColorModel - Параметры:
-
pixel— указанный пиксель -
components— массив для получения цветовых компонент и компоненты альфа-канала указанного пикселя -
offset— смещение в массивеcomponents, с которого следует начать сохранение цветовых компонент и компоненты альфа-канала - Возвращает:
- массив, содержащий цветовые компоненты и компоненту альфа-канала указанного пикселя, начиная с заданного смещения.
getComponents
public final int[] getComponents(Object pixel, int[] components, int offset)
ColorModel. Значение пикселя задается массивом элементов данных типа transferType, переданным в виде ссылки на объект. Если pixel не является примитивным массивом типа transferType, выбрасывается ClassCastException. ArrayIndexOutOfBoundsException выбрасывается, если pixel недостаточно велик, чтобы вместить значение пикселя для этой ColorModel. Если массив components имеет значение null, выделяется новый массив. Возвращается массив components. Цветовые компоненты и компонента альфа-канала сохраняются в массиве components, начиная с позиции offset, даже если массив выделяется этим методом. Выбрасывается ArrayIndexOutOfBoundsException, если массив components не имеет значения null и недостаточно велик для хранения всех цветовых компонент и компоненты альфа-канала, начиная с позиции offset. Поскольку DirectColorModel можно создавать подклассы, они наследуют реализацию этого метода и, если не переопределяют его, выбрасывают исключение при использовании неподдерживаемого transferType.- Переопределяет:
-
getComponentsв классеColorModel - Параметры:
-
pixel— указанный пиксель -
components— массив для получения цветовых компонент и компоненты альфа-канала указанного пикселя -
offset— смещение в массивеcomponents, с которого следует начать сохранение цветовых компонент и компоненты альфа-канала - Возвращает:
- массив, содержащий цветовые компоненты и компоненту альфа-канала указанного пикселя, начиная с заданного смещения.
- Исключения:
-
ClassCastException— еслиpixelне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException— еслиpixelнедостаточно велик, чтобы вместить значение пикселя для этойColorModel, или еслиcomponentsне имеет значенияnullи недостаточно велик для хранения всех цветовых компонент и компоненты альфа-канала, начиная с позицииoffset -
UnsupportedOperationException— если этаtransferTypeне поддерживается данной цветовой моделью
createCompatibleWritableRaster
public final WritableRaster createCompatibleWritableRaster(int w, int h)
WritableRaster указанной ширины и высоты с компоновкой данных (SampleModel), совместимой с этой ColorModel.- Переопределяет:
-
createCompatibleWritableRasterв классеColorModel - Параметры:
-
w— ширина новогоWritableRaster -
h— высота новогоWritableRaster - Возвращает:
- объект
WritableRasterуказанной ширины и высоты. - Исключения:
-
IllegalArgumentException— еслиwилиhменьше или равно нулю - См. также:
getDataElement
public int getDataElement(int[] components, int offset)
int в этой ColorModel, по массиву ненормализованных цветовых компонент и компоненты альфа-канала. Выбрасывается ArrayIndexOutOfBoundsException, если массив components недостаточно велик для хранения всех цветовых компонент и компоненты альфа-канала, начиная с позиции offset.- Переопределяет:
-
getDataElementв классеColorModel - Параметры:
-
components— массив ненормализованных цветовых компонент и компоненты альфа-канала -
offset— индекс вcomponents, с которого следует начать получение цветовых компонент и компоненты альфа-канала - Возвращает:
- значение пикселя типа
intв этойColorModel, соответствующее указанным компонентам. - Исключения:
-
ArrayIndexOutOfBoundsException— если массивcomponentsнедостаточно велик для хранения всех цветовых компонент и компоненты альфа-канала, начиная с позицииoffset
getDataElements
public Object getDataElements(int[] components, int offset, Object obj)
ColorModel на основе массива ненормализованных компонентов цвета/альфа-канала. Затем этот массив можно передать методу setDataElements объекта WritableRaster. Если массив components недостаточно велик, чтобы вместить все компоненты цвета и альфа-канала, начиная с указанного смещения, выбрасывается ArrayIndexOutOfBoundsException. Если переменная obj имеет значение null, выделяется новый массив. Если obj не равно null, оно должно быть примитивным массивом типа transferType; в противном случае выбрасывается ClassCastException. Если obj недостаточно велик, чтобы вместить значение пикселя для этого ColorModel, выбрасывается ArrayIndexOutOfBoundsException. Поскольку DirectColorModel можно наследовать, подклассы наследуют реализацию этого метода и, если не переопределяют его, выбрасывают исключение при использовании неподдерживаемого transferType.- Переопределяет:
-
getDataElementsв классеColorModel - Параметры:
-
components- массив ненормализованных компонентов цвета и альфа-канала -
offset- индекс вcomponents, с которого начинается получение компонентов цвета и альфа-канала -
obj-Object, представляющий массив компонентов цвета и альфа-канала - Возвращает:
Object, представляющий массив компонентов цвета и альфа-канала.- Выбрасывает:
-
ClassCastException- еслиobjне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException- еслиobjнедостаточно велик, чтобы вместить значение пикселя для этогоColorModel, или массивcomponentsнедостаточно велик, чтобы вместить все компоненты цвета и альфа-канала, начиная сoffset -
UnsupportedOperationException- если этотtransferTypeне поддерживается данной цветовой моделью - См. также:
coerceData
public final ColorModel coerceData(WritableRaster raster, boolean isAlphaPremultiplied)
isAlphaPremultiplied, предполагая, что текущее состояние данных правильно описано этим ColorModel. Метод может умножить или разделить данные цветового растра на альфа-канал либо ничего не делать, если данные уже находятся в нужном состоянии. Если данные необходимо преобразовать, этот метод также возвращает экземпляр данного ColorModel с соответствующим значением флага isAlphaPremultiplied. Если этот transferType не поддерживается данным ColorModel, метод выбрасывает UnsupportedOperationException. Поскольку ColorModel можно наследовать, подклассы наследуют реализацию этого метода и, если не переопределяют его, выбрасывают исключение при использовании неподдерживаемого transferType.- Переопределяет:
-
coerceDataв классеColorModel - Параметры:
-
raster- данныеWritableRaster -
isAlphaPremultiplied-true, если альфа-канал предварительно умножен; в противном случае —false - Возвращает:
- объект
ColorModel, представляющий преобразованные данные. - Выбрасывает:
-
UnsupportedOperationException- если этотtransferTypeне поддерживается данной цветовой моделью
isCompatibleRaster
public boolean isCompatibleRaster(Raster raster)
true, если raster совместим с этим ColorModel, и false в противном случае.- Переопределяет:
-
isCompatibleRasterв классеColorModel - Параметры:
-
raster- объектRaster, совместимость которого проверяется - Возвращает:
-
true, еслиrasterсовместим с этимColorModel; в противном случае —false.
toString
public String toString()
String, представляющий этот DirectColorModel.- Переопределяет:
-
toStringв классеColorModel - Возвращает:
String, представляющий этотDirectColorModel.
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.