ColorToRGB
Версия от 10:19, 28 августа 2019; Tatikoma (обсуждение | вклад)
Описание
Раскладывает указанный цвет на отдельные цветовые каналы (RGB) и записывает результат в отдельную строку указанного массива. Возвращает признак успешности работы в строковую переменную.
Синтаксис
Привязка к окну: нет
Работа со свернутым окном: нет
set <$признак> colorToRGB (<#цвет> <%результатRGB[#номер_строки]>)
где:
$признак - строковая переменная-признак успешности срабатывания ("-1" - ошибка, "" - правильно)
#цвет - числовое значение цвета, который нужно разложить на каналы RGB
%результатRGB - массив для записи значения отдельных каналов
#номер_строки (необязательно) - номер строки массива, в которую будем записывать результат. Если не указать, то результат запишется в 1-ю строку массива
Примеры
log open // открываем окно лога для вывода результатов log clear // очистим окно лога set #color 12642802 // записать десятичное значение цвета в переменную #color set $s colorToRGB (#color %arr) // получить значения каналов в 1-ю строку массива %arr, а признак успешности в $s if $s = -1 // если ошибка log error // ... то пишем в лог сообщение "error" else // иначе (нет ошибки) set delimiter ' ' // устанавливаем разделитель " " (пробел) между элементами массива при выводе в лог log Каналы RGB: %arr[1] // выводим в лог значения отдельных каналов в одну строку log Красный: %arr[1 1] // выводим значение для каждого канала в отдельных строках log Зелёный: %arr[1 2] log Синий: %arr[1 3] // теперь для примера используем отдельные функции получения значений каждого RGB-канала set #r colorToRed(#color) log Отдельно красный: #r set #g colorToGreen(#color) log Отдельно зелёный: #g set #b colorToBlue(#color) log Отдельно синий: #b end_if end_script
set $s colorToRGB (12642802 %arr[2]) // получить значения каналов во вторую строку массива %arr, а признак успешности в $s
Смотрите также
История развития
2.32 Добавил функции разложения цвета:
'colorToRed (color)' - возвращает значение красного канала указанного цвета 'colorToGreen (color)' - возвращает значение зеленого канала 'colorToBlue (color)' - возвращает значение синего канала 'colorToRGB (color %arr)' - разлаживает цвет на составляющие в первую строку указанного массива 'colorToRGB (color %arr[x])' - то-же, но в конкретную строку // %arr [ 1 1 ] R, %arr [ 1 2 ] G, %arr [ 1 3 ] B