我試圖找到一種算法,將基於%數量混合顏色。我正在進行一個選舉項目,並希望能夠以不同顏色爲每個候選人分配一個種族,然後根據候選人獲得的投票數量創建一個「結果」顏色。顏色混合超過2種顏色
這個問題:
Is there an algorithm for color mixing that works like mixing real colors?
接近我問這個問題 - 但可能我需要能夠3或4或5種顏色混合在一起。我明白這最終是一個令人難以置信的複雜問題 - 但我很好奇在兩種以上顏色上做這個建議的方法。所以,我可能有:
紅(40%),綠(10%),藍色(50%)
OR
紅(40%),黃色(5%),藍( 10%),橙色(45%)
再一次,我知道最後一個例子可能會產生某種灰色或棕色或黑色 - 這很好。我的問題是,我甚至沒有試圖解決這個問題的算法。
編輯: 那麼 - 發佈此消息後,我意識到我真正想要實現基本上是油漆顏色混合。換句話說,我不希望LIGHT顏色混合,我想模擬PAINT混合會發生什麼 - 因爲這是我保持「期待」的「可預測」結果 - 並且遇到了麻煩。
我發現這個鏈接:http://painting.about.com/library/blpaint/blcolormixingpalette1.htm
這非常密切的行爲是什麼,我要完成的 - 並暴露在我最初的想法一小「瑕疵」。所演示的是,即使我可以使用這種算法混合多達6種顏色,實際的「數據」總是被分解爲3種基色。
即便如此 - 這非常接近。
非常感謝所有對本主題做出貢獻的人 - 所有這些建議對探索這個令人驚訝的複雜問題/領域都非常有幫助。
一個簡單的方法可以是簡單地通過他們的重量百分比乘以每個顏色的成分。例如,40%的紅色,60%的綠色將由0.6 0.4紅色成分和綠色成分乘以,再加入作爲正常形成。只要您的百分比合計爲100%或更少,這就保證不會裁剪任何組件。 –
可能的重複[如何與C#自然混合顏色?](http://stackoverflow.com/questions/398224/how-to-mix-colors-naturally-with-c) –