This template computes the HSV saturation value in [0..1] from a color specified in the sRGB color space. The returned value is rounded to three decimals (which preserves the precision of RGB colors whose components are specified in the standard range [0..255]).

Syntax
{{RGBtoHSV.S|r|g|b}}
The range of the three parameters is [0..255] ; they can be any numeric expressions.
{{subst:RGBtoHSV.S|r|g|b|subst=subst:}}
To substitute the template invocation by the compute value when saving an article Wiki source.
Algorithm used
C = max(r, g, b) - min(r, g, b)
V = max(r, g, b)
if V = 0 then
S = 0;
else
S = C / V
return S round 3;
Examples
  • "{{RGBtoHSV.S|0|0|0}}" returns "0".
  • "{{RGBtoHSV.S|255|255|255}}" returns "0".
  • "{{RGBtoHSV.S|255|0|0}}" returns "1".
  • "{{RGBtoHSV.S|255|1|0}}" returns "1".
  • "{{RGBtoHSV.S|255|127.5|0}}" returns "1".
  • "{{RGBtoHSV.S|255|255|0}}" returns "1".
  • "{{RGBtoHSV.S|127.5|255|0}}" returns "1".
  • "{{RGBtoHSV.S|0|255|0}}" returns "1".
  • "{{RGBtoHSV.S|0|255|127.5}}" returns "1".
  • "{{RGBtoHSV.S|0|255|255}}" returns "1".
  • "{{RGBtoHSV.S|0|127.5|255}}" returns "1".
  • "{{RGBtoHSV.S|0|0|255}}" returns "1".
  • "{{RGBtoHSV.S|127.5|0|255}}" returns "1".
  • "{{RGBtoHSV.S|255|0|255}}" returns "1".
  • "{{RGBtoHSV.S|255|0|127.5}}" returns "1".
  • "{{RGBtoHSV.S|255|0|1}}" returns "1".
  • example for "sandybrown" = "#F4A460" = "rgb(244, 164, 96)" = "hsl(27.6, 0.871, 0.667)"
"{{RGBtoHSV.S|244|164|96}}" returns "0.607".
  • same example using subst
"{{subst:RGBtoHSV.S|244|164|96|subst=subst:}}" returns "0.607".


See also