Spec-Zone.ru › OpenJDK 17

Класс ColorSpace

java.lang.Object
java.awt.color.ColorSpace
Все реализованные интерфейсы:
Serializable
Прямые известные подклассы:
ICC_ColorSpace
public abstract class ColorSpace extends Object implements Serializable
Этот абстрактный класс используется в качестве метки цветового пространства для идентификации конкретного цветового пространства объекта Color или, посредством объекта ColorModel, объекта Image, BufferedImage или GraphicsDevice. Он содержит методы, преобразующие цвета в определённом цветовом пространстве в/из sRGB и в/из хорошо определённого цветового пространства CIEXYZ.

Для целей методов в этом классе цвета представлены в виде массивов цветовых компонентов, представленных как числа с плавающей точкой в нормализованном диапазоне, определённом каждым ColorSpace. Для многих ColorSpaces (например, sRGB), этот диапазон составляет от 0,0 до 1,0. Однако у некоторых ColorSpaces компоненты имеют значения в другом диапазоне. Предоставляются методы для запроса минимальных и максимальных нормализованных значений каждого компонента.

Определены несколько переменных для целей ссылки на типы цветовых пространств (например, TYPE_RGB, TYPE_XYZ, и т.д.) и для ссылки на конкретные цветовые пространства (например, CS_sRGB и CS_CIEXYZ). sRGB является предлагаемым стандартным цветовым пространством RGB. Для получения дополнительной информации, см. http://www.w3.org/pub/WWW/Graphics/Color/sRGB.html.

Целью методов преобразования в/из хорошо определённого цветового пространства CIEXYZ является поддержка преобразований между любыми двумя цветовыми пространствами с приемлемой точностью. Ожидается, что конкретные реализации подклассов ColorSpace (например, ICC_ColorSpace) будут поддерживать высокопроизводительное преобразование, основанное на системах управления цветом платформы.

Используемое CS_CIEXYZ пространство для методов toCIEXYZ/fromCIEXYZ можно описать следующим образом:


     CIEXYZ
     viewing illuminance: 200 lux
     viewing white point: CIE D50
     media white point: "that of a perfectly reflecting diffuser" -- D50
     media black point: 0 lux or 0 Reflectance
     flare: 1 percent
     surround: 20percent of the media white point
     media description: reflection print (i.e., RLAB, Hunt viewing media)
     note: For developers creating an ICC profile for this conversion
           space, the following is applicable. Use a simple Von Kries
           white point adaptation folded into the 3X3 matrix parameters
           and fold the flare and surround effects into the three
           one-dimensional lookup tables (assuming one uses the minimal
           model for monitors).

 
См. также:
  • ICC_ColorSpace
  • Сериализованная форма

Краткое описание полей

