Einzelnen Beitrag anzeigen

Popov
(Gast)

n/a Beiträge
 
#22

AW: Delphi verändern

  Alt 12. Mai 2015, 20:11
@Popov Ihr Quelltext ist (da ich noch Delphi Anfänger bin ) echt kompliziert...
Deswegen habe ich dir auch eine fertige ColorMix Funktion gepostet.

Das "Problem" mit der TColor Farbe ist nicht, dass die Farbe Rot den Wert 255 hat und die Farbe Blau den Wert 16711680 und man mit einer For-Schleife einfach nur den Wert von dem einen zum anderen erhöhen muss, um einen Wechsel von rot zu blau zu bekommen. Das klappt nicht. Bei der Farbe TColor, die aus 4 Bytes besteht, wobei was 1 Byte eine spezielle Bedeutung hat, stehen die anderen drei Bytes für die drei RGB-Farben rot, grün und blau. Ein Byte für rot, ein für Grün, usw. Ein Byte kann zwischen 0 und 255 256 Zustände annehmen. Somit ist 0 0% rot und 255 100% rot. Dazwischen gibt es 256 Abstufungen. Kombiniert man alle drei Farben mit 256 Abstufungen, ergibt das 256 * 256 * 256 = 16.777.216 mögliche Farben.

Um nun von einer Farbe zu anderen Zwischenschritte zu berechnen, muss man die TColor Farbe zuerst in die einzelnen RGB Farben zerlegen, die Zwischenschritte für jede einzelne Farbe berechnen, und dann alle drei wieder zu einer Zahl zusammenfügen. Der TColor Zahl.

Und das passiert in der ColorMix Funktion.
  Mit Zitat antworten Zitat