Я хочу написать функцию в рубине, которая задает число от 1 до 500, выдаст шестизначный шестицветный код, который становится более темным для более высоких чисел. Это не так сложно, но я не уверен, с чего начать. Как я могу это реализовать?Линейно увеличивая алгоритм цветовой темноты
редактировать
Hue кажется более надежным способом пойти. Я хотел бы дать контрольный цвет, например, оттенок зеленого, а затем затемнить или осветлить его на основе входного номера.
вход: 10
выход: код цвета (в RGB или HSV), который представляет собой легкий оттенок опорного цвета
ввод: 400
выход: код цвета (в RGB или HSV), который является довольно темный оттенок эталонного цвета
редактировать 2
Единственная причина, мне нужно использовать от 1 до 500, потому что это вход я должен работать. Все в порядке, если некоторые цифры, близкие друг к другу, соответствуют одному и тому же цвету.
Не знаете, что именно вы спрашиваете. Можете ли вы привести пример ввода и вывода образца? –
Доступно только 256 уровней яркости для шкалы серого. например 0x000000, 0x010101 ... 0xfefefe, oxffffff, поэтому 500 кажется немного бессмысленным. Если вы хотите изменить оттенок, например. перейти от светло-голубого к темно-красному, есть еще несколько шагов, но вам нужно будет уточнить вашу проблему немного больше. – ScottS
Хотите ли вы сделать контрольный цвет постепенно темнее, или вы будете довольны прогрессией от белого до черного? – peejaybee