Für die Umrechnung von hsv-Werten in rgb-Angaben existiert eine Bibliotheksprozedur rgbvec = hsv2rgb(hsvvec. Die Ein- und Ausgabeparameter sind beide Vektoren mit je drei Komponenten, entsprechend der Buchstabenfolge. Jede Komponente kann Werte zwischen 0 und 1 annehmen (Achtung! andere Systeme verwenden Werte zwischen 0 und 100 und wieder andere zwischen 0 und 255.)
Um das Prinzip der Umrechnung zwischen hsv und rgb klarzustellen
wurde die Bibliotheksfunktion nochmals programmiert, natürlich mit
anderem Namen (rgbfromhsv() statt hsv2rgb() ).
Zuerst erfolgt die Auswertung des Farbwinkels dies ergibt
die RGB-Werte zu voller Farbsättigung und voller Helligkeit.
Den drei Grundfarben Rot,
Grün und Blau sind die Winkel 0
, 120
, und
240
zugeordnet. Jede dieser Farben hat den Wert 100% und
die anderen Null bei dem entsprechenden Farbwinkel
Bei 60
liegt Gelb, mit 100% Rot und gleichzeitig 100% Grün.
Zwischen 0 und 60
bleibt Rot ständig auf dem Maximum
und Grün steigt gleichmäßig an. Zwischen 60
und 120
nimmt dann Rot gleichmäßig von 100% auf 0 ab. Zwischen 120
und
240
ergibt sich das gleiche Spiel mit Grün und Blau. Die Variation
verläuft von 100% Grün 0% Blau bei 120
, im Übergang
zu 100%
Grün und 100% Blau bei 180
(Cyan) und
weiter zu 0% Grün, 100% Blau
bei 240
.
Farbe | Winkel | Rot | Grün | Blau |
Rot | 0
![]() |
100% | 0% | 0% |
Übergang | R-G | bleibt | zunehmend | 0% |
Gelb | 60
![]() |
100% | 100% | 0% |
Übergang | G-Y | abnehmend | bleibt | 0% |
Grün | 120
![]() |
0% | 100% | 0% |
Cyan | 180
![]() |
0% | 100% | 100% |
Blau | 240
![]() |
0% | 0% | 100% |
Magenta | 300
![]() |
100% | 0% | 100% |
Um die verlangte Farbsättigung zu erreichen, wird zu dieser voll gesättigten Farbe ein ``Weiß-Sockel'' addiert, der zu gleichen Teilen (sat*100%) aus Rot, Grün und Blau besteht. Damit keine Farbe mehr als 100% erreicht, müssen die Werte für die gesättigte Farbe vor der Addition der zwei Teile mit dem Faktor (1-sat) multipliziert werden.
Als dritte Komponente wird die Helligkeit einbezogen, diese ist einfach eine Multiplikation aller Komponenten mit dem Helligkeitsfaktor.
Ein paar Beispiele können dieses Schema zusätzlich erläutern:
Farbe | Winkel | Sättigung | Helligkeit | Rot | Grün | Blau |
Rot | 0
![]() |
100% | 100% | 100% | 0% | 0% |
Blassgelb | 60
![]() |
50% | 100% | 100% | 100% | 50% |
Nachtblau | 240
![]() |
100% | 50% | 0% | 0% 50% |
Bei verkleinerter Sättigung gibt es einen Anteil der R,G und B gemeinsam ist, der Weiß-Sockel. Bei verkleinerter Helligkeit erreicht keiner der Anteile 100%.