Formel, um Gradientenfarben auf der Grundlage der relativen Unterschiede zwischen zwei Farben aufzunehmen

StackOverflow https://stackoverflow.com//questions/11690613

  •  12-12-2019
  •  | 
  •  

Frage

Wenn ich einen beliebigen Farbwert gegeben habe, wie würde ich den relativen Unterschied zwischen diesem Wert und den Gradientenoffset 0 (unten) verwenden, um die Farben der verbleibenden Offsets so einzustellen, dass sie die gleiche relative Beziehung mit der neuen Farbe haben, wie sie mit der neuen Farbe habendie ursprüngliche Farbe?

generasacodicetagpre.

Meine Herausforderung besteht darin, die mathematische Formel herauszufinden, um die relativen Einstellungen durchzuführen.Sobald ich diese Logik habe, sollte es relativ einfach sein, es in der jeweiligen Technologie zu implementieren, die ich verwende (c # /. Net / wpf).

Danke!

War es hilfreich?

Lösung

Lösung:

Mit dem Hue-Sättigungs-Luminanz-Modell (HSL), das ich bestimmt habe:

  • Die relative Farbtondifferenz zwischen der Basisfarbe des Vorlaggradienten und jeder Vorlage stoppt Farbe.
  • Die absolute Sättigung und Helligkeitswerte jeder Vorlage stoppt Farbe.

Um die neuen Gradientenanschläge zu erzeugen, nahm ich die benutzerdefinierte Farbe und verschoben seinen Farbton durch den oben genannten Farbton-Offset, der oben berechnet wurde, und setzte dann seine Sättigungs- und Leuchtstoffwerte auf die oben bestimmten Werte ein.

http://en.wikipedia.org/wiki/hsl_and_hsv bietet eine RGB-HSLFormel. http://blogs.msdn.com/B/cjacks/archive/2006/04/12/575476.aspx beschreibt, wie die HSL-zu-RGB-Konvertierung führt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top