Spec-Zone.ru › OpenJDK 8

Класс DirectColorModel

  • java.lang.Object
    • java.awt.image.ColorModel
      • java.awt.image.PackedColorModel
        • java.awt.image.DirectColorModel
Все реализованные интерфейсы:
Transparency

public class DirectColorModel
extends PackedColorModel

Класс DirectColorModel — это класс, работающий с пиксельными значениями, которые представляют информацию о цвете RGB и альфа-канале как отдельные образцы, упаковывая все образцы для одного пикселя в одно целое число, короткое целое или байт. Этот класс может использоваться только с цветовыми пространствами типа ColorSpace.TYPE_RGB. Кроме того, для каждого компонента цветового пространства минимальное значение нормализованного компонента, полученное с помощью метода getMinValue() класса ColorSpace, должно быть 0,0, а максимальное значение, полученное с помощью метода getMaxValue(), должно быть 1,0 (эти значения min/max типичны для RGB-пространств). В значениях пикселей должно быть три цветовых образца и может быть один образец альфа-канала. Для тех методов, которые используют представление пикселей в виде примитивного массива типа transferType, длина массива всегда равна единице. Поддерживаемые типы преобразования — DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT и DataBuffer.TYPE_INT. Цветовые и альфа-образцы хранятся в единственном элементе массива в битах, указанных масками. Каждая маска должна быть непрерывной, и маски не должны перекрываться. Те же маски применяются к представлению пикселя в виде единственного целого числа, используемого другими методами. Соответствие масок и цветовых/альфа-образцов таково:

  • Маски идентифицируются индексами от 0 до 2, если альфа-канал отсутствует, или до 3, если он присутствует.
  • Первые три индекса относятся к цветовым образцам; индекс 0 соответствует красному, индекс 1 — зеленому, а индекс 2 — синему.
  • Индекс 3 соответствует образцу альфа-канала, если он присутствует.

Перевод из значений пикселей в цветовые/альфа-компоненты для отображения или обработки является взаимно однозначным соответствием образцов компонентам. DirectColorModel обычно используется с данными изображения, в которых маски определяют упакованные образцы. Например, DirectColorModel может использоваться совместно с SinglePixelPackedSampleModel для построения BufferedImage. Обычно маски, используемые SampleModel и ColorModel, совпадают. Однако если они отличаются, интерпретация цвета данных пикселей будет осуществляться согласно маскам ColorModel.

Представление пикселя в виде единственного целого числа является допустимым для всех объектов этого класса, так как всегда возможно представить значения пикселей, используемые с этим классом, в виде единственного целого числа. Поэтому методы, использующие это представление, не будут выбрасывать исключение IllegalArgumentException из-за недопустимого значения пикселя.

Эта модель цвета аналогична визуальному представлению X11 TrueColor. По умолчанию RGB ColorModel, задаваемый методом getRGBdefault, является DirectColorModel со следующими параметрами:

Number of bits:        32
 Red mask:              0x00ff0000
 Green mask:            0x0000ff00
 Blue mask:             0x000000ff
 Alpha mask:            0xff000000
 Color space:           sRGB
 isAlphaPremultiplied:  False
 Transparency:          Transparency.TRANSLUCENT
 transferType:          DataBuffer.TYPE_INT

Многие методы в этом классе являются final. Это связано с тем, что базовый родной код графики делает предположения о структуре и работе этого класса, и эти предположения отражены в реализациях помеченных как final методов. Вы можете подклассировать этот класс по другим причинам, но вы не можете переопределять или изменять поведение этих методов.

См. также:
ColorModel, ColorSpace, SinglePixelPackedSampleModel, BufferedImage, ColorModel.getRGBdefault()

Поля

Поля, унаследованные от класса java.awt.image.ColorModel

pixel_bits, transferType

Поля, унаследованные от интерфейса java.awt.Transparency

BITMASK, OPAQUE, TRANSLUCENT

Конструкторы

