Ne, gerade rausgefunden das kann so nicht funcen. Ich muss wahrscheinlich für beide, StartColor und EndColor, ne differenz zu 255 machen oder zur Pixelzahl oder so

Weil, wenn StartColor > als EndColor oder auch umgekehrt, irgendwann ja der RGBWert >255 bzw <0 wird zur Pixelzahl mh....

Blöde Logik
DAs wird ja richtig kompliziert
Edit: Leider noch nicht ganz? Aber fast, der Anfangswert stimmt nicht ganz?
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| if fillSize > 130 then begin RsValue:= GetRValue(FStartColor); GsValue:= GetGValue(FStartColor); BsValue:= GetBValue(FStartColor); ReValue:= GetRValue(FEndColor); GeValue:= GetGValue(FEndColor); BsValue:= GetBValue(FEndColor); for I:=130 to FillSize do begin Pen.Color:= RGB(Round(RsValue +(ReValue-RsValue)/ (W-130)*(I-130)), Round(GsValue +(GeValue-GsValue)/ (W-130)*(I-130)), Round(BsValue +(BeValue-BsValue)/ (W-130)*(I-130)));
moveto(I, 0); LineTo(I, W); end; end; |
Gruss ALf
Wenn jeder alles kann oder wüsste und keiner hätt' ne Frage mehr, omg, währe dieses Forum leer!