Вычисление смешанного цвета в RGB

Я хочу иметь возможность взять два вектора RGB-256 и вычислить результат их смешения. Также я хочу дать каждому вектору разный вес. Я экспериментировал с этим, используя цветовую пластину Word, и увидел, что, хотя некоторые цвета действительно смешиваются в соответствии со средневзвешенным значением:

0,5 * красный (255,0,0) + 0,5 * желтый (255,255,0) ) = оранжевый (255,127,0)

другие нет:

0,5 * желтый (255,255,0) + 0,5 * синий (0,0, 255) = серый (127,127,127) , а не зеленый (0,255,0)

Есть ли алгоритм для точного расчета для всех цветов, или я вынужден делать это с помощью таблицы поиска?

33
задан Cody Gray 23 November 2010 в 13:07
поделиться