Конструктор и описание
DirectColorModel(ColorSpace space, int bits, int rmask, int gmask, int bmask, int amask, boolean isAlphaPremultiplied, int transferType)

Создаёт DirectColorModel из указанных параметров.

DirectColorModel(int bits, int rmask, int gmask, int bmask)

Создаёт DirectColorModel из указанных масок, которые указывают, какие биты в представлении пикселя int содержат цветовые образцы красного, зеленого и синего цветов.

DirectColorModel(int bits, int rmask, int gmask, int bmask, int amask)

Создаёт DirectColorModel из указанных масок, которые указывают, какие биты в представлении пикселя int содержат цветовые образцы красного, зеленого и синего цветов, а также образец альфа-канала, если он присутствует.

Методы

Модификатор и тип Метод и описание
ColorModel coerceData(WritableRaster raster, boolean isAlphaPremultiplied)

Принудительно привязывает данные растра к состоянию, указанному в переменной isAlphaPremultiplied, предполагая, что данные в настоящее время корректно описываются этим ColorModel.

WritableRaster createCompatibleWritableRaster(int w, int h)

Создаёт WritableRaster с указанной шириной и высотой, имеющей структуру данных (SampleModel) совместимую с этим ColorModel.

int getAlpha(int pixel)

Возвращает компонент альфа-канала для указанного пикселя, масштабированный от 0 до 255.

int getAlpha(Object inData)

Возвращает компонент альфа-канала для указанного пикселя, масштабированный от 0 до 255.

int getAlphaMask()

Возвращает маску, указывающую, какие биты в представлении пикселя int содержат компонент альфа-канала.

int getBlue(int pixel)

Возвращает компонент синего цвета для указанного пикселя, масштабированный от 0 до 255 в стандартной модели RGB ColorSpace, sRGB.

int getBlue(Object inData)

Возвращает компонент синего цвета для указанного пикселя, масштабированный от 0 до 255 в стандартной модели RGB ColorSpace, sRGB.

int getBlueMask()

Возвращает маску, указывающую, какие биты в представлении пикселя int содержат компонент синего цвета.

int[] getComponents(int pixel, int[] components, int offset)

Возвращает массив ненормализованных цветовых/альфа-компонентов, заданных пикселем в этом ColorModel.

int[] getComponents(Object pixel, int[] components, int offset)

Возвращает массив ненормализованных цветовых/альфа-компонентов, заданных пикселем в этом ColorModel.

int getDataElement(int[] components, int offset)

Возвращает значение пикселя, представленное как int в этом ColorModel, заданное массивом ненормализованных цветовых/альфа-компонентов.

Object getDataElements(int[] components, int offset, Object obj)

Возвращает массив данных-элементов, представляющий пиксель в этом ColorModel, заданный массивом ненормализованных цветовых/альфа-компонентов.

Object getDataElements(int rgb, Object pixel)

Возвращает массив данных-элементов, представляющий пиксель в этом ColorModel, заданный целочисленным представлением пикселя в стандартной модели RGB.

int getGreen(int pixel)

Возвращает компонент зелёного цвета для указанного пикселя, масштабированный от 0 до 255 в стандартной модели RGB ColorSpace, sRGB.

int getGreen(Object inData)

Возвращает компонент зелёного цвета для указанного пикселя, масштабированный от 0 до 255 в стандартной модели RGB ColorSpace, sRGB.

int getGreenMask()

Возвращает маску, указывающую, какие биты в представлении пикселя int содержат компонент зелёного цвета.

int getRed(int pixel)

Возвращает компонент красного цвета для указанного пикселя, масштабированный от 0 до 255 в стандартной модели RGB ColorSpace, sRGB.

int getRed(Object inData)

Возвращает компонент красного цвета для указанного пикселя, масштабированный от 0 до 255 в стандартной модели RGB ColorSpace, sRGB.

int getRedMask()

Возвращает маску, указывающую, какие биты в представлении пикселя int содержат компонент красного цвета.

