enum Model { Rgb, Hsv, Hsi, Cmy, Xyz, Lab, Luv, Yiq, Yuv };
The color Model enumeration defines a predefined set of color formats that can be used to construct a Color object. Along with the common Rgb, Hsv, and Cmy models, the color class also supports a range of less common formats, which are convenient when performing special purpose color and image processing. Each color model has a corresponding Get/Set[model] access method as well.
Members |
Description |
Rgb | |
Hsv |
Creates a color using the hue, saturation, and value system, which is more suited to the human perception of color. HSV makes it easy to convert to the opposite color, strengthen/weaken the color, or lighten/darken the color. HSV is passed as three integer values ranging (0-359) for hue and (0-255) for saturation and value, or three floating point values each between 0.0 and 1.0. The HSV color can also be accessed using GetHSV and SetHSV. |
Hsi |
Creates a color using the hue, saturation, and intensity system, which is similar to the HSV method but calculated using a slightly different algorithm. HSI is passed as three integer values ranging (0-359) for hue and (0-255) for saturation and intensity, or three floating point values each between 0.0 and 1.0. The HSI color can also be accessed using GetHSI and SetHSI. |
Cmy |
Creates a color using the cyan, magenta, and yellow color space, which is commonly used when dealing with printed graphic content. CMY is passed as three 8-bit components, cyan, magenta, and yellow, respectively, each ranging from 0-255. The CMY color can also be accessed using GetCMY and SetCMY, along with the alternative SetCMYK / GetCMYK, which accesses the black component as well. |
Xyz |
Creates a color using the CIE X, Y, Z system, which is obtained using a 3x3 matrix made up of special set of three linear-light components that conform to the CIE color-matching functions. The CIE XYZ color can also be accessed using GetXYZ and SetXYZ. |
Lab |
Creates a color using the CIE L*a*b* system, which is based on CIE XYZ and is an attempt to linearize the perceptibility of color differences. The CIE L*a*b* color can also be accessed using GetLab and SetLab. |
Luv |
Creates a color using the CIE L*u*v* system, which is directly on CIE XYZ and is another attempt to linearize the perceptibility of color differences. The CIE L*a*b* color can also be accessed using GetLuv and SetLuv. |
Yiq |
Creates a color using the YIQ system, which is the color primary system adopted by National Television System Committee (NTSC) for color TV broadcasting. YIQ is mainly used in North American TV. The YIQ color can also be accessed using GetYIQ and SetYIQ. |
Yuv |
Creates a color using the YUV system, which is the color primary system used in European color TV broadcasting. The YUV color can also be accessed using GetYUV and SetYUV. |
Render_Color.h