RGB::fromHSV

Преобразуйте HSV-цвета в RGB

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

RGB::fromHSV([h, s, v, <a>])

Описание

RGB::fromHSV(HSVcolor) преобразует цветные координаты в HSV к соответствующему цвету RGB.

RGB::fromHSV(HSVcolor) инверсия RGB::toHSV.

Примеры

Пример 1

С RGB::fromHSV утилита, все раскрашивает графику MuPAD®, может быть задан легко, когда HSV окрашивает. Например, “фиолетовый” цвет дан HSV-значениями [290, 0.4, 0.6], тогда как “темно-зеленый” дан HSV-спецификацией [120, 1, 0.4]. Следовательно, полупрозрачная фиолетовая сфера, пересеченная непрозрачной темно-зеленой плоскостью, может быть задана можно следующим образом:

plot(plot::Sphere(1, [0, 0, 0], 
                  Color = RGB::fromHSV([290, 0.4, 0.6]).[0.5]),
     plot::Surface([x, y, 0.5], x = -1 .. 1, y = -1 .. 1, 
                   Mesh = [2, 2],
                   Color = RGB::fromHSV([120, 1, 0.4]))
):

Пример 2

Существуют многочисленные способы отобразить комплексные функции сложного аргумента. Например, смотрите plot::Conformal. Один из них должен использовать цветовую схему, которая интерпретирует комплексную плоскость как раздел через HSV-цветовое пространство в фиксированном значении, например, 1. Чтобы построить эту схему в MuPAD, используйте plot::Density обеспечение следующей функции управления цветом:

f_color := (x, y, fz, a) ->
           RGB::fromHSV([180/float(PI)*arg(fz), abs(fz), 1]):

Тождественное отображение таким образом показывают можно следующим образом:

plot(plot::Density((x, y) -> x + I*y, x = -1..1, y = -1..1,
                   XMesh = 50, YMesh = 50,
                   FillColorFunction = f_color))

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

plot(plot::Density((x, y) -> (x + I*y)^2, x = -1..1, y = -1..1,
                   XMesh = 50, YMesh = 50,
                   FillColorFunction = f_color))

Чтобы построить комплексную синусоидальную функцию, выберите прямоугольник большего размера, потому что синус слишком похож на идентичность в маленьких окружениях источника, чтобы представлять интерес:

plot(plot::Density((x, y) -> sin(x + I*y), x = -2..2, y = -2..2,
                   XMesh = 50, YMesh = 50,
                   FillColorFunction = f_color))

явно прерывисто вдоль отрицательной вещественной оси:

plot(plot::Density((x, y) -> (x + I*y)^(4/3), 
                   x = -1..1, y = -1..1,
                   XMesh = 50, YMesh = 50,
                   FillColorFunction = f_color))

Параметры

a

Полупрозрачность (альфа) значение: численное значение между 0 и 1.

h

“Оттенок” в HSV-спецификации: численное значение между 0 и 360

s

“Насыщение” в HSV-спецификации: численное значение между 0 и 1

v

“Значение” в HSV-спецификации: численное значение между 0 и 1

Возвращаемые значения

Список с тремя или четырьмя значениями с плавающей точкой, в зависимости от ли a дан во входе.

Смотрите также

Функции MuPAD