int getRGB(int pixel)

Возвращает цветовые/альфа-компоненты пикселя в формате стандартной модели RGB.

int getRGB(Object inData)

Возвращает цветовые/альфа-компоненты для указанного пикселя в формате стандартной модели RGB.

boolean isCompatibleRaster(Raster raster)

Возвращает true, если raster совместим с этим ColorModel и false, если нет.

String toString()

Возвращает String, представляющий этот DirectColorModel.

Методы, унаследованные от класса java.awt.image.PackedColorModel

createCompatibleSampleModel, equals, getAlphaRaster, getMask, getMasks, isCompatibleSampleModel

Методы, унаследованные от класса java.awt.image.ColorModel

finalize, getColorSpace, getComponentSize, getComponentSize, getDataElement, getDataElements, getNormalizedComponents, getNormalizedComponents, getNumColorComponents, getNumComponents, getPixelSize, getRGBdefault, getTransferType, getTransparency, getUnnormalizedComponents, hasAlpha, hashCode, isAlphaPremultiplied

Методы, унаследованные от класса java.lang.Object

clone, getClass, notify, notifyAll, wait, wait, wait

Конструкторы

DirectColorModel

public DirectColorModel(int bits,
                        int rmask,
                        int gmask,
                        int bmask)

Создаёт DirectColorModel по заданным маскам, определяющим, какие биты в представлении пикселя содержат значения красного, зелёного и синего цветов. Поскольку значения пикселей не содержат альфа-информацию, все пиксели обрабатываются как непрозрачные, что означает alpha = 1.0. Все биты в каждой маске должны быть смежными и помещаться в указанном количестве младших значащих битов представления пикселя. ColorSpace — это пространство sRGB по умолчанию. Значение прозрачности — Transparency.OPAQUE. Тип передачи — это наименьший из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT, способный хранить один пиксель.

Параметры:
bits — количество бит в значениях пикселей; например, сумма количества бит в масках.
rmask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат красный компонент
gmask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат зелёный компонент
bmask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат синий компонент

DirectColorModel

public DirectColorModel(int bits,
                        int rmask,
                        int gmask,
                        int bmask,
                        int amask)

Создаёт DirectColorModel по заданным маскам, определяющим, какие биты в представлении пикселя содержат значения красного, зелёного и синего цветов, а также альфа-компонента, если он присутствует. Если amask равно 0, значения пикселей не содержат альфа-информацию, и все пиксели обрабатываются как непрозрачные, что означает alpha = 1.0. Все биты в каждой маске должны быть смежными и помещаться в указанном количестве младших значащих битов представления пикселя. Альфа, если присутствует, не предумножается. ColorSpace — это пространство sRGB по умолчанию. Значение прозрачности — Transparency.OPAQUE, если альфа отсутствует, или Transparency.TRANSLUCENT в противном случае. Тип передачи — это наименьший из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT, способный хранить один пиксель.

Параметры:
bits — количество бит в значениях пикселей; например, сумма количества бит в масках.
rmask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат красный компонент
gmask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат зелёный компонент
bmask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат синий компонент
amask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат альфа-компонент

DirectColorModel

public DirectColorModel(ColorSpace space,
                        int bits,
                        int rmask,
                        int gmask,
                        int bmask,
                        int amask,
                        boolean isAlphaPremultiplied,
                        int transferType)

