![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 10.02.2021
Сообщений: 685
|
![]()
Вопрос больше касательно формул расчёта, чем самого программирования.
Задача такая: сменить цвет объекта на картинке. Допустим он был фиолетовым, а надо сделать его жёлтым. Но учитывая то что рисунок же не монотоннотонный, а используются разные оттенки - светлее-темнее, надо чтобы это сохранялось и в новом изображнении. Просто сменить красный на синий - понятное дело - легко Код:
Допустим начальный цвет 64 85 100, а нужно сменить на 128 62 34. Но при этом чтобы все оттенки которые где-то возле базового цвета - потянуть тоже |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 16.05.2024
Сообщений: 194
|
![]()
Первый способ, наверное, перевести базовый цвет в HSV или HSL, а в них близкие оттенки легко делаются. Потом обратно в RGB.
https://en.wikipedia.org/wiki/HSL_an...re_programming https://stackoverflow.com/questions/...0-255-for-both https://stackoverflow.com/questions/...ange-algorithm Говорят что более прогрессивные цветовые пространства L*, u*, v* и L*, a*, b*, потому что они при преобразовании учитывают как человек видит цвета. https://en.wikipedia.org/wiki/CIELUV https://en.wikipedia.org/wiki/CIELAB_color_space |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Клик по картинке - смена фона | Форсировка | JavaScript, Ajax | 6 | 16.01.2011 14:01 |
Смена цвета | Krasi | HTML и CSS | 7 | 10.08.2010 19:00 |
Смена цвета. | Stranger333 | Общие вопросы Delphi | 6 | 07.10.2009 21:14 |
Смена цвета в ListCtrl | assasin | Общие вопросы C/C++ | 0 | 22.08.2009 01:13 |