|
Public Methods |
| | Color () |
| | Color (const Color &c) |
| | Color (const float r, const float g, const float b, const float a=1.0) |
| | Color (str_ptr colstr) |
| virtual | ~Color () |
| void | set (const float r, const float g, const float b, const float a=1.0) |
| void | set (str_ptr colstr) |
| | can call this with a CONFIGval, for example
|
| float | r () const |
| float | g () const |
| float | b () const |
| float | a () const |
| void | setHLS (const float h, const float l, const float s, const float a=1.0) |
| | set the color in HLS mode: "h" (hue 0.0-360.0), "l" (lightness 0.0-1.0), and "s" (saturation 0.0-1.0)
|
| void | getHLS (float &h, float &l, float &s) |
| | get color in HLS mode: "h" (hue 0.0-360.0), "l" (lightness 0.0-1.0), and "s" (saturation 0.0-1.0)
|
| bool | setLAB (const float L, const float a, const float b, const float alpha=1.0) |
| | Set the color in LAB mode--if LAB is invalid, closest rgb color is set and false returned; else, true returned.
|
| void | getLAB (float &L, float &a, float &b) |
| | get the color in LAB mode: "L" (lightness), "a" (green to red), and "b" (blue to yellow)
|
| void | getXYZ (float &X, float &Y, float &Z) |
| | get the color in CIEXYZ mode
|
| void | LABtoXYZ (const float L, const float A, const float B, float &X, float &Y, float &Z) |
| | convert from LAB mode to XYZ mode
|
| float * | array () |
| bool | operator== (const Color &c) const |
| float | operator[] (const int index) const |
| float & | operator[] (const int index) |
Static Public Methods |
| float | getLABChroma (const float L, const float a, const float b) |
| | get the chroma (0.0-100.0), assumes valid LAB values
|
| float | getLABSaturation (const float L, const float a, const float b) |
| | get the saturation (0.0-100.0), assumes valid LAB values
|
| float | getLABHue (const float L, const float a, const float b) |
| | get the hue angle (0.0-360.0), assumes valid LAB values -- note: does not correspond to 'H' in HLS
|
| void | setLABLightnessChromaHue (const float L, float &a, float &b, const float chroma, const float hue) |
| | the following four functions set LAB values, to actually set the RGB value, setLAB() needs to be called
|
| void | setLABChromaSaturationHue (float &L, float &a, float &b, const float chroma, const float saturation, const float hue) |
| void | setLABLightnessSaturationHue (const float L, float &a, float &b, const float saturation, const float hue) |
| void | setLABSaturationAB (float &L, const float a, const float b, const float saturation) |
| float | getLABColorDifference (const float L1, const float a1, const float b1, const float L2, const float a2, const float b2) |
| | returns the a value of difference in color
|
| bool | findMaxL_LAB (float &L, const float a, const float b, const float minL=MIN_L, const float maxL=MAX_L, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| | the following functions find the max/min for a particular value when the other two values are constant
|
| bool | findMinL_LAB (float &L, const float a, const float b, const float minL=MIN_L, const float maxL=MAX_L, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMaxA_LAB (const float L, float &a, const float b, const float minA=MIN_A, const float maxA=MAX_A, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMinA_LAB (const float L, float &a, const float b, const float minA=MIN_A, const float maxA=MAX_A, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMaxB_LAB (const float L, const float a, float &b, const float minB=MIN_B, const float maxB=MAX_B, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMinB_LAB (const float L, const float a, float &b, const float minB=MIN_B, const float maxB=MAX_B, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMaxL_LA_LAB (float &L, float &a, const float b, const float minL=MIN_L, const float maxL=MAX_L, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMinL_LA_LAB (float &L, float &a, const float b, const float minL=MIN_L, const float maxL=MAX_L, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMaxA_LA_LAB (float &L, float &a, const float b, const float minA=MIN_A, const float maxA=MAX_A, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMinA_LA_LAB (float &L, float &a, const float b, const float minA=MIN_A, const float maxA=MAX_A, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMaxL_LB_LAB (float &L, const float a, float &b, const float minL=MIN_L, const float maxL=MAX_L, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMinL_LB_LAB (float &L, const float a, float &b, const float minL=MIN_L, const float maxL=MAX_L, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMaxB_LB_LAB (float &L, const float a, float &b, const float minB=MIN_B, const float maxB=MAX_B, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMinB_LB_LAB (float &L, const float a, float &b, const float minB=MIN_B, const float maxB=MAX_B, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMaxA_AB_LAB (const float L, float &a, float &b, const float minA=MIN_A, const float maxA=MAX_A, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMinA_AB_LAB (const float L, float &a, float &b, const float minA=MIN_A, const float maxA=MAX_A, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMaxB_AB_LAB (const float L, float &a, float &b, const float minB=MIN_B, const float maxB=MAX_B, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
| bool | findMinB_AB_LAB (const float L, float &a, float &b, const float minB=MIN_B, const float maxB=MAX_B, const float interval=INITIAL_INTERVAL, const bool recursiveSuccess=false) |
Static Public Attributes |
| const Color | black |
| const Color | white |
| const Color | grey |
| const Color | red |
| const Color | green |
| const Color | yellow |
| const Color | blue |
| const Color | magenta |
| const Color | cyan |
| const Color | pink |
| const Color | brown |
| const Color | tan |
| const Color | orange |
| const Color | firebrick |
| const double | RGBtoXYZarray [3][3] |
| const double | XYZtoRGBarray [3][3] |
Static Protected Methods |
| double | value (double n1, double n2, double hue) |
| | helps the HLS conversion
|
| double | Labf (const double ratio) |
| | These help the LAB conversion.
|
| double | Labfinv (const double ratio) |
Protected Attributes |
| float | _col [4] |