Где вы нашли значения 10/20/30 для ваших темно-зеленых / зеленых / светло-зеленых цветов.
Вам понадобится какая-то таблица корреляции между назначенными значениями палитры и действительными числовыми представлениями цветов ... например,
Color Pal-Code RGB HSL
Red 0 255,0,0 0,240,120
Dark Green 10 0,128,0 80,240,60
Green 20 0,255,0 80,240,120
Light Green 30 128,255,128 80,240,180
Из этой корреляционной таблицы вы можете взять любой пользовательский «код палитры», найти пару закрытых пар кодов палитры из таблицы выше и найти в ней диапазон наилучшего соответствия. например если кто-то введет 25
(давайте для удобства воспользуемся HSL), тогда формула будет ...
Green 20 0,255,0 80,240,120
Light Green 30 128,255,128 80,240,180
25 находится на полпути между обоими кодами, поэтому
Palette Code Hue Sat Luminence
20 80 240 120
30 80 240 180
-------------------------------------------------
25 80 240 150
Если бы они выбрали 6
, вам нужно найти 0,6 из диапазона цветов между каждым значением.
Red 0 255,0,0 0,240,120
Dark Green 10 0,128,0 80,240,60
Palette Code Hue Sat Luminence
0 0 240 120
10 80 240 60
-------------------------------------------------
6 48 240 84
0->80 = +80 * 60% = +48 So 0+48 = 48
240->240 = 0 * 60% = 0 So 240+0 = 240
120->60 = -60 * 60% = -36 So 120-36 = 84