![]() |
СЛОЖНЫЕ ПРОСТЫЕ ЦВЕТА
Кто подскажет как решить внешне крайне тривиальную задачу? Есть цвет (к примеру, 0xFF0000 - красный, то бишь). Как получить второй цвет, который будет более темным или более светлым по отношению к первому? (в примере: темно-красным или светло-красным). Что только не делал, какие только эксперименты не:o проводил, не помогает и все тут.
|
|
ff0101 будет светлее, fe0000 будет темнее.
ЗЫ пойди почитай про шестнадцатеричную систему исчисления сам, а? |
Пока с уважаемым Heilong-ом пытались менять offset-ы (ColorTransform). Практика показывает, что цвета "уплывают". Примеры с использованием класс Color прошу не предлагать. Устарело это дело все-таки.
|
Вернул тему назад в AS.
|
teka, ColorTransform не так уж и сильно отличается от Color. Поэтому и переписать пример c Color на ColorTransform -- недолго.
|
На самом деле я перегнул. Безусловно какой класс используешь - не суть важно. Да и вообще во флеше это делаешь или в какой иной проге - разницы нет. :-)
|
Пеннеровский tint очень кстати будет глянуть.
|
Цитата:
|
Или скиннеровский ColorMatrix неплох :)
ну если есть время и желание ковырятся в формулах по переводу туда-сюда цвета, то да... |
Цитата:
Если нужно взять цвет из безопасной поллитры, то можно перегнать результат. |
Ив, мы о разных вещах говорим. Ты про манипуляции с цветом клипа, а я с самим цветом.
И вопрос на сколько я понял, был задан именно про сам цвет. |
Код:
class col {Код:
var color1=0xEEEEEE;кроме того этот класс может менять насыщенность цвета, ну и конвертировать туда и обратно |
Кто автор кода? Судя по имени класса, название изменено.
|
Цитата:
|
алгоритм конвертирования в HSB не помню где взял - немного поменял и добавил функцию modRGB
|
Можно переименовать в "class artcraft.col" или "class cz.artcraft.color.utils"
|
Отлично! Осталось привести его в порядок, чтобы не стыдно было использовать...
|
а что там не так?
|
Неверное имя класса. Имя с прописной буквы должно начинаться. Отсутствие типизации (местами есть), не объявлен тип метода. И это явно еще не все, это то, что можно увидеть на первый взгляд, без детального разбора.
|
Нету комментариев в стиле JavaDoc, если не знаешь что такое то пишутся они так
Код:
/** |
Оригинал?
Код:
/***************************************************** |
нет - этот круче
|
Не знаю, насколько нужны точные вычисления цвета, но просто затемнить или высветлить - по моему не так уж и сложно.
Когда то решал подобную задачу но в пределах RGB - без классов и прочего (извините, если не модно)) Код:
function deRGB(colour:Number):Object {Конечно, коды уже приведенные здесь, безусловно круче и техничнее )) Но помоему решают несколько другие задачи. |
нет они решают именно те задачи, но и еще и дрегие заодно, например с этим классом совсем нетрудно "сдвинуть цвет по спектру" (поменять hue) или поменять насыщенность
|
RGB to LAB
Цитата:
|
Кривое-то решение я нашел на скорую руку. Задаю вторым цветом черный либо белый (в зависимости от оттенка второго цвета, который мне нужен) и выношу его "начало" подальше от заливаемой области. Получается эдакая имитация :-)
|
Цитата:
|
| Часовой пояс GMT +4, время: 16:33. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.