Создаёт DirectColorModel по заданным параметрам. Цветные компоненты находятся в указанном ColorSpace, который должен быть типа ColorSpace.TYPE_RGB и иметь минимальные нормализованные значения компонентов, равные 0,0, и максимальные значения, равные 1,0. Маски задают, какие биты в представлении пикселя содержат значения красного, зелёного и синего цветов, а также альфа-компонента, если он присутствует. Если amask равно 0, значения пикселей не содержат альфа-информацию, и все пиксели обрабатываются как непрозрачные, что означает alpha = 1.0. Все биты в каждой маске должны быть смежными и помещаться в указанном количестве младших значащих битов представления пикселя. Если есть альфа, boolean isAlphaPremultiplied указывает, как интерпретировать цветовые и альфа-значения в значениях пикселей. Если boolean — true, считается, что цветовые образцы были умножены на альфа-образец. Значение прозрачности — Transparency.OPAQUE, если альфа отсутствует, или Transparency.TRANSLUCENT в противном случае. Тип передачи — это тип примитивного массива, используемого для представления значений пикселей, и должен быть одним из DataBuffer.TYPE_BYTE, DataBuffer.TYPE_USHORT или DataBuffer.TYPE_INT.

Параметры:
space — указанное ColorSpace
bits — количество бит в значениях пикселей; например, сумма количества бит в масках.
rmask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат красный компонент
gmask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат зелёный компонент
bmask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат синий компонент
amask — задаёт маску, указывающую, какие биты в целочисленном пикселе содержат альфа-компонент
isAlphaPremultiplied — true если цветовые образцы умножены на альфа-образец; false в противном случае
transferType — тип массива, используемого для представления значений пикселей
Исключения:
IllegalArgumentException — если space не является пространством TYPE_RGB или если минимальные/максимальные нормализованные значения компонентов не равны 0,0/1,0.

Методы

getRedMask

public final int getRedMask()

Возвращает маску, указывающую, какие биты в представлении пикселя содержат красный цветовой компонент.

Возвращает:
маску, которая указывает, какие биты представления int пикселя содержат красный цветовой образец.

getGreenMask

public final int getGreenMask()

Возвращает маску, указывающую, какие биты в представлении пикселя содержат зелёный цветовой компонент.

Возвращает:
маску, которая указывает, какие биты представления int пикселя содержат зелёный цветовой образец.

getBlueMask

public final int getBlueMask()

Возвращает маску, указывающую, какие биты в представлении пикселя содержат синий цветовой компонент.

Возвращает:
маску, которая указывает, какие биты представления int пикселя содержат синий цветовой образец.

getAlphaMask

public final int getAlphaMask()

Возвращает маску, указывающую, какие биты в представлении пикселя содержат альфа-компонент.

Возвращает:
маску, которая указывает, какие биты представления int пикселя содержат альфа-образец.

getRed

public final int getRed(int pixel)

Возвращает красный цветовой компонент для заданного пикселя, масштабированный от 0 до 255 в стандартной цветовой модели RGB, sRGB. Если необходимо, выполняется преобразование цвета. Значение пикселя задаётся как int. Возвращаемое значение — это значение без предумножения. Таким образом, если альфа предумножена, этот метод делит её перед возвратом значения. Если альфа-значение равно 0, например, красное значение равно 0.

Унаследован от:
getRed в классе ColorModel
Параметры:
pixel — заданный пиксель
Возвращает:
красный цветовой компонент заданного пикселя, от 0 до 255 в цветовой модели sRGB.

getGreen

public final int getGreen(int pixel)

Возвращает зелёный цветовой компонент для заданного пикселя, масштабированный от 0 до 255 в стандартной цветовой модели RGB, sRGB. Если необходимо, выполняется преобразование цвета. Значение пикселя задаётся как int. Возвращаемое значение — это значение без предумножения. Таким образом, если альфа предумножена, этот метод делит её перед возвратом значения. Если альфа-значение равно 0, например, зелёное значение равно 0.

Унаследован от:
getGreen в классе ColorModel
Параметры:
pixel — заданный пиксель
Возвращает:
зелёный цветовой компонент заданного пикселя, от 0 до 255 в цветовой модели sRGB.

getBlue

public final int getBlue(int pixel)

Возвращает синий цветовой компонент для заданного пикселя, масштабированный от 0 до 255 в стандартной цветовой модели RGB, sRGB. Если необходимо, выполняется преобразование цвета. Значение пикселя задаётся как int. Возвращаемое значение — это значение без предумножения. Таким образом, если альфа предумножена, этот метод делит её перед возвратом значения. Если альфа-значение равно 0, например, синее значение равно 0.

