hsv2rgb

Converts HSV colors to RGB

Calling Sequence

[r,g,b] = hsv2rgb(h,s,v)
rgb = hsv2rgb(h,s,v)
[r,g,b] = hsv2rgb(hsv)
rgb = hsv2rgb(hsv)

Arguments

:h a vector of size n. The “hue” values. : :s a vector of size n. The “saturation” values. : :v a vector of size n. The “value” values : :hsv a n x 3 matrix. Each row contains a [hue saturation value]

tripple.

: :r a column vector of size n. The associated “red” values. : :g a column vector of size n. The associated “green” values. : :b a column vector of size n. The associated “blue” values. : :rgb a n x 3 matrix. Each row contains a [red green blue] tripple. :

Description

The function hsv2rgb converts colormaps between the RGB and HSV color spaces. As hue varies from 0 to 1.0, the corresponding colors vary from red through yellow, green, cyan, blue, magenta, and back to red, so that there are actually red values both at 0 and 1.0. As saturation varies from 0 to 1.0, the corresponding colors (hues) vary from unsaturated (shades of gray) to fully saturated (no white component). As value, or brightness, varies from 0 to 1.0, the corresponding colors become increasingly brighter.

Sample

Examples

t=[0:0.3:2*%pi]'; z=`sin`_(t)*`cos`_(t');
`plot3d1`_(t,t,z)
f=`gcf`_();f.pixmap='on';
for h=0:0.1:1
  hsv=[h*`ones`_(32,1) `linspace`_(0,1,32)' 0.7*`ones`_(32,1)];
  f.color_map=hsv2rgb(hsv);
  `show_pixmap`_()
  `xpause`_(10000)
end
for v=0:0.1:1
  hsv=[`ones`_(32,1) `linspace`_(0,1,32)' v*`ones`_(32,1)];
  f.color_map=hsv2rgb(hsv);
  `show_pixmap`_()
  `xpause`_(10000)
end

Table Of Contents

This Page