Модификатор и тип Поле Описание
static final int CS_CIEXYZ
Встроенное цветовое пространство преобразования CIEXYZ, определённое выше.
static final int CS_GRAY
Встроенное линейное цветовое пространство серого.
static final int CS_LINEAR_RGB
Встроенное линейное цветовое пространство RGB.
static final int CS_PYCC
Встроенное цветовое пространство преобразования Photo YCC.
static final int CS_sRGB
Встроенное цветовое пространство sRGB, определённое по адресу http://www.w3.org/pub/WWW/Graphics/Color/sRGB.html.
static final int TYPE_2CLR
Общие цветовые пространства с 2 компонентами.
static final int TYPE_3CLR
Общие цветовые пространства с 3 компонентами.
static final int TYPE_4CLR
Общие цветовые пространства с 4 компонентами.
static final int TYPE_5CLR
Общие цветовые пространства с 5 компонентами.
static final int TYPE_6CLR
Общие цветовые пространства с 6 компонентами.
static final int TYPE_7CLR
Общие цветовые пространства с 7 компонентами.
static final int TYPE_8CLR
Общие цветовые пространства с 8 компонентами.
static final int TYPE_9CLR
Общие цветовые пространства с 9 компонентами.
static final int TYPE_ACLR
Общие цветовые пространства с 10 компонентами.
static final int TYPE_BCLR
Общие цветовые пространства с 11 компонентами.
static final int TYPE_CCLR
Общие цветовые пространства с 12 компонентами.
static final int TYPE_CMY
Любое из семейства цветовых пространств CMY.
static final int TYPE_CMYK
Любое из семейства цветовых пространств CMYK.
static final int TYPE_DCLR
Общие цветовые пространства с 13 компонентами.
static final int TYPE_ECLR
Общие цветовые пространства с 14 компонентами.
static final int TYPE_FCLR
Общие цветовые пространства с 15 компонентами.
static final int TYPE_GRAY
Любое из семейства цветовых пространств GRAY.
static final int TYPE_HLS
Любое из семейства цветовых пространств HLS.
static final int TYPE_HSV
Любое из семейства цветовых пространств HSV.
static final int TYPE_Lab
Любое из семейства цветовых пространств Lab.
static final int TYPE_Luv
Любое из семейства цветовых пространств Luv.
static final int TYPE_RGB
Любое из семейства цветовых пространств RGB.
static final int TYPE_XYZ
Любое из семейства цветовых пространств XYZ.
static final int TYPE_YCbCr
Любое из семейства цветовых пространств YCbCr.
static final int TYPE_Yxy
Любое из семейства цветовых пространств Yxy.

Краткое описание конструкторов

ColorSpace(int type, int numComponents)
Модификатор Конструктор Описание
protected
Создаёт объект ColorSpace с учётом типа цветового пространства и количества компонентов.

Краткое описание методов

Модификатор и тип Метод Описание
abstract float[] fromCIEXYZ(float[] colorvalue)
Преобразует значение цвета, предположительно находящееся в цветовом пространстве преобразования CS_CIEXYZ, в это ColorSpace.
abstract float[] fromRGB(float[] rgbvalue)
Преобразует значение цвета, предположительно находящееся в стандартном цветовом пространстве CS_sRGB, в это ColorSpace.
static ColorSpace getInstance(int cspace)
Возвращает ColorSpace, представляющий одно из предварительно определённых цветовых пространств.
float getMaxValue(int component)
Возвращает максимальное нормализованное значение цветового компонента для указанного компонента.
float getMinValue(int component)
Возвращает минимальное нормализованное значение цветового компонента для указанного компонента.
String getName(int component)
Возвращает имя компонента, заданного индексом компонента.
int getNumComponents()
Возвращает количество компонентов этого ColorSpace.
int getType()
Возвращает тип цветового пространства этого ColorSpace (например, TYPE_RGB, TYPE_XYZ, ...).
boolean isCS_sRGB()
Возвращает true, если ColorSpace является CS_sRGB.
abstract float[] toCIEXYZ(float[] colorvalue)
Преобразует значение цвета, предположительно находящееся в этом ColorSpace, в цветовое пространство преобразования CS_CIEXYZ.
abstract float[] toRGB(float[] colorvalue)
Преобразует значение цвета, предположительно находящееся в этом ColorSpace, в значение в стандартном цветовом пространстве CS_sRGB.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

TYPE_XYZ

@Native public static final int TYPE_XYZ
Любой из цветовых пространств семейства XYZ.
См. также:
  • Значения постоянных полей

TYPE_Lab

@Native public static final int TYPE_Lab
Любое из цветовых пространств семейства Lab.
См. также:
  • Значения постоянных полей

TYPE_Luv

@Native public static final int TYPE_Luv
Любое из цветовых пространств семейства Luv.
См. также:
  • Значения постоянных полей

TYPE_YCbCr

@Native public static final int TYPE_YCbCr
Любое из цветовых пространств семейства YCbCr.
См. также:
  • Значения постоянных полей

TYPE_Yxy

@Native public static final int TYPE_Yxy
Любое из цветовых пространств семейства Yxy.
См. также:
  • Значения постоянных полей