Унаследован от:
getBlue в классе ColorModel
Параметры:
pixel — заданный пиксель
Возвращает:
синий цветовой компонент заданного пикселя, от 0 до 255 в цветовой модели sRGB.

getAlpha

public final int getAlpha(int pixel)

Возвращает альфа-компонент для заданного пикселя, масштабированный от 0 до 255. Значение пикселя задаётся как int.

Унаследован от:
getAlpha в классе ColorModel
Параметры:
pixel — заданный пиксель
Возвращает:
значение альфа-компонента pixel от 0 до 255.

getRGB

public final int getRGB(int pixel)

Возвращает цветовые/альфа-компоненты пикселя в формате стандартной цветовой модели RGB. Если необходимо, выполняется преобразование цвета. Значение пикселя задаётся как int. Возвращаемое значение в формате без предумножения. Таким образом, если альфа предумножена, этот метод делит её из цветовых компонентов. Если альфа-значение равно 0, например, цветовые значения равны 0.

Переопределяет:
getRGB в классе ColorModel
Параметры:
pixel — заданный пиксель
Возвращает:
значение RGB цветовых/альфа-компонентов заданного пикселя.
См. также:
ColorModel.getRGBdefault()

getRed

public int getRed(Object inData)

Возвращает красный цветовой компонент для указанного пикселя, масштабированный от 0 до 255 в стандартном RGB ColorSpace, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задаётся массивом элементов данных типа transferType, переданным в качестве ссылки на объект. Возвращаемое значение — не преумноженное значение. Таким образом, если альфа-компонент преумножен, этот метод делит его перед возвратом значения. Если значение альфа равно 0, например, значение красного цвета равно 0. Если inData не является примитивным массивом типа transferType, выбрасывается ClassCastException. Выбрасывается ArrayIndexOutOfBoundsException, если inData недостаточно велик для хранения значения пикселя для этой модели цвета ColorModel. Поскольку DirectColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, то выбрасывают исключение, если используют неподдерживаемую transferType. Выбрасывается UnsupportedOperationException, если эта модель цвета transferType не поддерживается этой ColorModel.

Overrides:
getRed в классе ColorModel
Parameters:
inData — массив, содержащий значение пикселя
Returns:
значение красной компоненты указанного пикселя.
Throws:
ArrayIndexOutOfBoundsException — если inData недостаточно велик для хранения значения пикселя для этой модели цвета
ClassCastException — если inData не является примитивным массивом типа transferType
UnsupportedOperationException — если эта модель цвета transferType не поддерживается этой моделью цвета

getGreen

public int getGreen(Object inData)

Возвращает зелёную компоненту цвета для указанного пикселя, масштабированную от 0 до 255 в стандартной RGB ColorSpace, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задаётся массивом элементов данных типа transferType, переданным в качестве ссылки на объект. Возвращаемое значение — не преумноженное значение. Таким образом, если альфа-компонент преумножен, этот метод делит его перед возвратом значения. Если значение альфа равно 0, например, значение зелёного цвета равно 0. Если inData не является примитивным массивом типа transferType, выбрасывается ClassCastException. Выбрасывается ArrayIndexOutOfBoundsException, если inData недостаточно велик для хранения значения пикселя для этой ColorModel. Поскольку DirectColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, то выбрасывают исключение, если используют неподдерживаемую transferType. Выбрасывается UnsupportedOperationException, если эта модель цвета transferType не поддерживается этой ColorModel.

Overrides:
getGreen в классе ColorModel
Parameters:
inData — массив, содержащий значение пикселя
Returns:
значение зелёной компоненты указанного пикселя.
Throws:
ArrayIndexOutOfBoundsException — если inData недостаточно велик для хранения значения пикселя для этой модели цвета
ClassCastException — если inData не является примитивным массивом типа transferType
UnsupportedOperationException — если эта модель цвета transferType не поддерживается этой моделью цвета

