这与这个问题相关但不一样(点击进入)。然而,链接的问题需要在这个问题之前解决,或者至少要理解问题。这可以被认为是另一个的相反。
这个问题是,给定 RGB 中的 n 个颜色,例如
Color1 as RGB (255, 128, 128)
Color2 as RGB (128, 128, 128)
Color3 as RGB (128, 0, 128)
我们知道给定的颜色 C,找到每种颜色的分数权重,以便当这些颜色混合时,给定颜色的分数权重会导致已知颜色 C。分数权重在上面的链接问题中定义,它是一个值介于 0.0 和 1.0 之间,其中总权重等于 1.0。例如,Color1 可以是 0.2,Color2 可以是 0.2,Color3 可以是 0.6。
插值在 RGB 颜色空间中是线性的。
通常颜色的数量不会超过 5 种,通常是 2 或 3 或 4 种颜色。
请注意,很有可能无法将这些颜色混合以获得颜色 C,例如,如果我们有两种非常红色的颜色并且我想要颜色 C(即绿色),则无法混合两种红色以获得绿色. 所以在这种情况下,没有解决办法。
此外,在某些情况下,可能有多种方法可以混合颜色以制作颜色 C。