Класс, представляющий цвет(Color).
Цвет может быть инициализирован любым из следующих способов:
//пустой конструктор - по умолчанию будет белым
const color1 = new v3d.Color();
//Шестнадцатеричный цвет (рекомендуется)
const color2 = new v3d.Color(0xff0000);
//RGB-строка
const color3 = new v3d.Color("rgb(255, 0, 0)");
const color4 = new v3d.Color("rgb(100%, 0%, 0%)");
//Имя цвета X11 - поддерживаются все 140 имен цветов.
//Обратите внимание на отсутствие CamelCase в названии
const color5 = new v3d.Color('skyblue');
//Строка HSL
const color6 = new v3d.Color("hsl(0, 100%, 50%)");
//Разделение значений RGB между 0 и 1
const color7 = new v3d.Color(1, 0, 0);
r — (необязательно) Если определены аргументы g и b, красная составляющая цвета.
Если они не определены, это может быть hexadecimal triplet (рекомендуется), строка в стиле CSS или другой экземпляр Color.
g — (необязательно) Если он определен, зеленый компонент цвета.
b — (необязательно) Если он определен, синий компонент цвета.
Обратите внимание, что стандартным методом указания цвета в Verge3D является hexadecimal triplet, и этот метод используется во всей остальной документации.
Если все аргументы определены, то r — это красный компонент, g — зеленый компонент и b — синий компонент цвета.
Когда определен только r:
Значение красного канала между 0 и 1. По умолчанию 1.
Значение зеленого канала от 0 до 1. По умолчанию 1.
Значение синего канала от 0 до 1. По умолчанию 1.
Добавляет значения RGB из color к значениям RGB этого цвета.
Устанавливает значения RGB этого цвета в сумму значений RGB color1 и color2.
Добавляет s к значениям RGB этого цвета.
Возвращает новый Цвет с теми же значениями r, g и b, что и данный.
Копирует параметры r, g и b из color в этот цвет.
gammaFactor — (необязательно). По умолчанию 2.0.
Преобразует данный цвет из гамма-пространства в линейное пространство, взяв r, g и b в степени gammaFactor.
gammaFactor — (необязательно). По умолчанию 2.0.
Преобразует данный цвет из линейного пространства в гамма-пространство, взяв r, g и b в степени 1 / gammaFactor.
Преобразует данный цвет из линейного пространства в пространство sRGB.
expFactor — Общая экспонента RGBE.
Преобразует данный цвет из формата RGBE в линейный.
Преобразует данный цвет из пространства sRGB в линейное пространство.
color — Цвет для копирования.
gammaFactor — (необязательно). По умолчанию 2.0.
Копирует заданный цвет в этот цвет, а затем преобразует этот цвет из гамма-пространства в линейное пространство, взяв r, g и b в степени gammaFactor.
color — Цвет для копирования.
gammaFactor — (необязательно). По умолчанию 2.0.
Копирует заданный цвет в этот цвет, а затем преобразует этот цвет из линейного пространства в гамма-пространство, взяв r, g и b в степени 1 / gammaFactor.
color — Цвет для копирования.
Копирует заданный цвет в этот цвет, а затем преобразует этот цвет из линейного пространства в пространство sRGB.
color — Цвет для копирования.
expFactor — Общая экспонента RGBE.
Копирует заданный цвет в этот цвет, а затем преобразует этот цвет из формата RGBE в линейный.
color — Цвет для копирования.
Копирует заданный цвет в этот цвет, а затем преобразует этот цвет из пространства sRGB в линейное пространство.
Сравнивает RGB-значения color со значениями данного объекта. Возвращает true, если они одинаковы, false в противном случае.
array - Array поплавков в виде [r, g, b].
offset — Необязательное смещение в массиве.
Устанавливает компоненты этого цвета на основе массива, отформатированного как [r, g, b].
attribute — атрибут источника.
index — индекс в атрибуте.
Устанавливает компоненты этого цвета из атрибута BufferAttribute.
Устанавливает компоненты этого цвета из атрибута BufferAttribute.
Возвращает шестнадцатеричное значение этого цвета в виде строки (например, 'FFFFFF')..
target — результат будет скопирован в этот объект. Добавляет ключи h, s и l к объекту (если они еще не присутствуют).
Преобразует значения r, g и b этого Color в формат HSL и возвращает объект вида:
{ h: 0, s: 0, l: 0 }
Возвращает значение этого цвета в виде строки стиля CSS. Пример: 'rgb(255,0,0)' формы:
color — цвет для сходства.
alpha — коэффициент интерполяции в замкнутом интервале [0, 1].
Линейно интерполирует значения RGB этого цвета к значениям RGB переданного аргумента. Аргумент alpha можно представить как соотношение между двумя цветами, где 0.0 - данный цвет, а 1.0 - первый аргумент.
color — цвет для сходства.
alpha — коэффициент интерполяции в замкнутом интервале [0, 1].
Линейно интерполирует значения HSL этого цвета к значениям HSL переданного аргумента. Он отличается от классического .lerp тем, что не интерполирует прямо от одного цвета к другому, а проходит через все оттенки между этими двумя цветами. Аргумент alpha можно представить как соотношение между двумя цветами, где 0.0 - этот цвет, а 1.0 - первый аргумент.
Умножает значения RGB этого цвета на значения RGB данного color.
Умножает значения RGB этого цвета на s.
Добавляет заданные значения h, s и l к значениям этого цвета. Внутренне это преобразует значения r, g и b цвета в HSL, добавляет h, s и l, а затем преобразует цвет обратно в RGB.
value — Значение для установки этого цвета.
Смотрите Конструктор выше для получения полной информации о том, чем может быть value. Делегирует .copy, .setStyle или .setHex в зависимости от типа ввода.
hex — hexadecimal triplet формат.
Устанавливает этот цвет из шестнадцатеричного значения.
h — значение оттенка в диапазоне от 0,0 до 1,0
s — значение насыщенности от 0,0 до 1,0
l — значение освещенности в диапазоне от 0,0 до 1,0
Устанавливает цвет из значений HSL.
r — значение красного канала между 0,0 и 1,0.
g — значение зеленого канала между 0,0 и 1,0.
b — значение синего канала между 0,0 и 1,0.
Устанавливает данный цвет из значений RGB.
scalar — значение между 0.0 и 1.0.
Устанавливает все три цветовых компонента в значение scalar.
style — цвет как строка CSS-стиля.
Устанавливает этот цвет из строки CSS-стиля. Например,
"rgb(250, 0,0)",
"rgb(100%, 0%, 0%)",
"hsl(0, 100%, 50%)",
"#ff0000",
"#f00", or
"red" (или любого имени цвета X11 [link:https://en.wikipedia.org/wiki/X11_color_names#Color_name_chart]
- поддерживаются все 140 названий цветов).
Полупрозрачные цвета, такие как "rgba(255, 0, 0, 0, 0.5)" и "hsla(0, 100%, 50%, 0.5)" также принимаются, но координата альфа-канала будет отброшена.
Обратите внимание, что для названий цветов X11 несколько слов, таких как Dark Orange, превращаются в строку 'darkorange' (все строчные буквы).
style — название цвета (from X11 названий цветов).
Устанавливает этот цвет из имени цвета. Быстрее, чем метод .setStyle, если вам не нужны другие форматы CSS-стилей.
Для удобства список имен представлен в Color.NAMES в виде хэша: Color.NAMES.aliceblue // returns 0xF0F8FF
Вычитает компоненты RGB данного цвета из компонентов RGB этого цвета. Если в результате получается отрицательный компонент, он устанавливается равным нулю.
array — Необязательный массив для хранения цвета.
offset — Необязательное смещение в массиве.
Возвращает массив вида [r, g, b].
О том как получить исходный код этого модуля читайте тут.