getBlue

public int getBlue(Object inData)

Возвращает синюю компоненту цвета для указанного пикселя, масштабированную от 0 до 255 в стандартном RGB ColorSpace, sRGB. При необходимости выполняется преобразование цвета. Значение пикселя задаётся массивом элементов данных типа transferType , переданным в качестве ссылки на объект. Возвращаемое значение — не преумноженное значение. Таким образом, если альфа-компонент преумножен, этот метод делит его перед возвратом значения. Если значение альфа равно 0, например, значение синего цвета равно 0. Если inData не является примитивным массивом типа transferType, выбрасывается ClassCastException. Выбрасывается ArrayIndexOutOfBoundsException, если inData недостаточно велик для хранения значения пикселя для этой ColorModel. Поскольку DirectColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, то выбрасывают исключение, если используют неподдерживаемую transferType. Выбрасывается UnsupportedOperationException, если эта модель цвета transferType не поддерживается этой ColorModel.

Overrides:
getBlue в классе ColorModel
Parameters:
inData — массив, содержащий значение пикселя
Returns:
значение синей компоненты указанного пикселя.
Throws:
ArrayIndexOutOfBoundsException — если inData недостаточно велик для хранения значения пикселя для этой модели цвета
ClassCastException — если inData не является примитивным массивом типа transferType
UnsupportedOperationException — если эта модель цвета transferType не поддерживается этой моделью цвета

getAlpha

public int getAlpha(Object inData)

Возвращает альфа-компонент для указанного пикселя, масштабированный от 0 до 255. Значение пикселя задаётся массивом элементов данных типа transferType , переданным в качестве ссылки на объект. Если inData не является примитивным массивом типа transferType, выбрасывается ClassCastException. Выбрасывается ArrayIndexOutOfBoundsException, если inData недостаточно велик для хранения значения пикселя для этой ColorModel. Поскольку DirectColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, то выбрасывают исключение, если используют неподдерживаемую transferType. Если эта модель цвета transferType не поддерживается, выбрасывается UnsupportedOperationException.

Overrides:
getAlpha в классе ColorModel
Parameters:
inData — указанный пиксел
Returns:
альфа-компонент указанного пикселя, масштабированный от 0 до 255.
Throws:
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. Поскольку DirectColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, то выбрасывают исключение, если используют неподдерживаемую transferType.

Overrides:
getRGB в классе ColorModel
Parameters:
inData — указанный пиксел
Returns:
цветовые и альфа-компоненты указанного пикселя.
Throws:
UnsupportedOperationException — если эта модель цвета transferType не поддерживается этой ColorModel
See Also:
ColorModel.getRGBdefault()

getDataElements

public Object getDataElements(int rgb,
                              Object pixel)

Возвращает массив элементов данных, представляющий пиксель в этой ColorModel, заданный целочисленным представлением пикселя в стандартной цветовой модели RGB. Этот массив затем может быть передан методу setDataElements объекта WritableRaster. Если переменная пикселя null, выделяется новый массив. Если pixel не null, он должен быть примитивным массивом типа transferType; в противном случае выбрасывается ClassCastException. Выбрасывается ArrayIndexOutOfBoundsException, если pixel недостаточно велик для хранения значения пикселя для этой ColorModel. Возвращается массив пикселей. Поскольку DirectColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, то выбрасывают исключение, если используют неподдерживаемую transferType.

Overrides:
getDataElements в классе ColorModel
Parameters:
rgb — целочисленное представление пикселя в стандартной цветовой модели RGB
pixel — указанный пиксел
Returns:
массив, представляющий указанный пиксел в этой ColorModel
Throws:
ClassCastException — если pixel не является примитивным массивом типа transferType
ArrayIndexOutOfBoundsException — если pixel недостаточно велик для хранения значения пикселя для этой ColorModel
UnsupportedOperationException — если эта модель цвета transferType не поддерживается этой ColorModel
See Also:
WritableRaster.setDataElements(int, int, java.lang.Object), SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)