TYPE_RGB

@Native public static final int TYPE_RGB
Любое из цветовых пространств семейства RGB.
См. также:
  • Значения постоянных полей

TYPE_GRAY

@Native public static final int TYPE_GRAY
Любое из цветовых пространств семейства GRAY.
См. также:
  • Значения постоянных полей

TYPE_HSV

@Native public static final int TYPE_HSV
Любое из цветовых пространств семейства HSV.
См. также:
  • Значения постоянных полей

TYPE_HLS

@Native public static final int TYPE_HLS
Любое из цветовых пространств семейства HLS.
См. также:
  • Значения постоянных полей

TYPE_CMYK

@Native public static final int TYPE_CMYK
Любое из цветовых пространств семейства CMYK.
См. также:
  • Значения постоянных полей

TYPE_CMY

@Native public static final int TYPE_CMY
Любое из цветовых пространств семейства CMY.
См. также:
  • Значения постоянных полей

TYPE_2CLR

@Native public static final int TYPE_2CLR
Общие цветовые пространства с 2 компонентами.
См. также:
  • Значения постоянных полей

TYPE_3CLR

@Native public static final int TYPE_3CLR
Общие цветовые пространства с 3 компонентами.
См. также:
  • Значения постоянных полей

TYPE_4CLR

@Native public static final int TYPE_4CLR
Общие цветовые пространства с 4 компонентами.
См. также:
  • Значения постоянных полей

TYPE_5CLR

@Native public static final int TYPE_5CLR
Общие цветовые пространства с 5 компонентами.
См. также:
  • Значения постоянных полей

TYPE_6CLR

@Native public static final int TYPE_6CLR
Общие цветовые пространства с 6 компонентами.
См. также:
  • Значения постоянных полей

TYPE_7CLR

@Native public static final int TYPE_7CLR
Общие цветовые пространства с 7 компонентами.
См. также:
  • Значения постоянных полей

TYPE_8CLR

@Native public static final int TYPE_8CLR
Общие цветовые пространства с 8 компонентами.
См. также:
  • Значения постоянных полей

TYPE_9CLR

@Native public static final int TYPE_9CLR
Общие цветовые пространства с 9 компонентами.
См. также:
  • Значения постоянных полей

TYPE_ACLR

@Native public static final int TYPE_ACLR
Общие цветовые пространства с 10 компонентами.
См. также:
  • Значения постоянных полей

TYPE_BCLR

@Native public static final int TYPE_BCLR
Общие цветовые пространства с 11 компонентами.
См. также:
  • Значения постоянных полей

TYPE_CCLR

@Native public static final int TYPE_CCLR
Общие цветовые пространства с 12 компонентами.
См. также:
  • Значения постоянных полей

TYPE_DCLR

@Native public static final int TYPE_DCLR
Общие цветовые пространства с 13 компонентами.
См. также:
  • Значения постоянных полей

TYPE_ECLR

@Native public static final int TYPE_ECLR
Общие цветовые пространства с 14 компонентами.
См. также:
  • Значения постоянных полей

TYPE_FCLR

@Native public static final int TYPE_FCLR
Общие цветовые пространства с 15 компонентами.
См. также:
  • Значения постоянных полей

CS_sRGB

@Native public static final int CS_sRGB
Встроенное цветовое пространство sRGB, определённое по адресу http://www.w3.org/pub/WWW/Graphics/Color/sRGB.html.
См. также:
  • Значения постоянных полей

CS_LINEAR_RGB

@Native public static final int CS_LINEAR_RGB
Встроенное линейное цветовое пространство RGB. Это пространство основано на тех же основных цветах RGB, что и CS_sRGB, но имеет линейную кривую воспроизведения тона.
См. также:
  • Значения постоянных полей

CS_CIEXYZ

@Native public static final int CS_CIEXYZ
Встроенное цветовое пространство преобразования CIEXYZ, определённое выше.
См. также:
  • Значения постоянных полей

