![]() |
Farbe "smooth" ändern
Moin !
Sorry für den vielleicht etwas blöden Titel, aber mir fällt kein besserer ein :-) Also folgendes Problem ... Wir haben da ein paar Kurven in einem TChart die wir ein und ausschalten können. Beim Einschalten der Kurve soll der Farbwert der Kurve für ein paar MilliSekunden angehoben werden und dann wieder retour. Damit kann man besser erkennen welche Kurve man nun ausgewählt hat. Die aktuelle Farbe ist bekannt. Aber wie kann ich jetzt die Farbe mit einer zur Farbe passenden Farbänderung versehen? Also wie kann ich z.B. die Sättigung oder Helligkeit anpassen? Und vor allem müsste das bei allen Farben funktionieren also auch bei Schwarz z.B. Also Ziel sollte sowas in der Art sein: Rot - etwas dunkleres Rot, noch dunkler, wieder eins zurück und dann wieder das normale Rot. So in etwa. Ich habe nur keine Idee wie ich sowas umsetzen könnte. :gruebel: Jemand ne Idee? |
Re: Farbe "smooth" ändern
Hallo Dominik,
wenn du keinen kompletten Farblauf (damit es mit jeder Farbe funktioniert) mit Stützpunkten (damit es schneller geht) implementieren willst, wäre vielleicht ein zeitlich begrenztes Anheben der Linienstärke ein möglicher Ansatz. Grüße vom marabu |
Re: Farbe "smooth" ändern
Moin !
Die Linienstärke hammer eh schon dabei. Wäre nur cool wenn auch die Farbe etwas angehoben werden könnte. |
Re: Farbe "smooth" ändern
Einen Farblauf kannst du so realisieren:
Delphi-Quellcode:
Oder du wechselst einfach mehrmals in Folge zwischen der Farbe und ihrer Komplementärfarbe.
type
Int3 = 0..7; function NextColor(color: TColor; step: Int3): TColor; var quad: TRGBQuad absolute color; begin with quad do begin rgbBlue := rgbBlue + 1 shl step; rgbGreen := rgbGreen + 1 shl step; rgbRed := rgbRed + 1 shl step; end; Result := color; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz