|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class ColorModel extends Object implements Transparency
ColorModel абстрактный class инкапсулирует методы для того, чтобы преобразовать пиксельное значение в компоненты цвета (например, красный, зеленый, и синий) и альфа-компонент. Чтобы представить изображение на экран, принтер, или другое изображение, пиксельные значения должны быть преобразованы в альфа-компоненты и цвет. Как параметры или возвращаемые значения от методов этого class, пиксели представляются как 32-разрядный ints или как массивы типов примитивов. Число, порядок, и интерпретация компонентов цвета для a ColorModel определяется ColorSpace. A ColorModel используемый с пиксельными данными, который не включает информацию об альфе, обрабатывает все пиксели как непрозрачные, который является альфа-значением 1.0. Это ColorModel class поддерживает два представления пиксельных значений. Пиксельное значение может быть единственным 32-разрядным интервалом или массивом типов примитивов. Java (ТМ) Платформа 1.0 и 1.1 API представленные пиксели как единственный byte или единственный int значения. В целях ColorModel class, параметры пиксельного значения передали как ints. Java (ТМ) 2 API Платформы представленные дополнительные классы для того, чтобы представить изображения. С BufferedImage или RenderedImage объекты, основанные на Raster и SampleModel классы, пиксельные значения не могли бы быть удобно представимыми как единственный интервал. Следовательно, ColorModel теперь имеет методы, которые принимают пиксельные значения, представленные как массивы типов примитивов. Тип примитива используется деталью ColorModel объект вызывают его типом передачи.
ColorModel объекты, используемые с изображениями, для которых пиксельные значения не являются удобно представимыми как единственный интервал, бросают IllegalArgumentException когда методы, берущие единственный международный пиксельный параметр, вызывают. Подклассы ColorModel должен определить условия, при которых это происходит. Это не происходит с DirectColorModel или IndexColorModel объекты.
В настоящий момент типами передачи, поддерживаемыми Java, 2-D (ТМ) API, является DataBuffer. TYPE_BYTE, DataBuffer. TYPE_USHORT, DataBuffer. TYPE_INT, DataBuffer. TYPE_SHORT, DataBuffer. TYPE_FLOAT, и DataBuffer. TYPE_DOUBLE. Большинство операций рендеринга выполнит намного быстрее при использовании ColorModels и изображений, основанных на первых трех из этих типов. Кроме того, некоторые операции фильтрации изображения не поддерживаются для ColorModels и изображений, основанных на последних трех типах. Тип передачи для детали ColorModel объект определяется, когда объект создается, или явно или по умолчанию. Все подклассы ColorModel должен определить то, что возможные типы передачи и как число элементов в примитивных массивах, представляющих пиксели, определяется.
Для BufferedImages, тип передачи Raster и Raster объект SampleModel (доступный от getTransferType методы этих классов), должен соответствовать тот из ColorModel. Число элементов в массиве, представляющем пиксель для Raster и SampleModel (доступный от getNumDataElements методы этих классов), должен соответствовать тот из ColorModel.
Алгоритм, используемый, чтобы преобразовать из пиксельных значений, чтобы покрасить и альфа-компоненты, изменяется подклассом. Например, есть не обязательно взаимно-однозначное соответствие между выборками, полученными из SampleModel из a BufferedImage объект Raster и компоненты цвета/альфы. Даже когда есть такая корреспонденция, число битов в выборке является не обязательно тем же самым как числом битов в соответствующем компоненте цвета/альфы. Каждый подкласс должен определить, как преобразование от пиксельных значений до компонентов цвета/альфы делается.
Методы в ColorModel Использование class два различных представления цвета и альфа-компонентов - нормализованная форма и ненормализованная форма. В нормализованной форме каждый компонент является a float значение между некоторыми минимальными и максимальными значениями. Для альфа-компонента минимум 0.0, и максимум 1.0. Для компонентов цвета минимальные и максимальные значения для каждого компонента могут быть получены из ColorSpace объект. Эти значения часто будут 0.0 и 1.0 (например, нормализованные компонентные значения для значения по умолчанию sRGB диапазон цветового пространства от 0.0 до 1.0), но у некоторых цветовых пространств есть компонентные значения с различными верхними и более низкими пределами. Эти пределы могут быть получены, используя getMinValue и getMaxValue методы ColorSpace class. Нормализованные значения компонента цвета не предварительно умножаются. Все 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 должен определить условия, при которых это происходит.
| Модификатор и Тип | Поле и Описание |
|---|---|
protected int |
pixel_bits
Общее количество битов в пикселе.
|
protected int |
transferType
Тип данных массива имел обыкновение представлять пиксельные значения.
|
BITMASK, OPAQUE, TRANSLUCENT| Модификатор | Конструктор и Описание |
|---|---|
|
ColorModel(int bits)
Конструкции a
ColorModel это преобразовывает пиксели конкретного количества битов к компонентам цвета/альфы. |
protected |
ColorModel(int pixel_bits, int[] bits, ColorSpace cspace, boolean hasAlpha, boolean isAlphaPremultiplied, int transparency, int transferType)
Конструкции a
ColorModel это преобразовывает пиксельные значения в компоненты цвета/альфы. |
| Модификатор и Тип | Метод и Описание |
|---|---|
ColorModel |
coerceData(WritableRaster raster, boolean isAlphaPremultiplied)
Вынуждает растровые данные соответствовать состояние, определенное в
isAlphaPremultiplied переменная, принимая данные в настоящий момент правильно описывается этим ColorModel. |
SampleModel |
createCompatibleSampleModel(int w, int h)
Создает a
SampleModel с указанным width и height, у которого есть формат данных, совместимый с этим ColorModel. |
WritableRaster |
createCompatibleWritableRaster(int w, int h)
Создает a
WritableRaster с указанным width и height, у которого есть формат данных (SampleModel) совместимый с этим ColorModel. |
boolean |
equals(Object obj)
Тесты, если указанное
Object экземпляр ColorModel и если это равняется этому ColorModel. |
void |
finalize()
Избавляется от системных ресурсов, связанных с этим
ColorModel однажды это ColorModel больше не ссылается. |
abstract int |
getAlpha(int pixel)
Возвращает альфа-компонент для указанного пикселя, масштабируемого от 0 до 255.
|
int |
getAlpha(Object inData)
Возвращает альфа-компонент для указанного пикселя, масштабируемого от 0 до 255.
|
WritableRaster |
getAlphaRaster(WritableRaster raster)
Возвраты a
Raster представление альфа-канала изображения, извлеченного из ввода Raster, при условии, что пиксельные значения этого ColorModel представьте цвет и информацию об альфе как отдельные пространственные полосы (например. |
abstract int |
getBlue(int pixel)
Возвращает синий компонент цвета для указанного пикселя, масштабируемого от 0 до 255 в RGB значения по умолчанию ColorSpace, sRGB.
|
int |
getBlue(Object inData)
Возвращает синий компонент цвета для указанного пикселя, масштабируемого от 0 до 255 в RGB значения по умолчанию
ColorSpace, sRGB. |
ColorSpace |
getColorSpace()
Возвраты
ColorSpace связанный с этим ColorModel. |
int[] |
getComponents(int pixel, int[] components, int offset)
Возвращает массив ненормализованных компонентов цвета/альфы, данных пиксель в этом
ColorModel. |
int[] |
getComponents(Object pixel, int[] components, int offset)
Возвращает массив ненормализованных компонентов цвета/альфы, данных пиксель в этом
ColorModel. |
int[] |
getComponentSize()
Возвращает массив числа битов на компонент цвета/альфы.
|
int |
getComponentSize(int componentIdx)
Возвращает число битов для указанного компонента цвета/альфы.
|
int |
getDataElement(float[] normComponents, int normOffset)
Возвращает пиксельное значение, представленное как
int в этом ColorModel, учитывая массив нормализованных компонентов цвета/альфы. |
int |
getDataElement(int[] components, int offset)
Возвращает пиксельное значение, представленное как
int в этом ColorModel, учитывая массив ненормализованных компонентов цвета/альфы. |
Объект |
getDataElements(float[] normComponents, int normOffset, Object obj)
Возвращает представление в виде массива элемента данных пикселя в этом
ColorModel, учитывая массив нормализованных компонентов цвета/альфы. |
Объект |
getDataElements(int[] components, int offset, Object obj)
Возвращает представление в виде массива элемента данных пикселя в этом
ColorModel, учитывая массив ненормализованных компонентов цвета/альфы. |
Объект |
getDataElements(int rgb, Object pixel)
Возвращает представление в виде массива элемента данных пикселя в этом
ColorModel, учитывая целочисленное пиксельное представление в цветовой модели RGB значения по умолчанию. |
abstract int |
getGreen(int pixel)
Возвращает зеленый компонент цвета для указанного пикселя, масштабируемого от 0 до 255 в RGB значения по умолчанию ColorSpace, sRGB.
|
int |
getGreen(Object inData)
Возвращает зеленый компонент цвета для указанного пикселя, масштабируемого от 0 до 255 в RGB значения по умолчанию
ColorSpace, sRGB. |
float[] |
getNormalizedComponents(int[] components, int offset, float[] normComponents, int normOffset)
Возвращает массив всех компонентов цвета/альфы в нормализованной форме, учитывая ненормализованный компонентный массив.
|
float[] |
getNormalizedComponents(Object pixel, float[] normComponents, int normOffset)
Возвращает массив всех компонентов цвета/альфы в нормализованной форме, учитывая пиксель в этом
ColorModel. |
int |
getNumColorComponents()
Возвращает число компонентов цвета в этом
ColorModel. |
int |
getNumComponents()
Возвращает число компонентов, включая альфу, в этом
ColorModel. |
int |
getPixelSize()
Возвращает число бит на пиксель, описанных этим
ColorModel. |
abstract int |
getRed(int pixel)
Возвращает красный компонент цвета для указанного пикселя, масштабируемого от 0 до 255 в RGB значения по умолчанию ColorSpace, sRGB.
|
int |
getRed(Object inData)
Возвращает красный компонент цвета для указанного пикселя, масштабируемого от 0 до 255 в RGB значения по умолчанию
ColorSpace, sRGB. |
int |
getRGB(int pixel)
Возвращает компоненты цвета/альфы пикселя в формате цветовой модели RGB значения по умолчанию.
|
int |
getRGB(Object inData)
Возвращает компоненты цвета/альфы для указанного пикселя в формате цветовой модели RGB значения по умолчанию.
|
static ColorModel |
getRGBdefault()
Возвраты a
DirectColorModel это описывает формат значения по умолчанию для целочисленных значений RGB, используемых во многих из методов в интерфейсах изображения AWT для удобства программиста. |
int |
getTransferType()
Возвращает тип передачи этого
ColorModel. |
int |
getTransparency()
Возвращает прозрачность.
|
int[] |
getUnnormalizedComponents(float[] normComponents, int normOffset, int[] components, int offset)
Возвращает массив всех компонентов цвета/альфы в ненормализованной форме, учитывая нормализованный компонентный массив.
|
boolean |
hasAlpha()
Возвраты, поддерживается ли альфа в этом
ColorModel. |
int |
hashCode()
Возвращает хэш-код для этого ColorModel.
|
boolean |
isAlphaPremultiplied()
Возвраты, была ли альфа предварительно умножена в пиксельных значениях, которые будут преобразованы этим
ColorModel. |
boolean |
isCompatibleRaster(Raster raster)
Возвраты
true если raster является совместимым с этим ColorModel и false если это не. |
boolean |
isCompatibleSampleModel(SampleModel sm)
Проверки, если
SampleModel является совместимым с этим ColorModel. |
Строка |
toString()
Возвраты
String представление содержания этого ColorModelобъект. |
protected int pixel_bits
protected int transferType
public ColorModel(int bits)
ColorModel это преобразовывает пиксели конкретного количества битов к компонентам цвета/альфы. Цветовое пространство является RGB значения по умолчанию ColorSpace, который является sRGB. Пиксельные значения, как предполагается, включают информацию об альфе. Если цвет и информация об альфе представляются в пиксельном значении как отдельные пространственные полосы, цветные полосы, как предполагается, не предварительно умножаются с альфа-значением. Тип прозрачности является java.awt. Прозрачность. ПОЛУПРОЗРАЧНЫЙ. Тип передачи будет самым маленьким из DataBuffer. TYPE_BYTE, DataBuffer. TYPE_USHORT, или DataBuffer. TYPE_INT, который может содержать единственный пиксель (или DataBuffer. TYPE_UNDEFINED, если биты больше чем 32). Так как у этого конструктора нет никакой информации о числе битов на цвет и альфа-компонент, любой подкласс, вызывая этого конструктора должен переопределить любой метод, который запрашивает эту информацию.bits - число битов пикселяIllegalArgumentException - если число битов в bits меньше чем 1protected ColorModel(int pixel_bits,
int[] bits,
ColorSpace cspace,
boolean hasAlpha,
boolean isAlphaPremultiplied,
int transparency,
int transferType)
ColorModel это преобразовывает пиксельные значения в компоненты цвета/альфы. Компоненты цвета будут в указанном ColorSpace. pixel_bits число битов в пиксельных значениях. Массив битов определяет число существенных битов на альфа-компонент и цвет. Его длина должна быть числом компонентов в ColorSpace если нет никакой информации об альфе в пиксельных значениях, или еще одного чем это число, если есть информация об альфе. hasAlpha указывает, присутствует ли информация об альфе. boolean
isAlphaPremultiplied определяет, как интерпретировать пиксельные значения, в которых цвет и информация об альфе представляются как отдельные пространственные полосы. Если boolean true, цветные выборки, как предполагается, были умножены на альфа-выборку. transparency определяет, какие альфа-значения могут быть представлены этой цветовой моделью. Тип передачи является типом примитивного массива, используемого, чтобы представить пиксельные значения. Отметьте, что массив битов содержит число существенных битов на компонент цвета/альфы после преобразования из пиксельных значений. Например, для IndexColorModel с pixel_bits равный 16, у массива битов могло бы быть четыре элемента с каждым набором элемента к 8.pixel_bits - число битов в пиксельных значенияхbits - массив, который определяет число существенных битов на альфа-компонент и цветcspace - указанное ColorSpacehasAlpha - true если информация об альфе присутствует; false иначеisAlphaPremultiplied - true если цветные выборки, как предполагается, предварительно умножаются на альфа-выборки; false иначеtransparency - какие альфа-значения могут быть представлены этой цветовой модельюtransferType - тип массива имел обыкновение представлять пиксельные значенияIllegalArgumentException - если длина разрядного массива является меньше чем число цвета или альфа-компонентов в этом ColorModel, или если прозрачность не является допустимым значением.IllegalArgumentException - если сумма числа битов в bits меньше чем 1 или если любой из элементов в bits меньше чем 0.Transparencypublic static ColorModel getRGBdefault()
DirectColorModel это описывает формат значения по умолчанию для целочисленных значений RGB, используемых во многих из методов в интерфейсах изображения AWT для удобства программиста. Цветовое пространство является значением по умолчанию ColorSpace, sRGB. Формат для значений RGB является целым числом с 8 битами каждая альфа, красные, зеленые, и синие компоненты цвета, упорядоченные соответственно от старшего значащего байта до младшего значащего байта, как в: 0xAARRGGBB. Компоненты цвета не предварительно умножаются на альфа-компонент. Этот формат не обязательно представляет собственное или самое эффективное ColorModel для определенного устройства или для всех изображений. Это просто используется в качестве общего формата цветовой модели.DirectColorModelобъект, описывающий значения RGB значения по умолчанию.public final boolean hasAlpha()
ColorModel.true если альфа поддерживается в этом ColorModel; false иначе.public final boolean isAlphaPremultiplied()
ColorModel. Если булево true, это ColorModel должен использоваться, чтобы интерпретировать пиксельные значения, в которых цвет и информация об альфе представляются как отдельные пространственные полосы, и красят выборки, как, предполагается, были умножены на альфа-выборку.true если альфа-значения предварительно умножаются в пиксельных значениях, которые будут преобразованы этим ColorModel; false иначе.public final int getTransferType()
ColorModel. Тип передачи является типом примитивного массива, используемого, чтобы представить пиксельные значения как массивы.public int getPixelSize()
ColorModel.public int getComponentSize(int componentIdx)
ColorSpace. Как правило, этот порядок отражает имя типа цветового пространства. Например, для TYPE_RGB, индексируйте 0, соответствует красный, индексируйте 1 к зеленому, и индексируйте 2 к синему. Если это ColorModel поддерживает альфу, альфа-компонент соответствует индексированию после последнего компонента цвета.componentIdx - индексирование компонента цвета/альфыArrayIndexOutOfBoundsException - если componentIdx больше чем число компонентов или меньше чем нульNullPointerException - если число массива битов nullpublic int[] getComponentSize()
ColorSpace, сопровождаемый альфа-компонентом, если существующий.public int getTransparency()
getTransparency в интерфейсе TransparencyColorModel.Transparency.OPAQUE, Transparency.BITMASK, Transparency.TRANSLUCENTpublic int getNumComponents()
ColorModel. Это равно числу компонентов цвета, дополнительно плюс один, если есть альфа-компонент.ColorModelpublic int getNumColorComponents()
ColorModel. Это - число компонентов, возвращенных ColorSpace.getNumComponents().ColorModel.ColorSpace.getNumComponents()public abstract int getRed(int pixel)
IllegalArgumentException бросается если пиксельные значения для этого ColorModel не являются удобно представимыми как единственный интервал. Возвращенное значение не является предварительно умноженным значением. Например, если альфа предварительно умножается, этот метод отделяет ее прежде, чем возвратить значение. Если альфа-значение 0, красное значение 0.pixel - указанный пиксельpublic abstract int getGreen(int pixel)
IllegalArgumentException бросается если пиксельные значения для этого ColorModel не являются удобно представимыми как единственный интервал. Возвращенное значение является не предварительно умноженным значением. Например, если альфа предварительно умножается, этот метод отделяет ее прежде, чем возвратить значение. Если альфа-значение 0, зеленое значение 0.pixel - указанный пиксельpublic abstract int getBlue(int pixel)
IllegalArgumentException бросается если пиксельные значения для этого ColorModel не являются удобно представимыми как единственный интервал. Возвращенное значение является не предварительно умноженным значением, например, если альфа предварительно умножается, этот метод отделяет это прежде, чем возвратить значение. Если альфа-значение 0, синее значение 0.pixel - указанный пиксельpublic abstract int getAlpha(int pixel)
IllegalArgumentException бросается если пиксельные значения для этого ColorModel не являются удобно представимыми как единственный интервал.pixel - указанный пиксельpublic int getRGB(int pixel)
IllegalArgumentException брошенный, если пиксельные значения для этого ColorModel не являются удобно представимыми как единственный интервал. Возвращенное значение находится в не предварительно умноженном формате. Например, если альфа предварительно умножается, этот метод делит ее из компонентов цвета. Если альфа-значение 0, значения цвета 0.pixel - указанный пиксельgetRGBdefault()public int getRed(Object inData)
ColorSpace, sRGB. Цветное преобразование делается в случае необходимости. Пиксельное значение определяется массивом элементов данных типа transferType, передал в как ссылка на объект. Возвращенное значение является не предварительно умноженным значением. Например, если альфа предварительно умножается, этот метод отделяет ее прежде, чем возвратить значение. Если альфа-значение 0, красное значение 0. Если inData не примитивный массив типа transferType, a ClassCastException бросается. ArrayIndexOutOfBoundsException бросается если inData не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel. Если это transferType не поддерживается, a UnsupportedOperationException будет брошен. С тех пор ColorModel абстрактный class, любой экземпляр должен быть экземпляром подкласса. Подклассы наследовали реализацию этого метода и если они не переопределяют это, этот метод выдает исключение, если подкласс использует a transferType кроме DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, или DataBuffer.TYPE_INT.inData - массив пиксельных значенийClassCastException - если inData не примитивный массив типа transferTypeArrayIndexOutOfBoundsException - если inData не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModelUnsupportedOperationException - если это tranferType не поддерживается этим ColorModelpublic int getGreen(Object inData)
ColorSpace, sRGB. Цветное преобразование делается в случае необходимости. Пиксельное значение определяется массивом элементов данных типа transferType, передал в как ссылка на объект. Возвращенное значение будет не предварительно умноженным значением. Например, если альфа предварительно умножается, этот метод отделяет ее прежде, чем возвратить значение. Если альфа-значение 0, зеленое значение 0. Если inData не примитивный массив типа transferType, a ClassCastException бросается. ArrayIndexOutOfBoundsException бросается если inData не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel. Если это transferType не поддерживается, a UnsupportedOperationException будет брошен. С тех пор ColorModel абстрактный class, любой экземпляр должен быть экземпляром подкласса. Подклассы наследовали реализацию этого метода и если они не переопределяют это, этот метод выдает исключение, если подкласс использует a transferType кроме DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, или DataBuffer.TYPE_INT.inData - массив пиксельных значенийClassCastException - если inData не примитивный массив типа transferTypeArrayIndexOutOfBoundsException - если inData не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModelUnsupportedOperationException - если это tranferType не поддерживается этим ColorModelpublic int getBlue(Object inData)
ColorSpace, sRGB. Цветное преобразование делается в случае необходимости. Пиксельное значение определяется массивом элементов данных типа transferType, передал в как ссылка на объект. Возвращенное значение является не предварительно умноженным значением. Например, если альфа предварительно умножается, этот метод отделяет ее прежде, чем возвратить значение. Если альфа-значение будет 0, то синее значение будет 0. Если inData не примитивный массив типа transferType, a ClassCastException бросается. ArrayIndexOutOfBoundsException бросается если inData не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel. Если это transferType не поддерживается, a UnsupportedOperationException будет брошен. С тех пор ColorModel абстрактный class, любой экземпляр должен быть экземпляром подкласса. Подклассы наследовали реализацию этого метода и если они не переопределяют это, этот метод выдает исключение, если подкласс использует a transferType кроме DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, или DataBuffer.TYPE_INT.inData - массив пиксельных значенийClassCastException - если inData не примитивный массив типа transferTypeArrayIndexOutOfBoundsException - если inData не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModelUnsupportedOperationException - если это tranferType не поддерживается этим ColorModelpublic int getAlpha(Object inData)
ClassCastException бросается. ArrayIndexOutOfBoundsException бросается если inData не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel. Если это transferType не поддерживается, a UnsupportedOperationException будет брошен. С тех пор ColorModel абстрактный class, любой экземпляр должен быть экземпляром подкласса. Подклассы наследовали реализацию этого метода и если они не переопределяют это, этот метод выдает исключение, если подкласс использует a transferType кроме DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT, или DataBuffer.TYPE_INT.inData - указанный пиксельClassCastException - если inData не примитивный массив типа transferTypeArrayIndexOutOfBoundsException - если inData не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModelUnsupportedOperationException - если это tranferType не поддерживается этим ColorModelpublic int getRGB(Object inData)
ClassCastException бросается. ArrayIndexOutOfBoundsException бросается если inData не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel. Возвращенное значение будет в не предварительно умноженном формате, то есть если альфа будет предварительно умножена, то этот метод разделит это из компонентов цвета (если альфа-значение будет 0, то значения цвета будут 0).inData - указанный пиксельgetRGBdefault()public Object getDataElements(int rgb, Object pixel)
ColorModel, учитывая целочисленное пиксельное представление в цветовой модели RGB значения по умолчанию. Этот массив можно тогда передать к WritableRaster.setDataElements(int, int, java.lang.Object) метод a WritableRaster объект. Если пиксельная переменная null, будет выделен новый массив. Если pixel не null, это должен быть примитивный массив типа transferType; иначе, a ClassCastException бросается. ArrayIndexOutOfBoundsException бросается если pixel не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel. Пиксельная матрица возвращается. Если это transferType не поддерживается, a UnsupportedOperationException будет брошен. С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном class бросает UnsupportedOperationException.rgb - целочисленное пиксельное представление в цветовой модели RGB значения по умолчаниюpixel - указанный пиксельColorModel.ClassCastException - если pixel не примитивный массив типа transferTypeArrayIndexOutOfBoundsException - если pixel не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModelUnsupportedOperationException - если этот метод не поддерживается этим ColorModelWritableRaster.setDataElements(int, int, java.lang.Object), SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)public int[] getComponents(int pixel,
int[] components,
int offset)
ColorModel. Пиксельное значение определяется как int. IllegalArgumentException будет брошен если пиксельные значения для этого ColorModel не являются удобно представимыми как сингл int или если компонент цвета оценивает за это ColorModel не являются удобно представимыми в ненормализованной форме. Например, этот метод может использоваться, чтобы получить компоненты для определенного пиксельного значения в a DirectColorModel. Если компонентный массив null, будет выделен новый массив. Компонентный массив будет возвращен. Компоненты цвета/альфы сохранены в компонентном массиве, запускающемся в offset (даже если массив выделяется этим методом). ArrayIndexOutOfBoundsException бросается, если компонентный массив не null и не является достаточно большим, чтобы содержать весь цвет и альфа-компоненты (запускающийся при смещении). С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном class бросает UnsupportedOperationException.pixel - указанный пиксельcomponents - массив, чтобы получить цвет и альфа-компоненты указанного пикселяoffset - смещение в components массив, в котором можно начать хранить альфа-компоненты и цветUnsupportedOperationException - если этот метод не поддерживается этим ColorModelpublic int[] getComponents(Object pixel, int[] components, int offset)
ColorModel. Пиксельное значение определяется массивом элементов данных типа transferType, передал в как ссылка на объект. Если pixel не примитивный массив типа transferType, a ClassCastException бросается. IllegalArgumentException будет брошен, если компонент цвета оценит за это ColorModel не являются удобно представимыми в ненормализованной форме. ArrayIndexOutOfBoundsException бросается если pixel не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel. Этот метод может использоваться, чтобы получить компоненты для определенного пиксельного значения в любом ColorModel. Если компонентный массив null, будет выделен новый массив. Компонентный массив будет возвращен. Компоненты цвета/альфы сохранены в components массив, запускающийся в offset (даже если массив выделяется этим методом). ArrayIndexOutOfBoundsException бросается, если компонентный массив не null и не является достаточно большим, чтобы содержать весь цвет и альфа-компоненты (запускающийся в offset). С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном class бросает UnsupportedOperationException.pixel - указанный пиксельcomponents - массив, который получает цвет и альфа-компоненты указанного пикселяoffset - индексирование в components массив, в котором можно начать хранить цвет и альфа-компоненты указанного пикселяUnsupportedOperationException - если этот метод не поддерживается этим ColorModelpublic int[] getUnnormalizedComponents(float[] normComponents,
int normOffset,
int[] components,
int offset)
ColorSpace объект для этого ColorModel. IllegalArgumentException будет брошен, если компонент цвета оценит за это ColorModel не являются удобно представимыми в ненормализованной форме. Если components массив null, будет выделен новый массив. components массив будет возвращен. Компоненты цвета/альфы сохранены в components массив, запускающийся в offset (даже если массив выделяется этим методом). ArrayIndexOutOfBoundsException бросается если components массив не null и не является достаточно большим, чтобы содержать весь цвет и альфа-компоненты (запускающийся в offset). IllegalArgumentException бросается если normComponents массив не является достаточно многочисленным, чтобы содержать весь цвет и альфа-компоненты, запускающиеся в normOffset.normComponents - массив, содержащий нормализованные компонентыnormOffset - смещение в normComponents массив, в котором можно начать получать нормализованные компонентыcomponents - массив, который получает компоненты из normComponentsoffset - индексирование в components в котором можно начать хранить нормализованные компоненты от normComponentsIllegalArgumentException - Если компонент оценивает за это ColorModel не являются удобно представимыми в ненормализованной форме.IllegalArgumentException - если длина normComponents минус normOffset меньше чем numComponentsUnsupportedOperationException - если конструктор этого ColorModel вызванный super(bits) конструктор, но не переопределял этот метод. См. конструктора, ColorModel(int).public float[] getNormalizedComponents(int[] components,
int offset,
float[] normComponents,
int normOffset)
ColorSpace объект для этого ColorModel. IllegalArgumentException будет брошен, если компонент цвета оценит за это ColorModel не являются удобно представимыми в ненормализованной форме. Если normComponents массив null, будет выделен новый массив. normComponents массив будет возвращен. Компоненты цвета/альфы сохранены в normComponents массив, запускающийся в normOffset (даже если массив выделяется этим методом). ArrayIndexOutOfBoundsException бросается если normComponents массив не null и не является достаточно большим, чтобы содержать весь цвет и альфа-компоненты (запускающийся в normOffset). IllegalArgumentException бросается если components массив не является достаточно многочисленным, чтобы содержать весь цвет и альфа-компоненты, запускающиеся в offset. С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Реализация по умолчанию этого метода в этом абстрактном class предполагает, что компонентные значения для этого class являются удобно представимыми в ненормализованной форме. Поэтому, подклассы, у которых могут быть экземпляры, которые не поддерживают ненормализованную форму, должны переопределить этот метод.
components - массив, содержащий ненормализованные компонентыoffset - смещение в components массив, в котором можно начать получать ненормализованные компонентыnormComponents - массив, который получает нормализованные компонентыnormOffset - индексирование в normComponents в котором можно начать хранить нормализованные компонентыIllegalArgumentException - Если компонент оценивает за это ColorModel не являются удобно представимыми в ненормализованной форме.UnsupportedOperationException - если конструктор этого ColorModel вызванный super(bits) конструктор, но не переопределял этот метод. См. конструктора, ColorModel(int).UnsupportedOperationException - если этот метод неспособен определить число битов на компонентpublic int getDataElement(int[] components,
int offset)
int в этом ColorModel, учитывая массив ненормализованных компонентов цвета/альфы. Этот метод бросит IllegalArgumentException если компонент оценивает за это ColorModel не являются удобно представимыми как сингл int или если компонент цвета оценивает за это ColorModel не являются удобно представимыми в ненормализованной форме. ArrayIndexOutOfBoundsException бросается если components массив не является достаточно многочисленным, чтобы содержать весь цвет и альфа-компоненты (запускающийся в offset). С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном class бросает UnsupportedOperationException.components - массив ненормализованного цвета и альфа-компонентовoffset - индексирование в components в котором можно начать получать альфа-компоненты и цветint пиксельное значение в этом ColorModel соответствие указанным компонентам.IllegalArgumentException - если пиксельные значения для этого ColorModel не являются удобно представимыми как сингл intIllegalArgumentException - если компонент оценивает за это ColorModel не являются удобно представимыми в ненормализованной формеArrayIndexOutOfBoundsException - если components массив не является достаточно многочисленным, чтобы содержать весь цвет и альфа-компоненты, запускающиеся в offsetUnsupportedOperationException - если этот метод не поддерживается этим ColorModelpublic Object getDataElements(int[] components, int offset, Object obj)
ColorModel, учитывая массив ненормализованных компонентов цвета/альфы. Этот массив можно тогда передать к setDataElements метод a WritableRaster объект. Этот метод бросит IllegalArgumentException если компонент цвета оценивает за это ColorModel не являются удобно представимыми в ненормализованной форме. ArrayIndexOutOfBoundsException бросается если components массив не является достаточно многочисленным, чтобы содержать весь цвет и альфа-компоненты (запускающийся в offset). Если obj переменная null, будет выделен новый массив. Если obj не null, это должен быть примитивный массив типа transferType; иначе, a ClassCastException бросается. ArrayIndexOutOfBoundsException бросается если obj не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel. С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном class бросает UnsupportedOperationException.components - массив ненормализованного цвета и альфа-компонентовoffset - индексирование в components в котором можно начать получать альфа-компоненты и цветobj - Object представление массива цвета и альфа-компонентовObject представление массива цвета и альфа-компонентов.ClassCastException - если obj не примитивный массив типа transferTypeArrayIndexOutOfBoundsException - если obj не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel или components массив не является достаточно многочисленным, чтобы содержать весь цвет и альфа-компоненты, запускающиеся в offsetIllegalArgumentException - если компонент оценивает за это ColorModel не являются удобно представимыми в ненормализованной формеUnsupportedOperationException - если этот метод не поддерживается этим ColorModelWritableRaster.setDataElements(int, int, java.lang.Object), SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)public int getDataElement(float[] normComponents,
int normOffset)
int в этом ColorModel, учитывая массив нормализованных компонентов цвета/альфы. Этот метод бросит IllegalArgumentException если пиксельные значения для этого ColorModel не являются удобно представимыми как сингл int. ArrayIndexOutOfBoundsException бросается если normComponents массив не является достаточно многочисленным, чтобы содержать весь цвет и альфа-компоненты (запускающийся в normOffset). С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Реализация по умолчанию этого метода в этом абстрактном class сначала преобразовывает от нормализованной формы до ненормализованной формы и затем вызывает getDataElement(int[], int). Подклассы, у которых могут быть экземпляры, которые не поддерживают ненормализованную форму, должны переопределить этот метод.normComponents - массив нормализованного цвета и альфа-компонентовnormOffset - индексирование в normComponents в котором можно начать получать альфа-компоненты и цветint пиксельное значение в этом ColorModel соответствие указанным компонентам.IllegalArgumentException - если пиксельные значения для этого ColorModel не являются удобно представимыми как сингл intArrayIndexOutOfBoundsException - если normComponents массив не является достаточно многочисленным, чтобы содержать весь цвет и альфа-компоненты, запускающиеся в normOffsetpublic Object getDataElements(float[] normComponents, int normOffset, Object obj)
ColorModel, учитывая массив нормализованных компонентов цвета/альфы. Этот массив можно тогда передать к setDataElements метод a WritableRaster объект. ArrayIndexOutOfBoundsException бросается если normComponents массив не является достаточно многочисленным, чтобы содержать весь цвет и альфа-компоненты (запускающийся в normOffset). Если obj переменная null, будет выделен новый массив. Если obj не null, это должен быть примитивный массив типа transferType; иначе, a ClassCastException бросается. ArrayIndexOutOfBoundsException бросается если obj не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel. С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Реализация по умолчанию этого метода в этом абстрактном class сначала преобразовывает от нормализованной формы до ненормализованной формы и затем вызывает getDataElement(int[], int, Object). Подклассы, у которых могут быть экземпляры, которые не поддерживают ненормализованную форму, должны переопределить этот метод.normComponents - массив нормализованного цвета и альфа-компонентовnormOffset - индексирование в normComponents в котором можно начать получать альфа-компоненты и цветobj - примитивный массив данных, чтобы содержать возвращенный пиксельObject который является примитивным представлением массива данных пикселяClassCastException - если obj не примитивный массив типа transferTypeArrayIndexOutOfBoundsException - если obj не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel или normComponents массив не является достаточно многочисленным, чтобы содержать весь цвет и альфа-компоненты, запускающиеся в normOffsetWritableRaster.setDataElements(int, int, java.lang.Object), SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)public float[] getNormalizedComponents(Object pixel, float[] normComponents, int normOffset)
ColorModel. Пиксельное значение определяется массивом элементов данных типа transferType, передал в как ссылка на объект. Если пиксель не является примитивным массивом типа transferType, a ClassCastException бросается. ArrayIndexOutOfBoundsException бросается если pixel не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel. Нормализованные компоненты являются значениями плавающими между на компонентный минимум и максимум, определенный ColorSpace объект для этого ColorModel. Если normComponents массив null, будет выделен новый массив. normComponents массив будет возвращен. Компоненты цвета/альфы сохранены в normComponents массив, запускающийся в normOffset (даже если массив выделяется этим методом). ArrayIndexOutOfBoundsException бросается если normComponents массив не null и не является достаточно большим, чтобы содержать весь цвет и альфа-компоненты (запускающийся в normOffset). С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Реализация по умолчанию этого метода в этом абстрактном class сначала получает цвет и альфа-компоненты в ненормализованном использовании формы getComponents(Object, int[], int) и затем вызовы getNormalizedComponents(int[], int, float[], int). Подклассы, у которых могут быть экземпляры, которые не поддерживают ненормализованную форму, должны переопределить этот метод.pixel - указанный пиксельnormComponents - массив, чтобы получить нормализованные компонентыnormOffset - смещение в normComponents массив, в котором можно начать хранить нормализованные компонентыClassCastException - если pixel не примитивный массив типа transferTypeArrayIndexOutOfBoundsException - если normComponents не является достаточно большим, чтобы содержать весь цвет и альфа-компоненты, запускающиеся в normOffsetArrayIndexOutOfBoundsException - если pixel не является достаточно большим, чтобы содержать пиксельное значение для этого ColorModel.UnsupportedOperationException - если конструктор этого ColorModel вызванный super(bits) конструктор, но не переопределял этот метод. См. конструктора, ColorModel(int).UnsupportedOperationException - если этот метод неспособен определить число битов на компонентpublic boolean equals(Object obj)
Object экземпляр ColorModel и если это равняется этому ColorModel.equals в class Objectobj - Object протестировать на равенствоtrue если указанное Object экземпляр ColorModel и равняется этому ColorModel; false иначе.Object.hashCode(), HashMappublic int hashCode()
hashCode в class ObjectObject.equals(java.lang.Object), System.identityHashCode(java.lang.Object)public final ColorSpace getColorSpace()
ColorSpace связанный с этим ColorModel.ColorSpace из этого ColorModel.public ColorModel coerceData(WritableRaster raster, boolean isAlphaPremultiplied)
isAlphaPremultiplied переменная, принимая данные в настоящий момент правильно описывается этим ColorModel. Это может умножить или разделить цветные растровые данные на альфу, или ничего не сделать, если данные находятся в корректном состоянии. Если данные должны быть принуждены, этот метод также возвратит экземпляр этого ColorModel с isAlphaPremultiplied набор флага соответственно. Этот метод бросит a UnsupportedOperationException если это не поддерживается этим ColorModel. С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном class бросает UnsupportedOperationException.raster - WritableRaster данныеisAlphaPremultiplied - true если альфа предварительно умножается; false иначеColorModel объект, который представляет принужденные данные.public boolean isCompatibleRaster(Raster raster)
true если raster является совместимым с этим ColorModel и false если это не. С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном class бросает UnsupportedOperationException.raster - Raster возразите, чтобы протестировать на совместимостьtrue если raster является совместимым с этим ColorModel.UnsupportedOperationException - если этот метод не был реализован для этого ColorModelpublic WritableRaster createCompatibleWritableRaster(int w, int h)
WritableRaster с указанным width и height, у которого есть формат данных (SampleModel) совместимый с этим ColorModel. С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном class бросает UnsupportedOperationException.w - width, чтобы примениться к новому WritableRasterh - height, чтобы примениться к новому WritableRasterWritableRaster объект с указанным width и height.UnsupportedOperationException - если этот метод не поддерживается этим ColorModelWritableRaster, SampleModelpublic SampleModel createCompatibleSampleModel(int w, int h)
SampleModel с указанным width и height, у которого есть формат данных, совместимый с этим ColorModel. С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном class бросает UnsupportedOperationException.w - width, чтобы примениться к новому SampleModelh - height, чтобы примениться к новому SampleModelSampleModel объект с указанным width и height.UnsupportedOperationException - если этот метод не поддерживается этим ColorModelSampleModelpublic boolean isCompatibleSampleModel(SampleModel sm)
SampleModel является совместимым с этим ColorModel. С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, так как реализация в этом абстрактном class бросает UnsupportedOperationException.sm - указанное SampleModeltrue если указанное SampleModel является совместимым с этим ColorModel; false иначе.UnsupportedOperationException - если этот метод не поддерживается этим ColorModelSampleModelpublic void finalize()
ColorModel однажды это ColorModel больше не ссылается.finalize в class ObjectWeakReference, PhantomReferencepublic WritableRaster getAlphaRaster(WritableRaster raster)
Raster представление альфа-канала изображения, извлеченного из ввода Raster, при условии, что пиксельные значения этого ColorModel представьте цвет и информацию об альфе как отдельные пространственные полосы (например. ComponentColorModel и DirectColorModel). Этот метод принимает это Raster объекты, связанные с таким ColorModel сохраните альфа-полосу, если есть как последняя полоса данных изображения. Возвраты null если нет никакого отдельного пространственного альфа-канала, связанного с этим ColorModel. Если это IndexColorModel у которого есть альфа в таблице поиска, этот метод возвратится null с тех пор нет никакого пространственно дискретного альфа-канала. Этот метод создаст новое Raster (но совместно использует массив данных). С тех пор ColorModel абстрактный class, любой экземпляр является экземпляром подкласса. Подклассы должны переопределить этот метод, чтобы получить любое поведение кроме возврата null потому что реализация в этом абстрактном class возвраты null.raster - указанное RasterRaster представление альфа-канала изображения, полученного из указанного Raster.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92