CS_PYCC

@Native public static final int CS_PYCC
Встроенное цветовое пространство преобразования Photo YCC.
См. также:
  • Значения постоянных полей

CS_GRAY

@Native public static final int CS_GRAY
Встроенное линейное цветовое пространство серого.
См. также:
  • Значения константных полей

Подробное описание конструкторов

ColorSpace

protected ColorSpace(int type, int numComponents)
Конструирует объект ColorSpace с заданным типом цветового пространства и количеством компонентов.
Параметры:
type - одна из констант типа ColorSpace
numComponents - количество компонентов в цветовом пространстве

Подробное описание методов

getInstance

public static ColorSpace getInstance(int cspace)
Возвращает ColorSpace, представляющий одно из предопределённых цветовых пространств.
Параметры:
cspace - конкретное цветовое пространство, определённое одной из предопределённых констант класса (например, CS_sRGB, CS_LINEAR_RGB, CS_CIEXYZ, CS_GRAY, или CS_PYCC)
Возвращает:
запрашиваемый объект ColorSpace

isCS_sRGB

public boolean isCS_sRGB()
Возвращает true, если ColorSpace является CS_sRGB.
Возвращает:
true если это цветовое пространство CS_sRGB, false если нет

toRGB

public abstract float[] toRGB(float[] colorvalue)
Преобразует значение цвета, предполагая, что оно находится в данном ColorSpace, в значение в стандартном цветовом пространстве CS_sRGB.

Этот метод преобразует значения цвета с использованием алгоритмов, предназначенных для наилучшего соответствия восприятия между входным и выходным цветами. Для выполнения колориметрического преобразования значений цвета необходимо сначала использовать метод toCIEXYZ этого цветового пространства для преобразования из входного цветового пространства в цветовое пространство CS_CIEXYZ, а затем использовать метод fromCIEXYZ цветового пространства CS_sRGB для преобразования из CS_CIEXYZ в выходное цветовое пространство. Дополнительную информацию см. в toCIEXYZ и fromCIEXYZ.

Параметры:
colorvalue - массив float с длиной не менее количества компонентов в данном ColorSpace
Возвращает:
массив float длиной 3
Исключения:
ArrayIndexOutOfBoundsException - если длина массива не составляет не менее количества компонентов в этом ColorSpace

fromRGB

public abstract float[] fromRGB(float[] rgbvalue)
Преобразует значение цвета, предполагая, что оно находится в стандартном цветовом пространстве CS_sRGB, в это ColorSpace.

Этот метод преобразует значения цвета с использованием алгоритмов, предназначенных для наилучшего соответствия восприятия между входным и выходным цветами. Для выполнения колориметрического преобразования значений цвета необходимо сначала использовать метод toCIEXYZ цветового пространства CS_sRGB для преобразования из входного цветового пространства в цветовое пространство CS_CIEXYZ, а затем использовать метод fromCIEXYZ этого цветового пространства для преобразования из CS_CIEXYZ в выходное цветовое пространство. Дополнительную информацию см. в toCIEXYZ и fromCIEXYZ.

Параметры:
rgbvalue - массив float с длиной не менее 3
Возвращает:
массив float с длиной, равной количеству компонентов в данном ColorSpace
Исключения:
ArrayIndexOutOfBoundsException - если длина массива не составляет не менее 3

toCIEXYZ

public abstract float[] toCIEXYZ(float[] colorvalue)
Преобразует значение цвета, предполагая, что оно находится в этом ColorSpace, в цветовое пространство преобразования CS_CIEXYZ.

