C++のeasyx特辑1:用 HSLtoRGB、HSVtoRGB 转换其他色彩模型到 RGB 颜色

今天的内容有些难懂,敬请谅解。

一、HSLtoRGB

该函数用于转换 HSL 颜色为 RGB 颜色。

COLORREF HSLtoRGB(

         float H,

         float S,

         float L

);

1.参数

H

原 HSL 颜色模型的 Hue(色相) 分量,0 <= H < 360。

S

原 HSL 颜色模型的 Saturation(饱和度) 分量,0 <= S <= 1。

L

原 HSL 颜色模型的 Lightness(亮度) 分量,0 <= L <= 1。

2.返回值

对应的 RGB 颜色。

3.其他信息

HSL 又称 HLS。

HSL 的颜色模型如图所示:

 

H 是英文 Hue 的首字母,表示色相,即组成可见光谱的单色。红色在 0 度,绿色在 120 度,蓝色在 240 度,以此方向过渡。

S 是英文 Saturation 的首字母,表示饱和度,等于 0 时为灰色。在最大饱和度 1 时,具有最纯的色光。

L 是英文 Lightness 的首字母,表示亮度,等于 0 时为黑色,等于 0.5 时是色彩最鲜明的状态,等于 1 时为白色。

二、HSVtoRGB

该函数用于转换 HSV 颜色为 RGB 颜色。

COLORREF HSVtoRGB(
	float H,
	float S,
	float V
);

1.参数

H

原 HSV 颜色模型的 Hue(色相) 分量,0 <= H < 360。

S

原 HSV 颜色模型的 Saturation(饱和度) 分量,0 <= S <= 1。

V

原 HSV 颜色模型的 Value(明度) 分量,0 <= V <= 1。

2.返回值

对应的 RGB 颜色。

3.其他信息

HSV 又称 HSB。

HSV 的颜色模型如图所示:

 

H 是英文 Hue 的首字母,表示色相,即组成可见光谱的单色。红色在 0 度,绿色在 120 度,蓝色在 240 度,以此方向过渡。

S 是英文 Saturation 的首字母,表示饱和度,等于 0 时为灰色。在最大饱和度 1 时,每一色相具有最纯的色光。

V 是英文 Value 的首字母,表示明度,等于 0 时为黑色,在最大明度 1 时,是色彩最鲜明的状态。

おすすめ

転載: blog.csdn.net/Wanghs0716/article/details/122268797