getComponents

public final int[] getComponents(int pixel,
                                 int[] components,
                                 int offset)

Возвращает массив ненормализованных цветовых/альфа-компонентов, заданных пикселем в этой ColorModel. Значение пикселя задано как int. Если массив components равен null, выделяется новый массив. Возвращается массив components. Цветовые/альфа-компоненты хранятся в массиве components начиная с индекса offset, даже если массив выделен этим методом. Выбрасывается ArrayIndexOutOfBoundsException, если массив components не null и не достаточно велик для хранения всех цветовых и альфа-компонентов, начиная с offset.

Переопределяет:
getComponents в классе ColorModel
Параметры:
pixel - указанный пиксель
components - массив для получения цветовых и альфа-компонентов указанного пикселя
offset - смещение в массиве components для начала хранения цветовых и альфа-компонентов
Возвращает:
массив, содержащий цветовые и альфа-компоненты указанного пикселя, начиная с указанного смещения.

getComponents

public final int[] getComponents(Object pixel,
                                 int[] components,
                                 int offset)

Возвращает массив ненормализованных цветовых/альфа-компонентов, заданных пикселем в этом ColorModel. Значение пикселя задаётся массивом элементов данных типа transferType в качестве ссылки на объект. Если pixel не является примитивным массивом типа transferType, выбрасывается ClassCastException. Выбрасывается ArrayIndexOutOfBoundsException, если pixel недостаточно велик для хранения значения пикселя для этого ColorModel. Если массив components пуст, создаётся новый массив. Возвращается массив components. Цветовые/альфа-компоненты хранятся в массиве components, начиная со смещения offset, даже если массив был выделен этим методом. Выбрасывается ArrayIndexOutOfBoundsException, если массив components не пуст и недостаточно велик для хранения всех цветовых и альфа-компонентов, начиная со смещения offset. Поскольку DirectColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, то выбрасывают исключение, если используется неподдерживаемый transferType.

Переопределяет:
getComponents в классе ColorModel
Параметры:
pixel - указанный пиксель
components - массив для получения цветовых и альфа-компонентов указанного пикселя
offset - смещение в массиве components для начала хранения цветовых и альфа-компонентов
Возвращает:
массив, содержащий цветовые и альфа-компоненты указанного пикселя, начиная с указанного смещения.
Выбрасывает:
ClassCastException - если pixel не является примитивным массивом типа transferType
ArrayIndexOutOfBoundsException - если pixel не достаточно велик для хранения значения пикселя для этого ColorModel, или если components не пуст и не достаточно велик для хранения всех цветовых и альфа-компонентов, начиная со смещения offset
UnsupportedOperationException - если этот transferType не поддерживается данной цветовой моделью

createCompatibleWritableRaster

public final WritableRaster createCompatibleWritableRaster(int w,
                                                           int h)

Создаёт WritableRaster с заданной шириной и высотой, имеющий структуру данных (SampleModel) совместимую с этим ColorModel.

Переопределяет:
createCompatibleWritableRaster в классе ColorModel
Параметры:
w - ширина, применяемая к новому WritableRaster
h - высота, применяемая к новому WritableRaster
Возвращает:
объект WritableRaster с заданной шириной и высотой.
Выбрасывает:
IllegalArgumentException - если w или h меньше или равны нулю
См. также:
WritableRaster, SampleModel

getDataElement

public int getDataElement(int[] components,
                          int offset)

Возвращает значение пикселя, представленное как int в этом ColorModel, заданное массивом ненормализованных цветовых/альфа-компонентов. Выбрасывается ArrayIndexOutOfBoundsException, если массив components не достаточно велик для хранения всех цветовых и альфа-компонентов, начиная со смещения offset.

