Класс ColorModel
- java.lang.Object
-
- java.awt.image.ColorModel
- Все реализованные интерфейсы:
- Transparency
- Прямые известные подклассы:
- ComponentColorModel, IndexColorModel, PackedColorModel
public abstract class ColorModel extends Object implements Transparency
Абстрактный класс ColorModel, encapsulating методы для преобразования значения пикселя в цветовые компоненты (например, красный, зеленый и синий) и альфа-компонент. Для отрисовки изображения на экране, принтере или другом изображении значения пикселей должны быть преобразованы в цветовые и альфа-компоненты. В качестве аргументов или возвращаемых значений методов этого класса пиксели представлены как 32-битные целые числа или как массивы примитивных типов. Количество, порядок и интерпретация цветовых компонентов для ColorModel определяются его ColorSpace. ColorModel используется с данными пикселей, не содержащими информацию об альфа-канале, рассматривает все пиксели как непрозрачные, что соответствует значению альфа 1.0.
Этот ColorModel класс поддерживает два представления значений пикселей. Значение пикселя может быть представлено одним 32-битным целым числом или массивом примитивных типов. API Java(tm) Platform 1.0 и 1.1 представляли пиксели как одиночные byte или одиночные int значения. В целях класса ColorModel аргументы значений пикселей передавались как целые числа. Java(tm) 2 Platform API ввёл дополнительные классы для представления изображений. С объектами BufferedImage или RenderedImage, основанными на классах Raster и SampleModel, значения пикселей могут не быть удобно представлены как единственное целое число. В результате, ColorModel теперь имеет методы, принимающие значения пикселей, представленные как массивы примитивных типов. Примитивный тип, используемый конкретным объектом ColorModel, называется его типом передачи.
Объекты ColorModel, используемые с изображениями, для которых значения пикселей не удобно представить как единственное целое число, выбрасывают IllegalArgumentException, когда вызываются методы, принимающие единственный целочисленный аргумент пикселя. Подклассы ColorModel должны указать условия, при которых это происходит. Это не происходит с объектами DirectColorModel или IndexColorModel.
В настоящее время типы передачи, поддерживаемые API Java 2D(tm), — это DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, DataBuffer.TYPE_INT, DataBuffer.TYPE_SHORT, DataBuffer.TYPE_FLOAT и DataBuffer.TYPE_DOUBLE. Большинство операций рендеринга будут выполняться значительно быстрее при использовании ColorModel и изображений, основанных на первых трёх из этих типов. Кроме того, некоторые операции фильтрации изображений не поддерживаются для ColorModel и изображений, основанных на последних трёх типах. Тип передачи для конкретного объекта ColorModel задаётся при создании объекта, явным образом или по умолчанию. Все подклассы ColorModel должны указывать возможные типы передачи и способ определения количества элементов в массивах примитивов, представляющих пиксели.
Для BufferedImages, тип передачи его Raster и объекта Raster (доступного через методы getTransferType этих классов) должен соответствовать типу ColorModel. Количество элементов в массиве, представляющем пиксель для Raster и SampleModel (доступных через методы getNumDataElements этих классов), должно совпадать с количеством элементов у ColorModel.
Алгоритм преобразования из значений пикселей в цветовые и альфа-компоненты варьируется в зависимости от подкласса. Например, не обязательно существует взаимно однозначное соответствие между выборками, полученными из SampleModel объекта BufferedImage, и цветовыми/альфа-компонентами. Даже если такое соответствие существует, количество битов в выборке не обязательно равно количеству битов в соответствующем цветовом/альфа-компоненте. Каждый подкласс должен указать способ преобразования из значений пикселей в цветовые/альфа-компоненты.
Методы в классе ColorModel используют два различных представления цветовых и альфа-компонентов — нормированную и ненормированную форму. В нормированной форме каждый компонент представляет собой float значение между некоторыми минимальными и максимальными значениями. Для альфа-компонента минимум равен 0.0, а максимум — 1.0. Для цветовых компонентов минимальные и максимальные значения для каждого компонента можно получить из объекта ColorSpace. Эти значения часто равны 0.0 и 1.0 (например, нормированные значения компонентов для стандартного цветового пространства sRGB находятся в диапазоне от 0.0 до 1.0), но некоторые цветовые пространства имеют значения компонентов с различными верхними и нижними пределами. Эти пределы можно получить с помощью методов getMinValue и getMaxValue класса ColorSpace. Нормированные значения цветовых компонентов не умножены на пре-мультипликацию. Все ColorModels должны поддерживать нормированную форму.
В ненормированной форме каждый компонент является беззнаковым целочисленным значением от 0 до 2n - 1, где n — количество значащих битов для конкретного компонента. Если значения пикселей для определённого ColorModel представляют цветовые выборки, умноженные на альфа-выборку, ненормированные значения цветовых компонентов также умножаются. Ненормированная форма используется только с экземплярами ColorModel , чей ColorSpace имеет минимальные значения компонентов 0.0 для всех компонентов и максимальные значения 1.0 для всех компонентов. Ненормированная форма цветовых и альфа-компонентов может быть удобным представлением для ColorModels, у которых все нормированные значения компонентов лежат между 0.0 и 1.0. В таких случаях целочисленное значение 0 соответствует 0.0, а значение 2n - 1 соответствует 1.0. В других случаях, например, когда нормированные значения компонентов могут быть как отрицательными, так и положительными, ненормированная форма неудобна. Такие объекты ColorModel выбрасывают IllegalArgumentException при вызове методов, включающих ненормированный аргумент. Подклассы ColorModel должны указать условия, при которых это происходит.
- См. также:
-
IndexColorModel,ComponentColorModel,PackedColorModel,DirectColorModel,Image,BufferedImage,RenderedImage,ColorSpace,SampleModel,Raster,DataBuffer
Поля
| Модификатор и тип | Поле и описание |
|---|---|
protected int |
pixel_bits Общее количество битов в пикселе. |
protected int |
transferType Тип данных массива, используемого для представления значений пикселей. |
Поля, унаследованные от интерфейса java.awt.Transparency
BITMASK, OPAQUE, TRANSLUCENT Краткое описание конструкторов
| Модификатор | Конструктор и описание |
|---|---|
ColorModel(int bits) Конструктор | |
protected |
ColorModel(int pixel_bits,
int[] bits,
ColorSpace cspace,
boolean hasAlpha,
boolean isAlphaPremultiplied,
int transparency,
int transferType) Конструктор |
Краткое описание методов
| Модификатор и тип | Метод и описание |
|---|---|
ColorModel |
coerceData(WritableRaster raster,
boolean isAlphaPremultiplied) Принудительно согласует данные растрового изображения с состоянием, заданным в переменной |
SampleModel |
createCompatibleSampleModel(int w,
int h) Создаёт |
WritableRaster |
createCompatibleWritableRaster(int w,
int h) Создаёт |
boolean |
equals(Object obj) Проверяет, является ли указанный |
void |
finalize() Освобождает системные ресурсы, связанные с этим |
abstract int |
getAlpha(int pixel) Возвращает альфа-компонент для указанного пикселя, масштабированный от 0 до 255. |
int |
getAlpha(Object inData) Возвращает альфа-компонент для указанного пикселя, масштабированный от 0 до 255. |
WritableRaster |
getAlphaRaster(WritableRaster raster) Возвращает |
abstract int |
getBlue(int pixel) Возвращает синий цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартном цветовом пространстве RGB, sRGB. |
int |
getBlue(Object inData) Возвращает синий цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартном цветовом пространстве RGB |
ColorSpace |
getColorSpace() Возвращает |
int[] |
getComponents(int pixel,
int[] components,
int offset) Возвращает массив ненормализованных цветовых/альфа-компонентов для данного пикселя в этом |
int[] |
getComponents(Object pixel,
int[] components,
int offset) Возвращает массив ненормализованных цветовых/альфа-компонентов для данного пикселя в этом |
int[] |
getComponentSize() Возвращает массив количества бит на цветовой/альфа-компонент. |
int |
getComponentSize(int componentIdx) Возвращает количество бит для указанного цветового/альфа-компонента. |
int |
getDataElement(float[] normComponents,
int normOffset) Возвращает значение пикселя, представленное как |
int |
getDataElement(int[] components,
int offset) Возвращает значение пикселя, представленное как |
Object |
getDataElements(float[] normComponents,
int normOffset,
Object obj) Возвращает представление массива данных пикселя в этом |
Object |
getDataElements(int[] components,
int offset,
Object obj) Возвращает представление массива данных пикселя в этом |
Object |
getDataElements(int rgb,
Object pixel) Возвращает представление массива данных пикселя в этом |
abstract int |
getGreen(int pixel) Возвращает зелёный цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартном цветовом пространстве RGB, sRGB. |
int |
getGreen(Object inData) Возвращает зелёный цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартном цветовом пространстве RGB |
float[] |
getNormalizedComponents(int[] components,
int offset,
float[] normComponents,
int normOffset) Возвращает массив всех цветовых/альфа-компонентов в нормализованной форме, заданными массивом ненормализованных компонент. |
float[] |
getNormalizedComponents(Object pixel,
float[] normComponents,
int normOffset) Возвращает массив всех цветовых/альфа-компонентов в нормализованной форме, заданными пикселем в этом |
int |
getNumColorComponents() Возвращает количество цветовых компонент в этом |
int |
getNumComponents() Возвращает количество компонент, включая альфа-канал, в этом |
int |
getPixelSize() Возвращает количество бит на пиксель, описанное этим |
abstract int |
getRed(int pixel) Возвращает красный цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартном цветовом пространстве RGB, sRGB. |
int |
getRed(Object inData) Возвращает красный цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартном цветовом пространстве RGB |
int |
getRGB(int pixel) Возвращает цветовые/альфа-компоненты пикселя в формате стандартной цветовой модели RGB. |
int |
getRGB(Object inData) Возвращает цветовые/альфа-компоненты для указанного пикселя в формате стандартной цветовой модели RGB. |
static ColorModel |
getRGBdefault() Возвращает |
int |
getTransferType() Возвращает тип преобразования для этого |
int |
getTransparency() Возвращает прозрачность. |
int[] |
getUnnormalizedComponents(float[] normComponents,
int normOffset,
int[] components,
int offset) Возвращает массив всех цветовых/альфа-компонентов в ненормализованной форме, заданных массивом нормализованных компонент. |
boolean |
hasAlpha() Возвращает, поддерживается ли альфа-канал в этом |
int |
hashCode() Возвращает хэш-код для этого ColorModel. |
boolean |
isAlphaPremultiplied() Возвращает, умножена ли альфа в значениях пикселей, подлежащих преобразованию этим |
boolean |
isCompatibleRaster(Raster raster) Возвращает |
boolean |
isCompatibleSampleModel(SampleModel sm) Проверяет совместимость |
String |
toString() Возвращает строковое представление содержимого этого объекта |
Методы, унаследованные от класса java.lang.Object
clone, getClass, notify, notifyAll, wait, wait, wait Поля
pixel_bits
protected int pixel_bits
Общее количество битов в пикселе.
transferType
protected int transferType
Тип данных массива, используемого для представления значений пикселей.
Конструкторы
ColorModel
public ColorModel(int bits)
Создаёт ColorModel, который преобразует пиксели указанного количества битов в компоненты цвета/альфа. Цветовое пространство — это стандартное RGB ColorSpace, которое является sRGB. Предполагается, что значения пикселей включают информацию об альфа-канале. Если информация о цвете и альфа-канале представлена в значении пикселя как отдельные пространственные полосы, предполагается, что цветовые полосы не умножены на значение альфа-канала. Тип прозрачности — java.awt.Transparency.TRANSLUCENT. Тип передачи — самый маленький из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT, который может содержать один пиксель (или DataBuffer.TYPE_UNDEFINED, если bits больше 32). Поскольку у этого конструктора нет информации о количестве битов на компонент цвета и альфа-канала, любой подкласс, вызывающий этот конструктор, должен переопределить любой метод, требующий этой информации.
- Параметры:
-
bits- количество битов в пикселе - Исключения:
-
IllegalArgumentException- если количество битов вbitsменьше 1
ColorModel
protected ColorModel(int pixel_bits,
int[] bits,
ColorSpace cspace,
boolean hasAlpha,
boolean isAlphaPremultiplied,
int transparency,
int transferType) Создаёт ColorModel, который преобразует значения пикселей в компоненты цвета/альфа. Компоненты цвета будут в указанном ColorSpace. pixel_bits — количество битов в значениях пикселей. Массив bits указывает количество значимых битов на каждый компонент цвета и альфа-канала. Его длина должна быть равна количеству компонентов в ColorSpace, если в значениях пикселей нет информации об альфа-канале, или на единицу больше этого значения, если информация об альфа-канале есть. hasAlpha указывает, присутствует ли информация об альфа-канале. boolean isAlphaPremultiplied определяет, как интерпретировать значения пикселей, в которых цвет и информация об альфа-канале представлены как отдельные пространственные полосы. Если boolean — true, предполагается, что цветовые образцы умножены на образец альфа-канала. transparency определяет, какие значения альфа-канала могут быть представлены этой моделью цвета. Тип передачи — тип примитивного массива, используемого для представления значений пикселей. Обратите внимание, что массив bits содержит количество значимых битов на каждый компонент цвета/альфа-канала после преобразования из значений пикселей. Например, для IndexColorModel с pixel_bits, равным 16, массив bits может содержать четыре элемента, каждый из которых установлен на 8.
- Параметры:
-
pixel_bits- количество битов в значениях пикселей -
bits- массив, который определяет количество значимых битов на каждый компонент цвета и альфа-канала -
cspace- указанноеColorSpace -
hasAlpha-trueесли информация об альфа-канале присутствует;falseв противном случае -
isAlphaPremultiplied-trueесли цветовые образцы предполагаются умноженными на образцы альфа-канала;falseв противном случае -
transparency- какие значения альфа-канала могут быть представлены этой моделью цвета -
transferType- тип массива, используемого для представления значений пикселей - Исключения:
-
IllegalArgumentException- если длина массива bit меньше количества цветовых или альфа-компонентов в этойColorModel, или если прозрачность не является допустимым значением. -
IllegalArgumentException- если сумма количества битов вbitsменьше 1 или если любой из элементов вbitsменьше 0. - См. также:
Transparency
Методы
getRGBdefault
public static ColorModel getRGBdefault()
Возвращает DirectColorModel, который описывает стандартный формат целочисленных значений RGB, используемых во многих методах интерфейсов изображений AWT для удобства программиста. Цветовое пространство — это стандартное ColorSpace, sRGB. Формат значений RGB — целое число с 8 битами каждого из компонентов цвета альфа, красный, зеленый и синий, упорядоченных соответственно от старшего байта к младшему байту, как в: 0xAARRGGBB. Компоненты цвета не умножаются на компонент альфа. Этот формат необязательно представляет собой родной или наиболее эффективный ColorModel для конкретного устройства или для всех изображений. Он просто используется как общий формат модели цвета.
- Возвращает:
- объект
DirectColorModel, описывающий стандартные значения RGB.
hasAlpha
public final boolean hasAlpha()
Возвращает, поддерживается ли альфа-канал в этом ColorModel.
- Возвращает:
-
trueесли альфа-канал поддерживается в этомColorModel;falseв противном случае.
isAlphaPremultiplied
public final boolean isAlphaPremultiplied()
Возвращает, умножены ли значения альфа-канала на значения пикселей, подлежащие преобразованию в этой ColorModel. Если булево значение true, эта ColorModel используется для интерпретации значений пикселей, в которых цвет и информация об альфа-канале представлены как отдельные пространственные полосы, и предполагается, что цветовые образцы умножены на образец альфа-канала.
- Возвращает:
-
trueесли значения альфа-канала умножены на значения пикселей, подлежащие преобразованию в этойColorModel;falseв противном случае.
getTransferType
public final int getTransferType()
Возвращает тип передачи этого ColorModel. Тип передачи — это тип примитивного массива, используемого для представления значений пикселей в виде массивов.
- Возвращает:
- тип передачи.
- С:
- 1.3
getPixelSize
public int getPixelSize()
Возвращает количество битов на пиксель, описанное этим ColorModel.
- Возвращает:
- количество битов на пиксель.
getComponentSize
public int getComponentSize(int componentIdx)
Возвращает количество битов для указанного компонента цвета/альфа-канала. Цветовые компоненты индексируются в порядке, указанном в ColorSpace. Обычно этот порядок отражает имя типа цветового пространства. Например, для TYPE_RGB индекс 0 соответствует красному, индекс 1 — зелёному, а индекс 2 — синему. Если эта ColorModel поддерживает альфа-канал, компонент альфа-канала соответствует индексу, следующему за последним цветовым компонентом.
- Параметры:
-
componentIdx- индекс компонента цвета/альфа-канала - Возвращает:
- количество битов для компонента цвета/альфа-канала в указанном индексе.
- Исключения:
-
ArrayIndexOutOfBoundsException- еслиcomponentIdxбольше числа компонентов или меньше нуля -
NullPointerException- если массив битовnull
getComponentSize
public int[] getComponentSize()
Возвращает массив количества битов на каждый компонент цвета/альфа-канала. Массив содержит цветовые компоненты в порядке, указанном в ColorSpace, а затем компонент альфа-канала, если он присутствует.
- Возвращает:
- массив количества битов на каждый компонент цвета/альфа-канала
getTransparency
public int getTransparency()
Возвращает прозрачность. Возвращает OPAQUE, BITMASK или TRANSLUCENT.
- Определено в:
-
getTransparencyв интерфейсеTransparency - Возвращает:
- прозрачность этого
ColorModel. - См. также:
-
Transparency.OPAQUE,Transparency.BITMASK,Transparency.TRANSLUCENT
getNumComponents
public int getNumComponents()
Возвращает количество компонентов, включая альфа-канал, в этом ColorModel. Это равно количеству цветовых компонентов, плюс один, если есть компонент альфа-канала.
- Возвращает:
- количество компонентов в этом
ColorModel
getNumColorComponents
public int getNumColorComponents()
Возвращает количество цветовых компонентов в этом ColorModel. Это количество компонентов, возвращаемое ColorSpace.getNumComponents().
- Возвращает:
- количество цветовых компонентов в этом
ColorModel. - См. также:
ColorSpace.getNumComponents()
getRed
public abstract int getRed(int pixel)
Возвращает красный цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартном цветовом пространстве RGB, sRGB. Если необходимо, выполняется преобразование цвета. Значение пикселя задано как int. Бросается исключение IllegalArgumentException, если значения пикселей для этой ColorModel не могут быть удобно представлены как одно целое число. Возвращаемое значение не является умноженным на альфа-канал. Например, если альфа-канал умножен, этот метод делит его перед возвращением значения. Если значение альфа-канала равно 0, значение красного цвета равно 0.
- Параметры:
-
pixel- указанный пиксель - Возвращает:
- значение красного компонента указанного пикселя.
getGreen
public abstract int getGreen(int pixel)
Возвращает зелёный цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартном цветовом пространстве RGB, sRGB. Если необходимо, выполняется преобразование цвета. Значение пикселя задано как int. Бросается исключение IllegalArgumentException, если значения пикселей для этой ColorModel не могут быть удобно представлены как одно целое число. Возвращаемое значение не умножается на альфа-канал. Например, если альфа-канал умножен, этот метод делит его перед возвращением значения. Если значение альфа-канала равно 0, значение зелёного цвета равно 0.
- Параметры:
-
pixel- указанный пиксель - Возвращает:
- значение зелёного компонента указанного пикселя.
getBlue
public abstract int getBlue(int pixel)
Возвращает синий цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартном цветовом пространстве RGB, sRGB. Если необходимо, выполняется преобразование цвета. Значение пикселя задано как int. Бросается исключение IllegalArgumentException, если значения пикселей для этой ColorModel не могут быть удобно представлены как одно целое число. Возвращаемое значение не умножается на альфа-канал, например, если альфа-канал умножен, этот метод делит его перед возвращением значения. Если значение альфа-канала равно 0, значение синего цвета равно 0.
- Параметры:
-
pixel- указанный пиксел - Возвращает:
- значение синего компонента указанного пикселя.
getAlpha
public abstract int getAlpha(int pixel)
Возвращает альфа-компонент для указанного пикселя, масштабированный от 0 до 255. Значение пикселя задано как целое число. Если значения пикселей для этого IllegalArgumentException не могут быть удобно представлены как одно целое число, генерируется ColorModel.
- Параметры:
-
pixel- указанный пиксел - Возвращает:
- значение альфа-компонента указанного пикселя.
getRGB
public int getRGB(int pixel)
Возвращает цветовые/альфа-компоненты пикселя в формате модели цвета RGB по умолчанию. Если необходимо, выполняется преобразование цвета. Значение пикселя задано как целое число. Если значения пикселей для этого ColorModel не могут быть удобно представлены как одно целое число, генерируется IllegalArgumentException. Возвращаемое значение имеет не умноженный на альфа-канал формат. Например, если альфа-канал умножен, этот метод делит цветовые компоненты на него. Если значение альфа-канала равно 0, цветовые значения также равны 0.
- Параметры:
-
pixel- указанный пиксел - Возвращает:
- значение RGB цветовых/альфа-компонентов указанного пикселя.
- См. также:
getRGBdefault()
getRed
public int getRed(Object inData)
Возвращает красный цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартной цветовой модели RGB, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задано массивом данных типа transferType, переданным в качестве ссылки на объект. Возвращаемое значение не умножено на альфа-канал. Например, если альфа-канал умножен, этот метод делит его перед возвращением значения. Если значение альфа-канала равно 0, значение красного равно 0. Если inData не является примитивным массивом типа transferType, генерируется ClassCastException. Генерируется ArrayIndexOutOfBoundsException, если inData недостаточно велик для хранения значения пикселя для этого ColorModel. Если этот transferType не поддерживается, генерируется UnsupportedOperationException. Поскольку ColorModel является абстрактным классом, любой экземпляр должен быть экземпляром подкласса. Подклассы наследуют реализацию этого метода, и если они его не переопределяют, этот метод генерирует исключение, если подкласс использует тип transferType не равный DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, или DataBuffer.TYPE_INT.
- Параметры:
-
inData- массив значений пикселей - Возвращает:
- значение красного компонента указанного пикселя.
- Исключения:
-
ClassCastException- еслиinDataне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException- еслиinDataнедостаточно велик для хранения значения пикселя для этогоColorModel -
UnsupportedOperationException- если этотtranferTypeне поддерживается этимColorModel
getGreen
public int getGreen(Object inData)
Возвращает зелёный цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартной цветовой модели RGB, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задано массивом данных типа transferType, переданным в качестве ссылки на объект. Возвращаемое значение не умножено на альфа-канал. Например, если альфа-канал умножен, этот метод делит его перед возвращением значения. Если значение альфа-канала равно 0, значение зелёного равно 0. Если inData не является примитивным массивом типа transferType, генерируется ClassCastException. Генерируется ArrayIndexOutOfBoundsException, если inData недостаточно велик для хранения значения пикселя для этого ColorModel. Если этот transferType не поддерживается, генерируется UnsupportedOperationException. Поскольку ColorModel является абстрактным классом, любой экземпляр должен быть экземпляром подкласса. Подклассы наследуют реализацию этого метода, и если они его не переопределяют, этот метод генерирует исключение, если подкласс использует тип transferType не равный DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, или DataBuffer.TYPE_INT.
- Параметры:
-
inData- массив значений пикселей - Возвращает:
- значение зелёного компонента указанного пикселя.
- Исключения:
-
ClassCastException- еслиinDataне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException- еслиinDataнедостаточно велик для хранения значения пикселя для этогоColorModel -
UnsupportedOperationException- если этотtranferTypeне поддерживается этимColorModel
getBlue
public int getBlue(Object inData)
Возвращает синий цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартной цветовой модели RGB, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задано массивом данных типа transferType, переданным в качестве ссылки на объект. Возвращаемое значение не умножено на альфа-канал. Например, если альфа-канал умножен, этот метод делит его перед возвращением значения. Если значение альфа-канала равно 0, значение синего будет равно 0. Если inData не является примитивным массивом типа transferType, генерируется ClassCastException. Генерируется ArrayIndexOutOfBoundsException, если inData недостаточно велик для хранения значения пикселя для этого ColorModel. Если этот transferType не поддерживается, генерируется UnsupportedOperationException. Поскольку ColorModel является абстрактным классом, любой экземпляр должен быть экземпляром подкласса. Подклассы наследуют реализацию этого метода, и если они его не переопределяют, этот метод генерирует исключение, если подкласс использует тип transferType не равный DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, или DataBuffer.TYPE_INT.
- Параметры:
-
inData- массив значений пикселей - Возвращает:
- значение синего компонента указанного пикселя.
- Исключения:
-
ClassCastException- еслиinDataне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException- еслиinDataнедостаточно велик для хранения значения пикселя для этогоColorModel -
UnsupportedOperationException- если этотtranferTypeне поддерживается этимColorModel
getAlpha
public int getAlpha(Object inData)
Возвращает альфа-компонент для указанного пикселя, масштабированный от 0 до 255. Значение пикселя задано массивом данных типа transferType, переданным в качестве ссылки на объект. Если inData не является примитивным массивом типа transferType, генерируется ClassCastException. Генерируется ArrayIndexOutOfBoundsException, если inData недостаточно велик для хранения значения пикселя для этого ColorModel. Если этот transferType не поддерживается, генерируется UnsupportedOperationException. Поскольку ColorModel является абстрактным классом, любой экземпляр должен быть экземпляром подкласса. Подклассы наследуют реализацию этого метода, и если они его не переопределяют, этот метод генерирует исключение, если подкласс использует тип transferType не равный DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, или DataBuffer.TYPE_INT.
- Параметры:
-
inData- указанный пиксел - Возвращает:
- альфа-компонент указанного пикселя, масштабированный от 0 до 255.
- Исключения:
-
ClassCastException- еслиinDataне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException- еслиinDataнедостаточно велик для хранения значения пикселя для этогоColorModel -
UnsupportedOperationException- если этотtranferTypeне поддерживается этимColorModel
getRGB
public int getRGB(Object inData)
Возвращает цветовые/альфа-компоненты для указанного пикселя в формате модели цвета RGB по умолчанию. При необходимости выполняется преобразование цвета. Значение пикселя задано массивом данных типа transferType, переданным в качестве ссылки на объект. Если inData не является примитивным массивом типа transferType, генерируется ClassCastException. Генерируется ArrayIndexOutOfBoundsException, если inData недостаточно велик для хранения значения пикселя для этого ColorModel. Возвращаемое значение будет в формате без умножения на альфа-канал, т.е. если альфа-канал умножен, этот метод разделит его на цветовые компоненты (если значение альфа-канала равно 0, цветовые значения будут равны 0).
- Параметры:
-
inData- указанный пиксел - Возвращает:
- цветовые и альфа-компоненты указанного пикселя.
- См. также:
getRGBdefault()
getDataElements
public Object getDataElements(int rgb,
Object pixel) Возвращает массив данных элементов представления пикселя в этом ColorModel, учитывая целочисленное представление пикселя в стандартной цветовой модели RGB. Этот массив затем может быть передан в метод WritableRaster.setDataElements(int, int, java.lang.Object) объекта WritableRaster. Если переменная пикселя null, будет выделен новый массив. Если pixel не null, это должен быть примитивный массив типа transferType; в противном случае генерируется ClassCastException. Генерируется ArrayIndexOutOfBoundsException, если pixel недостаточно велик для хранения значения пикселя для этого ColorModel. Возвращается массив пикселей. Если этот transferType не поддерживается, генерируется UnsupportedOperationException. Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном классе генерирует UnsupportedOperationException.
- Параметры:
-
rgb- целочисленное представление пикселя в стандартной цветовой модели RGB -
pixel- указанный пиксель - Возвращает:
- массив, представляющий указанный пиксель в этом
ColorModel. - Выбрасывает:
-
ClassCastException- еслиpixelне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException- еслиpixelнедостаточно велик для хранения значения пикселя для этогоColorModel -
UnsupportedOperationException- если этот метод не поддерживается этимColorModel - См. также:
-
WritableRaster.setDataElements(int, int, java.lang.Object),SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)
getComponents
public int[] getComponents(int pixel,
int[] components,
int offset) Возвращает массив ненормализованных цветовых/альфа-компонентов, заданных пикселем в этом ColorModel. Значение пикселя задается как int. Будет выброшено исключение IllegalArgumentException, если значения пикселей для этого ColorModel не могут быть удобно представлены как единый int или если значения цветовых компонентов для этого ColorModel не могут быть удобно представлены в ненормализованной форме. Например, этот метод можно использовать для получения компонентов для определенного значения пикселя в DirectColorModel. Если массив компонентов null, будет выделен новый массив. Массив компонентов будет возвращен. Цветовые/альфа-компоненты хранятся в массиве компонентов, начиная с offset (даже если массив выделен этим методом). Будет выброшено исключение ArrayIndexOutOfBoundsException, если массив компонентов не null и не достаточно велик для хранения всех цветовых и альфа-компонентов (начиная с смещения). Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном классе выбрасывает исключение UnsupportedOperationException.
- Параметры:
-
pixel- указанный пиксель -
components- массив для получения цветовых и альфа-компонентов указанного пикселя -
offset- смещение в массивеcomponentsдля начала хранения цветовых и альфа-компонентов - Возвращает:
- массив, содержащий цветовые и альфа-компоненты указанного пикселя, начиная с указанного смещения.
- Выбрасывает:
-
UnsupportedOperationException- если этот метод не поддерживается этимColorModel
getComponents
public int[] getComponents(Object pixel,
int[] components,
int offset) Возвращает массив ненормализованных цветовых/альфа-компонентов, заданных пикселем в этом ColorModel. Значение пикселя задается массивом элементов данных типа transferType, переданных в качестве ссылки на объект. Если pixel не является примитивным массивом типа transferType, выбрасывается исключение ClassCastException. Будет выброшено исключение IllegalArgumentException, если значения цветовых компонентов для этого ColorModel не могут быть удобно представлены в ненормализованной форме. Исключение ArrayIndexOutOfBoundsException будет выброшено, если pixel не достаточно велик для хранения значения пикселя для этого ColorModel. Этот метод можно использовать для получения компонентов для определенного значения пикселя в любом ColorModel. Если массив компонентов null, будет выделен новый массив. Массив компонентов будет возвращен. Цветовые/альфа-компоненты хранятся в массиве components начиная с offset (даже если массив выделен этим методом). Будет выброшено исключение ArrayIndexOutOfBoundsException, если массив компонентов не null и не достаточно велик для хранения всех цветовых и альфа-компонентов (начиная со смещения offset). Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном классе выбрасывает исключение UnsupportedOperationException.
- Параметры:
-
pixel- указанный пиксель -
components- массив, который получает цветовые и альфа-компоненты указанного пикселя -
offset- индекс в массивеcomponents, с которого начинается хранение цветовых и альфа-компонентов указанного пикселя - Возвращает:
- массив, содержащий цветовые и альфа-компоненты указанного пикселя, начиная с указанного смещения.
- Выбрасывает:
-
UnsupportedOperationException- если этот метод не поддерживается этимColorModel
getUnnormalizedComponents
public int[] getUnnormalizedComponents(float[] normComponents,
int normOffset,
int[] components,
int offset) Возвращает массив всех цветовых/альфа-компонентов в ненормализованной форме, заданный массивом нормализованных компонентов. Ненормализованные компоненты являются целыми беззнаковыми значениями от 0 до 2n - 1, где n – количество бит для конкретного компонента. Нормализованные компоненты – это значения с плавающей точкой между минимальным и максимальным значениями для каждого компонента, указанными объектом ColorSpace для этого ColorModel. Будет выброшено исключение IllegalArgumentException, если значения цветовых компонентов для этого ColorModel не могут быть удобно представлены в ненормализованной форме. Если массив components пуст, будет выделен новый массив. Будет возвращен массив components. Цветовые/альфа-компоненты хранятся в массиве components начиная с offset (даже если массив выделен этим методом). Будет выброшено исключение ArrayIndexOutOfBoundsException, если массив components не пуст и не достаточно велик для хранения всех цветовых и альфа-компонентов (начиная со смещения offset). Исключение IllegalArgumentException будет выброшено, если массив normComponents не достаточно велик для хранения всех цветовых и альфа-компонентов, начиная со смещения normOffset.
- Параметры:
-
normComponents- массив, содержащий нормализованные компоненты -
normOffset- смещение в массивеnormComponentsдля начала извлечения нормализованных компонентов -
components- массив, который получает компоненты изnormComponents -
offset- индекс вcomponentsдля начала хранения нормализованных компонентов изnormComponents - Возвращает:
- массив, содержащий ненормализованные цветовые и альфа-компоненты.
- Выбрасывает:
-
IllegalArgumentException- Если значения компонентов для этогоColorModelне могут быть удобно представлены в ненормализованной форме. -
IllegalArgumentException- если длинаnormComponentsминусnormOffsetменьшеnumComponents -
UnsupportedOperationException- если конструктор этогоColorModelвызвал конструкторsuper(bits), но не переопределил этот метод. См. конструкторColorModel(int).
getNormalizedComponents
public float[] getNormalizedComponents(int[] components,
int offset,
float[] normComponents,
int normOffset) Возвращает массив всех цветовых/альфа-компонентов в нормализованной форме, заданный массивом ненормализованных компонентов. Ненормализованные компоненты – это целые беззнаковые значения от 0 до 2n - 1, где n – количество бит для конкретного компонента. Нормализованные компоненты – это значения с плавающей точкой между минимальным и максимальным значениями для каждого компонента, указанными объектом ColorSpace для этого ColorModel. Будет выброшено исключение IllegalArgumentException, если значения цветовых компонентов для этого ColorModel не могут быть удобно представлены в ненормализованной форме. Если массив normComponents пуст, будет выделен новый массив. Будет возвращен массив normComponents. Цветовые/альфа-компоненты хранятся в массиве normComponents начиная с normOffset (даже если массив выделен этим методом). Будет выброшено исключение ArrayIndexOutOfBoundsException, если массив normComponents не пуст и не достаточно велик для хранения всех цветовых и альфа-компонентов (начиная со смещения normOffset). Исключение IllegalArgumentException будет выброшено, если массив components не достаточно велик для хранения всех цветовых и альфа-компонентов, начиная со смещения offset.
Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. По умолчанию реализация этого метода в этом абстрактном классе предполагает, что значения компонентов для этого класса могут быть удобно представлены в ненормализованной форме. Поэтому подклассы, у экземпляров которых могут отсутствовать значения, поддерживающие ненормализованную форму, должны переопределить этот метод.
- Параметры:
-
components- массив, содержащий ненормализованные компоненты -
offset- смещение в массивеcomponentsдля начала извлечения ненормализованных компонентов -
normComponents- массив, который получает нормализованные компоненты -
normOffset- индекс вnormComponentsдля начала хранения нормализованных компонентов - Возвращает:
- массив, содержащий нормализованные цветовые и альфа-компоненты.
- Выбрасывает:
-
IllegalArgumentException- Если значения компонентов для этогоColorModelне могут быть удобно представлены в ненормализованной форме. -
UnsupportedOperationException- если конструктор этогоColorModelвызвал конструкторsuper(bits), но не переопределил этот метод. См. конструкторColorModel(int). -
UnsupportedOperationException- если этот метод не может определить количество бит на компонент
getDataElement
public int getDataElement(int[] components,
int offset) Возвращает значение пикселя, представленное как int в этом ColorModel, заданное массивом ненормализованных цветовых/альфа-компонентов. Этот метод выбросит исключение IllegalArgumentException, если значения компонентов для этого ColorModel не могут быть удобно представлены как единое int или если значения цветовых компонентов для этого ColorModel не могут быть удобно представлены в ненормализованной форме. Исключение ArrayIndexOutOfBoundsException будет выброшено, если массив components не достаточно велик для хранения всех цветовых и альфа-компонентов (начиная со смещения offset). Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном классе выбрасывает исключение UnsupportedOperationException.
- Параметры:
-
components- массив ненормализованных цветовых и альфа-компонентов -
offset- индекс вcomponents, с которого начинать извлечение цветовых и альфа-компонентов - Возвращает:
- значение пикселя
intв данномColorModel, соответствующее указанным компонентам. - Выбрасывает:
-
IllegalArgumentException- если значения пикселей для данногоColorModelне могут быть удобно представлены как одноint -
IllegalArgumentException- если значения компонентов для данногоColorModelне могут быть удобно представлены в ненормализованной форме -
ArrayIndexOutOfBoundsException- если массивcomponentsнедостаточно велик для хранения всех цветовых и альфа-компонентов, начиная с индексаoffset -
UnsupportedOperationException- если данный метод не поддерживается даннымColorModel
getDataElements
public Object getDataElements(int[] components,
int offset,
Object obj) Возвращает массив элементов данных, представляющий пиксель в этом ColorModel, заданный массивом ненормализованных цветовых/альфа-компонентов. Этот массив затем можно передать в метод setDataElements объекта WritableRaster. Этот метод выбросит исключение IllegalArgumentException, если значения цветовых компонентов для этого ColorModel не могут быть удобно представлены в ненормализованной форме. Бросается исключение ArrayIndexOutOfBoundsException, если массив components недостаточно велик для хранения всех цветовых и альфа-компонентов (начиная с offset). Если переменная obj имеет значение null, будет выделен новый массив. Если obj не является null, он должен быть примитивным массивом типа transferType; в противном случае, бросается исключение ClassCastException. Исключение ArrayIndexOutOfBoundsException выбрасывается, если obj недостаточно велик для хранения значения пикселя для этого ColorModel. Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном классе выбрасывает исключение UnsupportedOperationException.
- Параметры:
-
components- массив ненормализованных цветовых и альфа-компонентов -
offset- индекс вcomponents, с которого начинать извлечение цветовых и альфа-компонентов -
obj- объект, представляющий массив цветовых и альфа-компонентов - Возвращает:
- объект
Object, представляющий массив цветовых и альфа-компонентов. - Выбрасывает:
-
ClassCastException- еслиobjне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException- еслиobjнедостаточно велик для хранения значения пикселя для данногоColorModelили массивcomponentsнедостаточно велик для хранения всех цветовых и альфа-компонентов, начиная сoffset -
IllegalArgumentException- если значения компонентов для данногоColorModelне могут быть удобно представлены в ненормализованной форме -
UnsupportedOperationException- если данный метод не поддерживается этимColorModel - См. также:
-
WritableRaster.setDataElements(int, int, java.lang.Object),SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)
getDataElement
public int getDataElement(float[] normComponents,
int normOffset) Возвращает значение пикселя, представленное как int в этом ColorModel, заданное массивом нормализованных цветовых/альфа-компонентов. Этот метод выбросит исключение IllegalArgumentException, если значения пикселей для этого ColorModel не могут быть удобно представлены как одно int. Исключение ArrayIndexOutOfBoundsException бросается, если массив normComponents недостаточно велик для хранения всех цветовых и альфа-компонентов (начиная с normOffset). Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. По умолчанию этот метод в этом абстрактном классе сначала преобразует нормализованную форму в ненормализованную, а затем вызывает getDataElement(int[], int). Подклассы, которые могут иметь экземпляры, не поддерживающие ненормализованную форму, должны переопределить этот метод.
- Параметры:
-
normComponents- массив нормализованных цветовых и альфа-компонентов -
normOffset- индекс вnormComponents, с которого начинать извлечение цветовых и альфа-компонентов - Возвращает:
- значение пикселя
intв этомColorModel, соответствующее указанным компонентам. - Выбрасывает:
-
IllegalArgumentException- если значения пикселей для этогоColorModelне могут быть удобно представлены как одноint -
ArrayIndexOutOfBoundsException- если массивnormComponentsнедостаточно велик для хранения всех цветовых и альфа-компонентов, начиная сnormOffset - С:
- 1.4
getDataElements
public Object getDataElements(float[] normComponents,
int normOffset,
Object obj) Возвращает массив элементов данных, представляющий пиксель в этом ColorModel, заданный массивом нормализованных цветовых/альфа-компонентов. Этот массив затем можно передать в метод setDataElements объекта WritableRaster. Бросается исключение ArrayIndexOutOfBoundsException, если массив normComponents недостаточно велик для хранения всех цветовых и альфа-компонентов (начиная с normOffset). Если переменная obj имеет значение null, будет выделен новый массив. Если obj не является null, он должен быть примитивным массивом типа transferType; в противном случае, бросается исключение ClassCastException. Исключение ArrayIndexOutOfBoundsException бросается, если obj недостаточно велик для хранения значения пикселя для этого ColorModel. Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. По умолчанию этот метод в этом абстрактном классе сначала преобразует нормализованную форму в ненормализованную, а затем вызывает getDataElement(int[], int, Object). Подклассы, которые могут иметь экземпляры, не поддерживающие ненормализованную форму, должны переопределить этот метод.
- Параметры:
-
normComponents- массив нормализованных цветовых и альфа-компонентов -
normOffset- индекс вnormComponents, с которого начинать извлечение цветовых и альфа-компонентов -
obj- примитивный массив данных для хранения возвращаемого пикселя - Возвращает:
- примитивный массив данных, представляющий пиксель
- Выбрасывает:
-
ClassCastException- еслиobjне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException- еслиobjнедостаточно велик для хранения значения пикселя для данногоColorModelили массивnormComponentsнедостаточно велик для хранения всех цветовых и альфа-компонентов, начиная сnormOffset - С:
- 1.4
- См. также:
-
WritableRaster.setDataElements(int, int, java.lang.Object),SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)
getNormalizedComponents
public float[] getNormalizedComponents(Object pixel,
float[] normComponents,
int normOffset) Возвращает массив всех цветовых/альфа-компонентов в нормализованной форме, заданного пикселя в этом ColorModel. Значение пикселя задаётся массивом элементов данных типа transferType, переданных в качестве ссылки на объект. Если пиксель не является примитивным массивом типа transferType, бросается исключение ClassCastException. Исключение ArrayIndexOutOfBoundsException выбрасывается, если pixel недостаточно велик для хранения значения пикселя для данного ColorModel. Нормализованные компоненты — значения типа float, лежащие между минимальным и максимальным значениями для каждого компонента, указанными объектом ColorSpace для этого ColorModel. Если массив normComponents равен null, будет выделен новый массив. Будет возвращен массив normComponents. Цветовые/альфа-компоненты хранятся в массиве normComponents начиная с normOffset (даже если массив выделяется этим методом). Исключение ArrayIndexOutOfBoundsException выбрасывается, если массив normComponents не является null и недостаточно велик для хранения всех цветовых и альфа-компонентов (начиная с normOffset). Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. По умолчанию этот метод в этом абстрактном классе сначала извлекает цветовые и альфа-компоненты в ненормализованной форме, используя getComponents(Object, int[], int), а затем вызывает getNormalizedComponents(int[], int, float[], int). Подклассы, которые могут иметь экземпляры, не поддерживающие ненормализованную форму, должны переопределить этот метод.
- Параметры:
-
pixel- указанный пиксель -
normComponents- массив для получения нормализованных компонентов -
normOffset- смещение в массивеnormComponents, с которого начинать хранение нормализованных компонентов - Возвращает:
- массив, содержащий нормализованные цветовые и альфа-компоненты.
- Выбрасывает:
-
ClassCastException- еслиpixelне является примитивным массивом типа transferType -
ArrayIndexOutOfBoundsException- еслиnormComponentsнедостаточно велик для хранения всех цветовых и альфа-компонентов, начиная сnormOffset -
ArrayIndexOutOfBoundsException- еслиpixelнедостаточно велик для хранения значения пикселя для этогоColorModel. -
UnsupportedOperationException- если конструктор данногоColorModelвызвал конструкторsuper(bits), но не переопределил данный метод. Смотрите конструкторColorModel(int). -
UnsupportedOperationException- если этот метод не может определить количество бит на компонент - С:
- 1.4
equals
public boolean equals(Object obj)
Проверяет, является ли заданный Object экземпляром ColorModel и равен ли он этому ColorModel.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- объект для проверки на равенство - Возвращает:
-
trueесли указанный объект является экземпляромColorModelи равен этомуColorModel;falseв противном случае. - См. также:
-
Object.hashCode(),HashMap
hashCode
public int hashCode()
Возвращает хэш-код для этого ColorModel.
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- хэш-код для этого ColorModel.
- См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
getColorSpace
public final ColorSpace getColorSpace()
Возвращает ColorSpace , связанный с этим ColorModel.
- Возвращает:
ColorSpaceэтогоColorModel.
coerceData
public ColorModel coerceData(WritableRaster raster,
boolean isAlphaPremultiplied) Принудительно приводит данные растра к состоянию, указанному в переменной isAlphaPremultiplied, предполагая, что данные в настоящее время корректно описываются этим ColorModel . Может умножать или делить данные цветового растра на альфа-канал, или ничего не делать, если данные находятся в правильном состоянии. Если данные нужно привести к соответствию, этот метод также вернёт экземпляр этого ColorModel с установленным соответствующим флагом isAlphaPremultiplied. Этот метод выбросит UnsupportedOperationException, если он не поддерживается этим ColorModel. Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном классе выбрасывает UnsupportedOperationException.
- Параметры:
-
raster- данныеWritableRaster -
isAlphaPremultiplied-true, если альфа-канал предварительно умножен;falseв противном случае - Возвращает:
- объект
ColorModel, представляющий приведенные к соответствию данные.
isCompatibleRaster
public boolean isCompatibleRaster(Raster raster)
Возвращает true, если raster совместим с этим ColorModel и false, если нет. Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном классе выбрасывает UnsupportedOperationException.
- Параметры:
-
raster- объектRasterдля проверки на совместимость - Возвращает:
-
trueеслиrasterсовместим с этимColorModel. - Исключения:
-
UnsupportedOperationException- если этот метод не реализован для этогоColorModel
createCompatibleWritableRaster
public WritableRaster createCompatibleWritableRaster(int w,
int h) Создаёт WritableRaster с указанной шириной и высотой, имеющий структуру данных (SampleModel) совместимую с этим ColorModel. Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном классе выбрасывает UnsupportedOperationException.
- Параметры:
-
w- ширина для новогоWritableRaster -
h- высота для новогоWritableRaster - Возвращает:
- объект
WritableRasterс заданной шириной и высотой. - Исключения:
-
UnsupportedOperationException- если этот метод не поддерживается этимColorModel - См. также:
-
WritableRaster,SampleModel
createCompatibleSampleModel
public SampleModel createCompatibleSampleModel(int w,
int h) Создаёт SampleModel с указанной шириной и высотой, имеющий структуру данных, совместимую с этим ColorModel. Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном классе выбрасывает UnsupportedOperationException.
- Параметры:
-
w- ширина для новогоSampleModel -
h- высота для новогоSampleModel - Возвращает:
- объект
SampleModelс заданной шириной и высотой. - Исключения:
-
UnsupportedOperationException- если этот метод не поддерживается этимColorModel - См. также:
SampleModel
isCompatibleSampleModel
public boolean isCompatibleSampleModel(SampleModel sm)
Проверяет, является ли SampleModel совместимым с этим ColorModel. Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном классе выбрасывает UnsupportedOperationException.
- Параметры:
-
sm- указанныйSampleModel - Возвращает:
-
trueесли указанныйSampleModelсовместим с этимColorModel;falseв противном случае. - Исключения:
-
UnsupportedOperationException- если этот метод не поддерживается этимColorModel - См. также:
SampleModel
finalize
public void finalize()
Освобождает системные ресурсы, связанные с этим ColorModel после того, как на этот ColorModel больше нет ссылок.
- Переопределяет:
-
finalizeв классеObject - См. также:
-
WeakReference,PhantomReference
getAlphaRaster
public WritableRaster getAlphaRaster(WritableRaster raster)
Возвращает Raster, представляющий альфа-канал изображения, извлечённый из входного Raster, при условии, что значения пикселей этого ColorModel представляют информацию о цвете и альфа-канале как отдельные пространственные полосы (например, ComponentColorModel и DirectColorModel). Этот метод предполагает, что объекты Raster, связанные с таким ColorModel, хранят альфа-полосу, если она есть, как последнюю полосу данных изображения. Возвращает null, если нет отдельной пространственной полосы альфа-канала, связанной с этим ColorModel. Если это IndexColorModel, у которого альфа-канал в таблице поиска, этот метод вернёт null, так как нет пространственно дискретного альфа-канала. Этот метод создаст новый Raster (но разделит массив данных). Поскольку ColorModel является абстрактным классом, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, чтобы получить любое поведение, отличное от возвращения null, потому что реализация в этом абстрактном классе возвращает null.
- Параметры:
-
raster- указанныйRaster - Возвращает:
- объект
Raster, представляющий альфа-канал изображения, полученный из указанногоRaster.
toString
public String toString()
Возвращает строковое представление содержимого этого ColorModel объекта.
© 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.