Если компонент оттенка моего цвета HSL указан в градусах, как я могу правильно интерполировать между двумя оттенками? Использование (h1 + h2) / 2 не дает желаемых результатов во всех случаях. Вот два примера, которые поясняют, почему:
Позволять:
красный = 0 °
желтый = 60 °
синий = 240 °
(красный + желтый) / 2 = 30 ° (оранжевый)
(желтый + синий) / 2 = 150 ° (сине-зеленый)
(красный + синий) / 2 = 120 ° (зеленый)
Как видите, усреднение красного и синего дает зеленый цвет вместо пурпурного / пурпурного! Однако, если мы позволим:
красный = 360 °
желтый = 60 °
синий = 240 °
(красный + желтый) / 2 = 210 ° (сине-зеленый)
(желтый + синий) / 2 = 150 ° (сине-зеленый)
(красный + синий) / 2 = 300 ° (пурпурный)
Теперь красный и синий дают ожидаемый цвет, а красный и желтый дают сине-зеленый цвет! Как я могу интерполировать компонент оттенка цвета, чтобы результат соответствовал тому, что можно было бы ожидать от смешивания фактической краски? Спасибо!