Переопределяет:
getDataElement в классе ColorModel
Параметры:
components - массив ненормализованных цветовых и альфа-компонентов
offset - индекс в components для начала извлечения цветовых и альфа-компонентов
Возвращает:
значение пикселя int в этом ColorModel, соответствующее указанным компонентам.
Выбрасывает:
ArrayIndexOutOfBoundsException - если массив components не достаточно велик для хранения всех цветовых и альфа-компонентов, начиная со смещения offset

getDataElements

public Object getDataElements(int[] components,
                              int offset,
                              Object obj)

Возвращает массив данных элементов представления пикселя в этом ColorModel, заданный массивом ненормализованных цветовых/альфа-компонентов. Этот массив можно передать методу setDataElements объекта WritableRaster . Выбрасывается ArrayIndexOutOfBoundsException, если массив components не достаточно велик для хранения всех цветовых и альфа-компонентов, начиная со смещения. Если переменная obj пуста, создаётся новый массив. Если obj не пуст, он должен быть примитивным массивом типа transferType; в противном случае выбрасывается ClassCastException. Выбрасывается ArrayIndexOutOfBoundsException, если obj не достаточно велик для хранения значения пикселя для этого ColorModel. Поскольку DirectColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, то выбрасывают исключение, если используется неподдерживаемый transferType.

Переопределяет:
getDataElements в классе ColorModel
Параметры:
components - массив ненормализованных цветовых и альфа-компонентов
offset - индекс в components для начала извлечения цветовых и альфа-компонентов
obj - массив, представляющий набор цветовых и альфа-компонентов
Возвращает:
массив, представляющий набор цветовых и альфа-компонентов.
Выбрасывает:
ClassCastException - если obj не является примитивным массивом типа transferType
ArrayIndexOutOfBoundsException - если obj не достаточно велик для хранения значения пикселя для этого ColorModel или массив components не достаточно велик для хранения всех цветовых и альфа-компонентов, начиная со смещения offset
UnsupportedOperationException - если этот transferType не поддерживается данной цветовой моделью
См. также:
WritableRaster.setDataElements(int, int, java.lang.Object), SampleModel.setDataElements(int, int, java.lang.Object, java.awt.image.DataBuffer)

coerceData

public final ColorModel coerceData(WritableRaster raster,
                                   boolean isAlphaPremultiplied)

Принудительно согласовывает данные растра с состоянием, указанным в переменной isAlphaPremultiplied, предполагая, что данные в настоящее время правильно описаны этим ColorModel. Может умножить или разделить цветовые данные растра на альфа-канал или ничего не делать, если данные находятся в правильном состоянии. Если данные нужно согласовать, этот метод также вернёт экземпляр этого ColorModel с соответствующим флагом isAlphaPremultiplied. Этот метод выбросит UnsupportedOperationException, если этот тип передачи не поддерживается этой ColorModel. Поскольку ColorModel может быть подклассом, подклассы наследуют реализацию этого метода, и если они его не переопределяют, то выбрасывают исключение, если используется неподдерживаемый тип передачи.

Переопределяет:
coerceData в классе ColorModel
Параметры:
raster - данные растра
isAlphaPremultiplied - true, если альфа предварительно умножена; false в противном случае
Возвращает:
объект ColorModel, представляющий согласованные данные.
Выбрасывает:
UnsupportedOperationException - если этот transferType не поддерживается данной цветовой моделью

isCompatibleRaster

public boolean isCompatibleRaster(Raster raster)

Возвращает true, если raster совместим с этим ColorModel и false, если не совместим.

Переопределяет:
isCompatibleRaster в классе ColorModel
Параметры:
raster - объект Raster для проверки совместимости
Возвращает:
true если raster совместим с этим ColorModel; false в противном случае.

toString

public String toString()

Возвращает String, представляющий этот DirectColorModel.

Переопределяет:
toString в классе ColorModel
Возвращает:
строку, представляющую этот DirectColorModel.

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API