¿Cómo mezclar colores "naturalmente" con C #?
Tengo que mezclar algunos colores de forma natural. Esto significa
blue + yellow = green
blue + red = purple
Y así. Obtuve los colores como valores RGB. Cuando trato de mezclarlos obtuve los resultados "RGB" correctos como
green + red = yellow
yellow + blue = white
Pero no los resultados correctos de "pintura húmeda natural". ¿Alguna buena idea de cómo mezclar RGB de forma natural?
Sería genial si alguien supiera una solución dentro delMicrosoft.Xna.Framework.Graphics
espacio de nombres pero una solución genérica también ayudaría :)
@Jay Bazuzi:
Publique una muestra de código que muestre lo que está tratando de hacer.
Claro, esta es mi función para mezclar los dos colores RGB.
public Color colorMixer(Color c1, Color c2)
{
int _r = Math.Min((c1.R + c2.R),255);
int _g = Math.Min((c1.G + c2.G),255);
int _b = Math.Min((c1.B + c2.B),255);
return new Color(Convert.ToByte(_r),
Convert.ToByte(_g),
Convert.ToByte(_b));
}
Lo que he leído hasta ahora en este hilo es muy prometedor: convertiré C1 y C2 a Lab *, mézclalos: conviértelos de nuevo a RGB y devuelve ese color.