Ну, я воспользовался поиском, чтобы найти ответ на свой вопрос, но он не получил результат, который я искал, поэтому я попробую задать его здесь:
Если я знаю формулу для смешивания цветов:
resultColorRGB = [round(firstColorR * alpha + secondColorR * (1 - alpha))], [round(firstColorG * alpha + secondColorG * (1 - alpha))], [round(firstColorB * alpha + secondColorB * (1 - alpha))]
, где alpha ∈ [0..1] .
Тогда как мне найти второй цвет, если я знаю первый цвет и цвет результата?
Например: round (35 * alpha + 255 * (1 - alpha)) = 204, round (alpha * 15 + 0 * (1 - alpha)) = 3 round (альфа * 0 + 153 * (1 - альфа)) = 118, альфа = 0,23
Я не могу использовать метод для решения системы линейных уравнений по двум причинам (насколько я понимаю): альфа не является целым числом, а результат вычисляется округлением.
Но я уверен, что существует некоторый способ оценки приблизительного расчета без использования итерации.