Gast
#2193952
Hallo, Wie kann ich aus einem RGB Wert (0 bis 16777216). Die einzelnen Farbanteile rausrechnen? Also 65536 ist z.B. 256, 0, 0. Wie kann ich das umkehren? Danke
|
Anzeige
|
RGB Bestandteile berechnen
Gast
#2193952
Hallo, Wie kann ich aus einem RGB Wert (0 bis 16777216). Die einzelnen Farbanteile rausrechnen? Also 65536 ist z.B. 256, 0, 0. Wie kann ich das umkehren? Danke R = farbwert And &HFF& G = farbwert \ &H100& And &HFF& B = farbwert \ &H10000 And &HFF& PEte schrieb: > Wie kann ich aus einem RGB Wert (0 bis 16777216). Die einzelnen > Farbanteile rausrechnen? Also 65536 ist z.B. 256, 0, 0. Wie kann ich das > umkehren? Falls Du 0 bis 16777215 meinst und falls Du mit 65536 eigentlich 1, 0, 0 meinst: r = (x >> 16) & 0xff g = (x >> 8) & 0xff b = (x >> 0) & 0xff Viele Grüße, Simon
Gast
#2193978
Martin Schwaikert schrieb: > R = farbwert And &HFF& > G = farbwert \ &H100& And &HFF& > B = farbwert \ &H10000 And &HFF& In C:
So bekomme ich die abstrusesten Werte. Was habe ich falsch "übersetzt"? > So bekomme ich die abstrusesten Werte. Was habe ich falsch "übersetzt"?
Sieh Dir mal den Unterschied zwischen den Operatoren & und && an.
Gast
#2194241
>r = (x >> 16) & 0xff >g = (x >> 8) & 0xff >b = (x >> 0) & 0xff x sollte ein uint32_t sein. Wenn r,g,b ein uint8_t ist, kannst du dir das & sparen. Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|