Создать следующий цвет в спектре - PullRequest
2 голосов
/ 11 апреля 2011

все. Как бы я генерировал следующий цвет в цветовом спектре? Например, функция, которая принимает значение красного, зеленого и синего для ввода и вывода. Я мог бы ввести сплошной красный (RGB 255, 0, 0), и он вывел бы оранжево-красный.

РЕДАКТИРОВАТЬ: дополнительная справочная информация: я предполагаю, что значения H, S и V имеют числовые диапазоны от 0 до 255. Программа на C, которую я пишу, увеличивает значение оттенка, если оно меньше 256, сбрасывает его до 0, если это не так, преобразует HSV в RGB, отображает цвет на экране и делает цикл. Я пробовал пару функций HSV-to-RGB, но они не работают.

Ответы [ 2 ]

1 голос
/ 11 апреля 2011

Вам нужно работать со значениями RGB? Если вы этого не сделаете, то используйте HSL, как предложил @sukru, в противном случае попробуйте преобразовать его в HSL, следуя инструкциям здесь, , затем увеличьте значение H на 1/12 и преобразуйте в RGB.

1 голос
/ 11 апреля 2011

Вместо домена RGB для цветов следует работать со значениями HSV.Таким образом, вы можете изменить значение H для перемещения по спектру.

...