Поиск:

Ответ в темуСоздание новой темы Создание опроса
> алгоритм рисования палитры цветов 
:(
    Опции темы
alex77
Дата 5.10.2006, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


жывтоне чочо
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 29.9.2006
Где: Екатеринбург

Репутация: нет
Всего: нет



Здравствуйте.

Интересует алгоритм построения такой палитры (в прикрепленном файле). Может кто-нибудь знает, или делал?
Вариант с предварительным созданием списка цветов не подходит.

p.s. делаю форму для выбора цвета, наподобие той, что в FCKEditor, только с другими цветами. Делать буду на PHP.


Это сообщение отредактировал(а) alex77 - 6.10.2006, 10:21

Присоединённый файл ( Кол-во скачиваний: 36 )
Присоединённый файл  palitra.png 7,26 Kb
PM MAIL ICQ   Вверх
maxim1000
Дата 5.10.2006, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 33
Всего: 110



касательно средней горизонтальной линии
скорее всего, там идёт такое:
делается три "зубца" красного, зелёного и синего, сдвигаются друг относительно друга и накладываются
т.е. 3 участка одинаковой длины:
1. красный с 255 равномерно падает до 0, зелёный с 0 равномерно возрастает до 255, синий - 0
2. зелёный падает до 0, синий возрастает до 255
3. синий падает до 0, красный возрастает до 255

что происходит по вертикали не уверен, но можно попробовать такое:
в нижней половине каждая компонента умножается на коэффициент, который в ценртре равен 1, в самом низу - 0, а между ними изменяется линейно
в верхней половине так:
берём цвет из симметричной ему нижней точки и дополняем серым неиспользованный диапазон
т.е к каждой компоненте добавляем 255*(1-коэффициент)


--------------------
qqq
PM WWW   Вверх
alex77
Дата 5.10.2006, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


жывтоне чочо
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 29.9.2006
Где: Екатеринбург

Репутация: нет
Всего: нет



Начал делать со средней гориз. линии, получилось такое (см. прикрепл. файл).
Либо я не так понял, (хотя вроде бы всё просто), либо немножко не тот алгоритм.


Присоединённый файл ( Кол-во скачиваний: 27 )
Присоединённый файл  p2.png 2,80 Kb
PM MAIL ICQ   Вверх
maxim1000
Дата 5.10.2006, 11:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев

Репутация: 33
Всего: 110



а... наверное, надо ещё попробовать нормализацию
т.е. умножить все компоненты на 255/max(r,g,b)


--------------------
qqq
PM WWW   Вверх
SectoR
Дата 5.10.2006, 19:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 5.10.2005

Репутация: нет
Всего: нет



Интересня "фишка" smile , может кто поделится исходником?! 
PM   Вверх
alex77
Дата 6.10.2006, 07:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


жывтоне чочо
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 29.9.2006
Где: Екатеринбург

Репутация: нет
Всего: нет



Цитата(maxim1000 @  5.10.2006,  11:21 Найти цитируемый пост)
а... наверное, надо ещё попробовать нормализацию
т.е. умножить все компоненты на 255/max(r,g,b) 


Попробовал, получается практически то-же самое. smile 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0675 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.