hallo an alle, Ich habe habe hier ei kleine s Lichtspiel. Es besteht aus drei Leds (R,G,B). In meinem Programm hab ich nun mehrere Farben im RGB Farbraum definiert. Nun möchte ich zwischen zwei Farben faden. Doch nur wie bringe ich da einen sauberen Übergang zusammen? Ich hoffe ihr könnt mir helfen. lg Robert
Gast
#1088929
Wenn t aus [0..1], (R0,G0,B0) und (R1,G1,B1) die beiden Farben sind: th = 1-t R = R0*th + R1*t G = G0*th + G1*t B = B0*th + B1*t oder für z.B. t aus [0..16] (16 Stufen, für viele Effekte ausreichend): th = 16-t R = (R0*th + R1*t) >> 4 G = (G0*th + G1*t) >> 4 B = (B0*th + B1*t) >> 4 Für Übergang über 3 Farben: t0 = (16-t)*(16-t) t1 = 2* t *(16-t) t2 = t * t R = (R0*t0 + R1*t1 + R2*t2) >> 4 R = (G0*t0 + G1*t1 + G2*t2) >> 4 R = (B0*t0 + B1*t1 + B2*t2) >> 4 Gruss Jörg
Ich hab es nun anders gelöst. Ich hab mir die Farben in de HSV Farbraum umgerechnet. nun fade ich zwischen zwei H Werten und rechne das zurück in RGB Werte für die LEDs. lg Robert
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.