Класс IndexColorModel
- Все реализованные интерфейсы:
Transparency
public class IndexColorModel extends ColorModel
IndexColorModel — это класс, работающий с пиксельными значениями, состоящими из единственного образца, являющегося индексом в фиксированной цветовой карте в стандартном цветовом пространстве sRGB. Цветовая карта определяет значения красного, зеленого, синего и необязательного альфа-компонента, соответствующие каждому индексу. Все компоненты представлены в цветовой карте как 8-битные беззнаковые целочисленные значения. Некоторые конструкторы позволяют вызывающему коду указывать «дыры» в цветовой карте, указывая, какие записи цветовой карты являются допустимыми, а какие представляют недопустимые цвета, с помощью битов, установленных в объекте BigInteger. Эта модель цвета похожа на визуальный элемент X11 PseudoColor. Некоторые конструкторы предоставляют возможность указать альфа-компонент для каждого пикселя в цветовой карте, в то время как другие либо не предоставляют такой возможности, либо, в некоторых случаях, флаг для указания, содержит ли данные цветовой карты значения альфа. Если альфа не указана в конструкторе, предполагается непрозрачный альфа-компонент (альфа = 1,0) для каждой записи. Можно указать необязательное значение прозрачного пикселя, которое указывает пиксель, который должен быть полностью прозрачным, независимо от любого альфа-компонента, указанного или предположенного для этого пиксельного значения. Обратите внимание, что цветовые компоненты в цветовой карте объектов IndexColorModel никогда не умножаются предварительно на альфа-компоненты.
Если объект IndexColorModel имеет значение прозрачности Transparency.OPAQUE, то методы hasAlpha и getNumComponents (оба унаследованы от ColorModel ) возвращают false и 3 соответственно. Для любого другого значения прозрачности hasAlpha возвращает true, а getNumComponents возвращает 4.
Для тех методов, которые используют примитивный массив пикселей типа transferType, длина массива всегда равна единице. Поддерживаемые типы преобразования — DataBuffer.TYPE_BYTE и DataBuffer.TYPE_USHORT . Одно целое число (int) пиксельное представление допустимо для всех объектов этого класса, поскольку всегда возможно представить пиксельные значения, используемые с этим классом, в одном целом числе. Таким образом, методы, которые используют это представление, не генерируют IllegalArgumentException из-за недопустимого пиксельного значения.
Многие методы в этом классе являются final. Причина в том, что базовый код графического интерфейса делает предположения о структуре и работе этого класса, и эти предположения отражаются в реализациях методов, помеченных здесь как final. Вы можете наследовать от этого класса по другим причинам, но вы не можете переопределять или изменять поведение этих методов.
- См. также:
Краткое описание полей
Поля, объявленные в классе java.awt.image.ColorModel
pixel_bits, transferType
Поля, объявленные в интерфейсе java.awt.Transparency
BITMASK, OPAQUE, TRANSLUCENT
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
IndexColorModel |
Создаёт IndexColorModel из указанных массивов компонентов красного, зелёного и синего цветов. |
IndexColorModel |
Создаёт IndexColorModel из заданных массивов компонентов красного, зелёного, синего и альфа-каналов. |
IndexColorModel |
Создаёт IndexColorModel из заданных массивов компонентов красного, зелёного и синего цветов. |
IndexColorModel |
Создаёт IndexColorModel из одного массива переплетённых компонентов красного, зелёного, синего и необязательного альфа-канала. |
IndexColorModel |
Создаёт IndexColorModel из одного массива переплетённых компонентов красного, зелёного, синего и необязательного альфа-канала. |
IndexColorModel |
Создаёт IndexColorModel из массива целых чисел, где каждое целое число состоит из компонентов красного, зелёного, синего и необязательного альфа-канала в формате модели цвета RGB по умолчанию. |
IndexColorModel |
Создаёт IndexColorModel из массива int, где каждое int состоит из компонентов красного, зелёного, синего и альфа-канала в формате модели цвета RGB по умолчанию. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
BufferedImage |
convertToIntDiscrete |
Возвращает новый BufferedImage типа TYPE_INT_ARGB или TYPE_INT_RGB, который имеет Raster с данными пикселей, вычисленных путём расширения индексов в исходном Raster с использованием массивов компонентов цвета/альфа-канала этого ColorModel. |
SampleModel |
createCompatibleSampleModel |
Создаёт SampleModel с указанной шириной и высотой, имеющий структуру данных, совместимую с этим ColorModel. |
WritableRaster |
createCompatibleWritableRaster |
Создаёт WritableRaster с указанной шириной и высотой, имеющий структуру данных (SampleModel) совместимую с этим ColorModel. |
boolean |
equals |
Проверяет, является ли указанный Object экземпляром IndexColorModel и равен ли он этому IndexColorModel
|
void |
finalize() |
Устаревший, для удаления: Этот элемент API может быть удалён в будущей версии. |
final int |
getAlpha |
Возвращает компонент альфа-канала для указанного пикселя, масштабированный от 0 до 255. |
final void |
getAlphas |
Копирует массив компонентов прозрачности альфа-канала в указанный массив. |
final int |
getBlue |
Возвращает компонент синего цвета для указанного пикселя, масштабированный от 0 до 255 в стандартной модели RGB ColorSpace, sRGB. |
final void |
getBlues |
Копирует массив компонентов синего цвета в указанный массив. |
int[] |
getComponents |
Возвращает массив ненормализованных компонентов цвета/альфа-канала для указанного пикселя в этом ColorModel. |
int[] |
getComponents |
Возвращает массив ненормализованных компонентов цвета/альфа-канала для указанного пикселя в этом ColorModel. |
int[] |
getComponentSize() |
Возвращает массив количества битов для каждого компонента цвета/альфа-канала. |
int |
getDataElement |
Возвращает значение пикселя, представленное как целое число в этом ColorModel, на основе массива ненормализованных компонентов цвета/альфа-канала. |
Object |
getDataElements |
Возвращает массив данных элементов, представляющий пиксель в этом ColorModel, на основе массива ненормализованных компонентов цвета/альфа-канала. |
Object |
getDataElements |
Возвращает массив данных элементов, представляющий пиксель в этой модели цвета, на основе целого числового представления пикселя в стандартной модели цвета RGB. |
final int |
getGreen |
Возвращает компонент зелёного цвета для указанного пикселя, масштабированный от 0 до 255 в стандартной модели RGB ColorSpace, sRGB. |
final void |
getGreens |
Копирует массив компонентов зелёного цвета в указанный массив. |
final int |
getMapSize() |
Возвращает размер массивов компонентов цвета/альфа-канала в этом IndexColorModel. |
final int |
getRed |
Возвращает компонент красного цвета для указанного пикселя, масштабированный от 0 до 255 в стандартной модели RGB ColorSpace, sRGB. |
final void |
getReds |
Копирует массив компонентов красного цвета в указанный массив. |
final int |
getRGB |
Возвращает компоненты цвета/альфа-канала пикселя в формате стандартной модели цвета RGB. |
final void |
getRGBs |
Преобразует данные для каждого индекса из массивов компонентов цвета и альфа-канала в целое число в формате стандартной модели цвета RGB и копирует полученные 32-битные значения ARGB в указанный массив. |
int |
getTransparency() |
Возвращает прозрачность. |
final int |
getTransparentPixel() |
Возвращает индекс прозрачного пикселя в этом IndexColorModel или -1, если нет пикселя с значением альфа-канала 0. |
BigInteger |
getValidPixels() |
Возвращает BigInteger, указывающий на допустимые/недопустимые пиксели в палитре. |
int |
hashCode() |
Возвращает хэш-код для IndexColorModel. |
boolean |
isCompatibleRaster |
Возвращает true если raster совместим с этим ColorModel или false если он не совместим с этим ColorModel. |
boolean |
isCompatibleSampleModel |
Проверяет, совместим ли указанный SampleModel с этой ColorModel. |
boolean |
isValid() |
Возвращает, все ли пиксели допустимые. |
boolean |
isValid |
Возвращает, допустим ли пиксель. |
String |
toString() |
Возвращает String представление содержимого этого объекта ColorModel. |
Методы, объявленные в классе java.awt.image.ColorModel
coerceData, getAlpha, getAlphaRaster, getBlue, getColorSpace, getComponentSize, getDataElement, getDataElements, getGreen, getNormalizedComponents, getNormalizedComponents, getNumColorComponents, getNumComponents, getPixelSize, getRed, getRGB, getRGBdefault, getTransferType, getUnnormalizedComponents, hasAlpha, isAlphaPremultiplied
Подробное описание конструкторов
IndexColorModel
public IndexColorModel(int bits, int size, byte[] r, byte[] g, byte[] b)
IndexColorModel из указанных массивов красного, зелёного и синего компонентов. Все пиксели, описываемые этой цветовой моделью, имеют альфа-компоненты 255 (1,0 в нормализованном виде), что означает их полную непрозрачность. Все массивы, определяющие цветовые компоненты, должны содержать не менее указанного количества элементов. ColorSpace — это стандартное пространство sRGB. Так как в аргументах этого конструктора нет информации об альфа-канале, значение прозрачности всегда Transparency.OPAQUE. Тип передачи — это наименьший из DataBuffer.TYPE_BYTE или DataBuffer.TYPE_USHORT, который может содержать один пиксель.- Параметры:
-
bits- количество бит, занимаемых каждым пикселем -
size- размер массивов цветовых компонентов -
r- массив красных цветовых компонентов -
g- массив зелёных цветовых компонентов -
b- массив синих цветовых компонентов - Исключения:
-
IllegalArgumentException- еслиbitsменьше 1 или больше 16 -
IllegalArgumentException- еслиsizeменьше 1
IndexColorModel
public IndexColorModel(int bits, int size, byte[] r, byte[] g, byte[] b, int trans)
IndexColorModel из заданных массивов красного, зелёного и синего компонентов. Пиксели, описываемые этой цветовой моделью, имеют альфа-компоненты 255 (1,0 в нормализованном виде), что означает их полную непрозрачность, за исключением указанного пикселя, который будет прозрачным. Все массивы, определяющие цветовые компоненты, должны содержать не менее указанного количества элементов. ColorSpace — это стандартное пространство sRGB. Значение прозрачности может быть Transparency.OPAQUE или Transparency.BITMASK, в зависимости от аргументов, как указано в описании класса выше. Тип передачи — это наименьший из DataBuffer.TYPE_BYTE или DataBuffer.TYPE_USHORT, который может содержать один пиксель.- Параметры:
-
bits- количество бит, занимаемых каждым пикселем -
size- размер массивов цветовых компонентов -
r- массив красных цветовых компонентов -
g- массив зелёных цветовых компонентов -
b- массив синих цветовых компонентов -
trans- индекс прозрачного пикселя - Исключения:
-
IllegalArgumentException- еслиbitsменьше 1 или больше 16 -
IllegalArgumentException- еслиsizeменьше 1
IndexColorModel
public IndexColorModel(int bits, int size, byte[] r, byte[] g, byte[] b, byte[] a)
IndexColorModel из заданных массивов красного, зелёного, синего и альфа-компонентов. Все массивы, определяющие компоненты, должны содержать не менее указанного количества элементов. ColorSpace — это стандартное пространство sRGB. Значение прозрачности может быть любым из Transparency.OPAQUE, Transparency.BITMASK, или Transparency.TRANSLUCENT, в зависимости от аргументов, как указано в описании класса выше. Тип передачи — это наименьший из DataBuffer.TYPE_BYTE или DataBuffer.TYPE_USHORT, который может содержать один пиксель.- Параметры:
-
bits- количество бит, занимаемых каждым пикселем -
size- размер массивов цветовых компонентов -
r- массив красных цветовых компонентов -
g- массив зелёных цветовых компонентов -
b- массив синих цветовых компонентов -
a- массив альфа-компонентов - Исключения:
-
IllegalArgumentException- еслиbitsменьше 1 или больше 16 -
IllegalArgumentException- еслиsizeменьше 1
IndexColorModel
public IndexColorModel(int bits, int size, byte[] cmap, int start, boolean hasalpha)
IndexColorModel из одного массива перемешанных красных, зелёных, синих и необязательных альфа-компонентов. Массив должен содержать достаточное количество значений для заполнения всех необходимых массивов компонентов указанного размера. ColorSpace — это стандартное пространство sRGB. Значение прозрачности может быть любым из Transparency.OPAQUE, Transparency.BITMASK, или Transparency.TRANSLUCENT, в зависимости от аргументов, как указано в описании класса выше. Тип передачи — это наименьший из DataBuffer.TYPE_BYTE или DataBuffer.TYPE_USHORT, который может содержать один пиксель.- Параметры:
-
bits- количество бит, занимаемых каждым пикселем -
size- размер массивов цветовых компонентов -
cmap- массив цветовых компонентов -
start- начальный смещение первого цветового компонента -
hasalpha- указывает, содержатся ли альфа-значения в массивеcmap - Исключения:
-
IllegalArgumentException- еслиbitsменьше 1 или больше 16 -
IllegalArgumentException- еслиsizeменьше 1
IndexColorModel
public IndexColorModel(int bits, int size, byte[] cmap, int start, boolean hasalpha, int trans)
IndexColorModel из одного массива перемешанных красных, зелёных, синих и необязательных альфа-компонентов. Указанный прозрачный индекс представляет пиксель, который полностью прозрачен независимо от заданного для него значения альфа-канала. Массив должен содержать достаточное количество значений для заполнения всех необходимых массивов компонентов указанного размера. ColorSpace — это стандартное пространство sRGB. Значение прозрачности может быть любым из Transparency.OPAQUE, Transparency.BITMASK, или Transparency.TRANSLUCENT, в зависимости от аргументов, как указано в описании класса выше. Тип передачи — это наименьший из DataBuffer.TYPE_BYTE или DataBuffer.TYPE_USHORT, который может содержать один пиксель.- Параметры:
-
bits- количество бит, занимаемых каждым пикселем -
size- размер массивов цветовых компонентов -
cmap- массив цветовых компонентов -
start- начальный смещение первого цветового компонента -
hasalpha- указывает, содержатся ли альфа-значения в массивеcmap -
trans- индекс полностью прозрачного пикселя - Исключения:
-
IllegalArgumentException- еслиbitsменьше 1 или больше 16 -
IllegalArgumentException- еслиsizeменьше 1
IndexColorModel
public IndexColorModel(int bits, int size, int[] cmap, int start, boolean hasalpha, int trans, int transferType)
IndexColorModel из массива целых чисел, где каждый int состоит из красного, зелёного, синего и необязательного альфа-компонента в формате модели RGB по умолчанию. Указанный прозрачный индекс представляет пиксель, который полностью прозрачен независимо от заданного для него значения альфа-канала. Массив должен содержать достаточное количество значений для заполнения всех необходимых массивов компонентов указанного размера. ColorSpace — это стандартное пространство sRGB. Значение прозрачности может быть любым из Transparency.OPAQUE, Transparency.BITMASK, или Transparency.TRANSLUCENT, в зависимости от аргументов, как указано в описании класса выше.- Параметры:
-
bits- количество бит, занимаемых каждым пикселем -
size- размер массивов цветовых компонентов -
cmap- массив цветовых компонентов -
start- начальный смещение первого цветового компонента -
hasalpha- указывает, содержатся ли альфа-значения в массивеcmap -
trans- индекс полностью прозрачного пикселя -
transferType- тип данных массива, используемого для представления значений пикселей. Тип данных должен быть либоDataBuffer.TYPE_BYTE, либоDataBuffer.TYPE_USHORT - Исключения:
-
IllegalArgumentException- еслиbitsменьше 1 или больше 16 -
IllegalArgumentException- еслиsizeменьше 1 -
IllegalArgumentException- еслиtransferTypeне равен одному изDataBuffer.TYPE_BYTEилиDataBuffer.TYPE_USHORT
IndexColorModel
public IndexColorModel(int bits, int size, int[] cmap, int start, int transferType, BigInteger validBits)
IndexColorModel на основе массива int, где каждый int содержит компоненты красного, зеленого, синего и альфа-каналов в формате модели цвета по умолчанию RGB. Массив должен содержать достаточно значений для заполнения всех необходимых компонентных массивов указанного размера. ColorSpace — это пространство sRGB по умолчанию. Значение прозрачности может быть одним из Transparency.OPAQUE, Transparency.BITMASK, или Transparency.TRANSLUCENT, в зависимости от аргументов, как указано в описании класса выше в описании класса. Тип преобразования должен быть одним из DataBuffer.TYPE_BYTE DataBuffer.TYPE_USHORT. Объект BigInteger указывает на допустимые/недопустимые пиксели в массиве cmap. Пиксель считается допустимым, если бит BigInteger в этом индексе установлен, и недопустимым, если бит BigInteger в этом индексе не установлен.- Parameters:
-
bits- количество битов, занимаемых каждым пикселем -
size- размер массива компонент цвета -
cmap- массив компонент цвета -
start- начальный смещение первой компоненты цвета -
transferType- указанный тип данных -
validBits- объектBigInteger. Если бит установлен в BigInteger, пиксель в данном индексе является допустимым. Если бит не установлен, пиксель в данном индексе считается недопустимым. Если null, все пиксели считаются допустимыми. Принимаются только биты от 0 до размера карты. - Throws:
-
IllegalArgumentException- еслиbitsменьше 1 или больше 16 -
IllegalArgumentException- еслиsizeменьше 1 -
IllegalArgumentException- еслиtransferTypeне является одним изDataBuffer.TYPE_BYTEилиDataBuffer.TYPE_USHORT - Since:
- 1.3
Подробное описание методов
getTransparency
public int getTransparency()
- Specified by:
-
getTransparencyв интерфейсеTransparency - Overrides:
-
getTransparencyв классеColorModel - Returns:
- значение прозрачности этого
IndexColorModel - See Also:
getComponentSize
public int[] getComponentSize()
- Overrides:
-
getComponentSizeв классеColorModel - Returns:
- массив, содержащий количество битов каждой компоненты цвета и альфа-канала этого
IndexColorModel
getMapSize
public final int getMapSize()
IndexColorModel.- Returns:
- размер массивов компонент цвета и альфа-канала.
getTransparentPixel
public final int getTransparentPixel()
IndexColorModel или -1, если нет пикселя с значением альфа-канала 0. Если прозрачный пиксель был явно указан в одном из конструкторов по своему индексу, то этот индекс будет предпочтительнее, в противном случае может быть возвращён индекс любого пикселя, который оказывается полностью прозрачным.- Returns:
- индекс прозрачного пикселя в этом объекте
IndexColorModel, или -1, если такого пикселя нет
getReds
public final void getReds(byte[] r)
getMapSize.- Parameters:
-
r- указанный массив, в который копируются элементы массива компонент красного цвета
getGreens
public final void getGreens(byte[] g)
getMapSize.- Parameters:
-
g- указанный массив, в который копируются элементы массива компонент зелёного цвета
getBlues
public final void getBlues(byte[] b)
getMapSize.- Parameters:
-
b- указанный массив, в который копируются элементы массива компонент синего цвета
getAlphas
public final void getAlphas(byte[] a)
getMapSize.- Parameters:
-
a- указанный массив, в который копируются элементы массива компонент альфа-канала
getRGBs
public final void getRGBs(int[] rgb)
getMapSize.- Parameters:
-
rgb- указанный массив, в который копируются преобразованные значения ARGB из этого массива компонент цвета и альфа-канала.
getRed
public final int getRed(int pixel)
- Specified by:
-
getRedв классеColorModel - Parameters:
-
pixel- указанный пиксель - Returns:
- значение компоненты красного цвета для заданного пикселя
getGreen
public final int getGreen(int pixel)
- Specified by:
-
getGreenв классеColorModel - Parameters:
-
pixel- указанный пиксель - Returns:
- значение компоненты зелёного цвета для заданного пикселя
getBlue
public final int getBlue(int pixel)
- Specified by:
-
getBlueв классеColorModel - Parameters:
-
pixel- указанный пиксель - Returns:
- значение компоненты синего цвета для заданного пикселя
getAlpha
public final int getAlpha(int pixel)
- Specified by:
-
getAlphaв классеColorModel - Parameters:
-
pixel- указанный пиксель - Returns:
- значение компоненты альфа-канала для заданного пикселя
getRGB
public final int getRGB(int pixel)
- Overrides:
-
getRGBв классеColorModel - Parameters:
-
pixel- указанный пиксель - Returns:
- компоненты цвета и альфа-канала указанного пикселя
- See Also:
getDataElements
public Object getDataElements(int rgb, Object pixel)
setDataElements объекта WritableRaster. Если переменная пикселя null, выделяется новый массив. Если pixel не null, он должен быть примитивным массивом типа transferType; в противном случае, выбрасывается исключение ClassCastException. Исключение ArrayIndexOutOfBoundsException выбрасывается, если pixel недостаточно велик для хранения значения пикселя для данной модели ColorModel. Так как IndexColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, выбрасывается исключение, если они используют недопустимый transferType.
- Overrides:
-
getDataElementsв классеColorModel - Параметры:
-
rgb- целое число, представляющее пиксель в стандартной модели цвета RGB -
pixel- указанный пиксель - Возвращает:
- массив, представляющий указанный пиксель в данной модели
IndexColorModel. - Исключения:
-
ClassCastException- еслиpixelне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException- еслиpixelнедостаточно велик для хранения значения пикселя для данной моделиColorModel -
UnsupportedOperationException- еслиtransferTypeнедопустим - См. также:
getComponents
public int[] getComponents(int pixel, int[] components, int offset)
ColorModel. Значение пикселя задаётся как целое число. Если массив components пуст, выделяется новый массив, содержащий offset + getNumComponents() элементов. Возвращается массив components, включая компонент альфа, только если hasAlpha возвращает true. Компоненты цвета/альфа хранятся в массиве components начиная с offset, даже если массив выделен этим методом. Исключение ArrayIndexOutOfBoundsException выбрасывается, если массив components не пуст и недостаточно велик для хранения всех компонентов цвета и альфа, начиная с offset.- Overrides:
-
getComponentsв классеColorModel - Параметры:
-
pixel- указанный пиксель -
components- массив для получения компонентов цвета и альфа указанного пикселя -
offset- смещение в массивеcomponentsдля начала хранения компонентов цвета и альфа - Возвращает:
- массив, содержащий компоненты цвета и альфа указанного пикселя, начиная со смещения.
- См. также:
getComponents
public int[] getComponents(Object pixel, int[] components, int offset)
ColorModel. Значение пикселя задаётся массивом элементов данных типа transferType, переданным в качестве ссылки на объект. Если pixel не является примитивным массивом типа transferType, выбрасывается исключение ClassCastException. Исключение ArrayIndexOutOfBoundsException выбрасывается, если pixel недостаточно велик для хранения значения пикселя для данной модели ColorModel. Если массив components пуст, выделяется новый массив, содержащий offset + getNumComponents() элементов. Возвращается массив components, включая компонент альфа, только если hasAlpha возвращает true. Компоненты цвета/альфа хранятся в массиве components начиная с offset, даже если массив выделен этим методом. Исключение ArrayIndexOutOfBoundsException также выбрасывается, если массив components не пуст и недостаточно велик для хранения всех компонентов цвета и альфа, начиная с offset. Так как IndexColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, выбрасывается исключение, если они используют недопустимый transferType.
- Overrides:
-
getComponentsв классеColorModel - Параметры:
-
pixel- указанный пиксель -
components- массив, получающий компоненты цвета и альфа указанного пикселя -
offset- индекс в массивеcomponentsдля начала хранения компонентов цвета и альфа указанного пикселя - Возвращает:
- массив, содержащий компоненты цвета и альфа указанного пикселя, начиная со смещения.
- Исключения:
-
ArrayIndexOutOfBoundsException- еслиpixelнедостаточно велик для хранения значения пикселя для даннойColorModelили если массивcomponentsне пуст и недостаточно велик для хранения всех компонентов цвета и альфа, начиная сoffset -
ClassCastException- еслиpixelне является примитивным массивом типаtransferType -
UnsupportedOperationException- еслиtransferTypeне является одним из поддерживаемых типов передачи - См. также:
getDataElement
public int getDataElement(int[] components, int offset)
ColorModel, на основе массива ненормализованных компонентов цвета/альфа. Исключение ArrayIndexOutOfBoundsException выбрасывается, если массив components недостаточно велик для хранения всех компонентов цвета и альфа, начиная с offset. Поскольку ColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, выбрасывается исключение при использовании недопустимого transferType.- Overrides:
-
getDataElementв классеColorModel - Параметры:
-
components- массив ненормализованных компонентов цвета и альфа -
offset- индекс вcomponentsдля начала извлечения компонентов цвета и альфа - Возвращает:
- целое число, представляющее значение пикселя в данной модели
ColorModelсоответствующее заданным компонентам. - Исключения:
-
ArrayIndexOutOfBoundsException- если массивcomponentsнедостаточно велик для хранения всех компонентов цвета и альфа, начиная сoffset -
UnsupportedOperationException- еслиtransferTypeнедопустим
getDataElements
public Object getDataElements(int[] components, int offset, Object pixel)
ColorModel на основе массива ненормализованных компонентов цвета/альфа. Этот массив затем можно передать методу setDataElements объекта WritableRaster. Исключение ArrayIndexOutOfBoundsException выбрасывается, если массив components недостаточно велик для хранения всех компонентов цвета и альфа, начиная с offset. Если переменная пикселя null, выделяется новый массив. Если pixel не null, он должен быть примитивным массивом типа transferType; в противном случае, выбрасывается исключение ClassCastException. Исключение ArrayIndexOutOfBoundsException выбрасывается, если массив пикселей недостаточно велик для хранения значения пикселя для данной ColorModel. Так как IndexColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, выбрасывается исключение при использовании недопустимого transferType
- Overrides:
-
getDataElementsв классеColorModel - Параметры:
-
components- массив ненормализованных компонентов цвета и альфа -
offset- индекс вcomponentsдля начала извлечения компонентов цвета и альфа -
pixel- массив, представляющий массив компонентов цвета и альфа - Возвращает:
- массив, представляющий массив компонентов цвета и альфа.
- Исключения:
-
ClassCastException- еслиpixelне является примитивным массивом типаtransferType -
ArrayIndexOutOfBoundsException- еслиpixelнедостаточно велик для хранения значения пикселя для данной моделиColorModelили массивcomponentsнедостаточно велик для хранения всех компонентов цвета и альфа, начиная сoffset -
UnsupportedOperationException- еслиtransferTypeне является одним из поддерживаемых типов передачи - См. также:
созданиеСовместимогоЗаписываемогоРастра
public WritableRaster createCompatibleWritableRaster(int w, int h)
WritableRaster с указанной шириной и высотой, имеющий структуру данных (SampleModel) совместимую с этим ColorModel. Этот метод работает только для цветовых моделей с 16 или менее битами на пиксель. Поскольку IndexColorModel может быть подклассом, любой подкласс, поддерживающий более 16 бит на пиксель, должен переопределить этот метод.
- Overrides:
-
createCompatibleWritableRasterв классеColorModel - Параметры:
-
w- ширина, применимая к новомуWritableRaster -
h- высота, применимая к новомуWritableRaster - Возвращает:
- объект
WritableRasterс указанной шириной и высотой. - Исключения:
-
UnsupportedOperationException- если количество бит в пикселе больше 16 - См. также:
совместимСРастром
public boolean isCompatibleRaster(Raster raster)
true если raster совместим с этим ColorModel или false если не совместим с этим ColorModel.- Overrides:
-
isCompatibleRasterв классеColorModel - Параметры:
-
raster- объектRasterдля проверки на совместимость - Возвращает:
-
trueеслиrasterсовместим с этимColorModel;falseв противном случае.
создатьСовместимуюОбразцовуюМодель
public SampleModel createCompatibleSampleModel(int w, int h)
SampleModel с указанной шириной и высотой, имеющий структуру данных, совместимую с этим ColorModel.- Overrides:
-
createCompatibleSampleModelв классеColorModel - Параметры:
-
w- ширина, применимая к новойSampleModel -
h- высота, применимая к новойSampleModel - Возвращает:
- объект
SampleModelс указанной шириной и высотой. - Исключения:
-
IllegalArgumentException- еслиwилиhне больше 0 - См. также:
совместимСОбразцовойМоделей
public boolean isCompatibleSampleModel(SampleModel sm)
SampleModel с этим ColorModel. Если sm является null, этот метод возвращает false.- Overrides:
-
isCompatibleSampleModelв классеColorModel - Параметры:
-
sm- указаннаяSampleModel, илиnull - Возвращает:
-
trueесли указаннаяSampleModelсовместима с этимColorModel;falseв противном случае. - См. также:
преобразоватьВЦелочисленныйДискретный
public BufferedImage convertToIntDiscrete(Raster raster, boolean forceARGB)
BufferedImage типа TYPE_INT_ARGB или TYPE_INT_RGB, имеющий Raster с данными пикселей, вычисленными путём расширения индексов в исходном Raster с использованием массивов цветовых/альфа-компонентов этого ColorModel. Используются только младшие n биты каждого значения индекса в исходном Raster, как указано в описании класса выше, для вычисления цветовых/альфа-значений в возвращаемом изображении. Если forceARGB равно true, возвращается изображение TYPE_INT_ARGB, независимо от того, есть ли у этого ColorModel массив альфа-компонентов или прозрачный пиксель.- Параметры:
-
raster- указанныйRaster -
forceARGB- еслиtrue, возвращаемоеBufferedImageявляется TYPE_INT_ARGB; в противном случае - TYPE_INT_RGB - Возвращает:
BufferedImageсозданный с указаннымRaster- Исключения:
-
IllegalArgumentException- если аргумент растра не совместим с этой IndexColorModel
действителен
public boolean isValid(int pixel)
- Параметры:
-
pixel- указанное значение пикселя - Возвращает:
-
trueеслиpixelдействителен;falseв противном случае. - С:
- 1.3
действителен
public boolean isValid()
- Возвращает:
-
trueесли все пиксели действительны;falseв противном случае. - С:
- 1.3
получитьДействительныеПиксели
public BigInteger getValidPixels()
BigInteger , указывающий на действительные/недействительные пиксели в цветовой карте. Бит действителен, если значение BigInteger в этом индексе установлено, и недействителен, если значение BigInteger в этом индексе не установлено. Единственные допустимые диапазоны запроса в BigInteger находятся между 0 и размером карты.- Возвращает:
BigIntegerуказывающий на действительные/недействительные пиксели.- С:
- 1.3
finalize
@Deprecated(since="9", forRemoval=true) public void finalize()
finalize устарел. Подклассы, переопределяющие finalize для выполнения очистки, должны быть изменены на использование альтернативных механизмов очистки и удаления переопределенного метода finalize. При переопределении метода finalize, его реализация должна явно гарантировать вызов super.finalize() как описано в Object.finalize(). См. спецификацию для Object.finalize() для получения дополнительной информации о вариантах миграции.ColorModel , после того, как на этот ColorModel больше не ссылаются.- Overrides:
-
finalizeв классеColorModel - См. также:
строковоеПредставление
public String toString()
ColorModel.- Overrides:
-
toStringв классеColorModel - Возвращает:
- строковое представление содержимого этого объекта
ColorModel.
равенство
public boolean equals(Object obj)
Object экземпляром IndexColorModel и равен ли он этому IndexColorModel
- Overrides:
-
equalsв классеColorModel - Параметры:
-
obj- объектObjectдля проверки на равенство - Возвращает:
-
trueесли указанныйObjectравен этомуIndexColorModel;falseв противном случае. - См. также:
hashCode
public int hashCode()
- Overrides:
-
hashCodeв классеColorModel - Возвращает:
- хэш-код для IndexColorModel
- См. также:
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/java/awt/image/IndexColorModel.html
finalizeустарел.