Этот метод преобразует значения цвета с использованием относительной колориметрии, как определено стандартом Международного консорциума по цвету. Это означает, что значения XYZ, возвращаемые этим методом, представлены относительно белой точки D50 цветового пространства CS_CIEXYZ. Эта форма представления полезна в двухэтапном процессе преобразования цветов, в котором цвета преобразуются из входного цветового пространства в CS_CIEXYZ и затем в выходное цветовое пространство. Это представление не является тем же, что и значения XYZ, которые были бы измерены с помощью колориметра с данным значением цвета. Для вычисления значений XYZ, которые были бы измерены с использованием текущих рекомендуемых практик CIE, необходимо выполнить дополнительное преобразование. Дополнительную информацию см. в методе toCIEXYZ ICC_ColorSpace

Параметры:
colorvalue - массив float с длиной не менее количества компонентов в этом ColorSpace
Возвращает:
массив float длиной 3
Исключения:
ArrayIndexOutOfBoundsException - если длина массива не составляет не менее количества компонентов в этом ColorSpace.

fromCIEXYZ

public abstract float[] fromCIEXYZ(float[] colorvalue)
Преобразует значение цвета, предполагая, что оно находится в цветовом пространстве преобразования CS_CIEXYZ, в это ColorSpace.

Этот метод преобразует значения цвета с использованием относительной колориметрии, как определено стандартом Международного консорциума по цвету. Это означает, что значения XYZ в качестве аргументов этого метода представлены относительно белой точки D50 цветового пространства CS_CIEXYZ. Это представление полезно в двухэтапном процессе преобразования цветов, в котором цвета преобразуются из входного цветового пространства в CS_CIEXYZ и затем в выходное цветовое пространство. Значения цвета, возвращаемые этим методом, не являются теми, которые бы дали значение XYZ, переданное методу при измерении с помощью колориметра. Если у вас есть значения XYZ, соответствующие измерениям, выполненным в соответствии с текущими рекомендациями CIE, они должны быть преобразованы в значения, относительные к D50, прежде чем быть переданы в этот метод. Дополнительную информацию см. в методе fromCIEXYZ ICC_ColorSpace

Параметры:
colorvalue - массив float с длиной не менее 3
Возвращает:
массив float с длиной, равной количеству компонентов в этом ColorSpace
Исключения:
ArrayIndexOutOfBoundsException - если длина массива не составляет не менее 3

getType

public int getType()
Возвращает тип цветового пространства данного ColorSpace (например, TYPE_RGB, TYPE_XYZ, ...). Тип определяет количество компонентов цветового пространства и интерпретацию, например, TYPE_RGB идентифицирует цветовое пространство с тремя компонентами — красный, зелёный и синий. Он не определяет конкретные цветовые характеристики пространства, например, цветовые характеристики основных цветов.
Возвращает:
константу типа, представляющую тип этого ColorSpace

getNumComponents

public int getNumComponents()
Возвращает количество компонентов этого ColorSpace.
Возвращает:
количество компонентов в этом ColorSpace

getName

public String getName(int component)
Возвращает имя компонента, заданного индексом компонента.
Параметры:
component - индекс компонента
Возвращает:
имя компонента по указанному индексу
Исключения:
IllegalArgumentException - если component меньше 0 или больше numComponents - 1

getMinValue

public float getMinValue(int component)
Возвращает минимальное нормализованное значение компонента цвета для указанного компонента. Реализация по умолчанию в этом абстрактном классе возвращает 0.0 для всех компонентов. Подклассы должны переопределять этот метод при необходимости.
Параметры:
component - индекс компонента
Возвращает:
минимальное нормализованное значение компонента
Исключения:
IllegalArgumentException - если компонент меньше 0 или больше numComponents - 1
С:
1.4

getMaxValue

public float getMaxValue(int component)
Возвращает максимальное нормализованное значение компонента цвета для указанного компонента. Реализация по умолчанию в этом абстрактном классе возвращает 1.0 для всех компонентов. Подклассы должны переопределять этот метод при необходимости.
Параметры:
component - индекс компонента
Возвращает:
максимальное нормализованное значение компонента
Исключения:
IllegalArgumentException - если компонент меньше 0 или больше numComponents - 1
С:
1.4

© 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/color/ColorSpace.html

Spec-Zone.ru

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