csColor Class Reference (Crystal Space 2.0 Public API Reference)

| ## Public API Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions
csColor Class Reference

A class used to represent a color in RGB space. More...

`#include <csutil/cscolor.h>`

Inheritance diagram for csColor:

List of all members.

## Public Member Functions
void | Add (float r, float g, float b)
| Add given R,G,B components to color.
void | Clamp (float r, float g, float b)
| Clamp color to given R,G,B values.
void | ClampDown ()
| Make sure color components are not negative.
| csColor ()
| Initialize a color object (contents undefined)
| csColor (float r, float g, float b)
| Initialize a color object with given R,G,B components.
| csColor (float v)
| Initialize a color object with same content in R,G,B components.
| csColor (const csColor &c)
| Initialize a color object with an existing color.
bool | IsBlack () const
| Check if color is all black (red green and blue all 0)
bool | IsBlack (float threshold) const
| Check if color is all black (red green and blue all below threshold)
float | Luminance () const
| Return luminance of pixel (assuming sRGB color space)
bool | operator!= (const csColor &c) const
| Compare inequality of two colors.
csColor | operator* (const float f)
| Multiply this color by a scalar, return result.
csColor & | operator*= (float f)
| Multiply this color by a scalar value.
csColor & | operator*= (const csColor &c)
| Multiply another color with this one.
csColor & | operator+= (const csColor &c)
| Add another color to this one.
csColor & | operator-= (const csColor &c)
| Subtract another color to this one.
csColor & | operator= (const csColor &c)
| Assign one color object to another.
bool | operator== (const csColor &c) const
| Compare equality of two colors.
float | operator[] (size_t n) const
| Returns n-th component of the color.
float & | operator[] (size_t n)
| Returns n-th component of the color.
void | Set (float r, float g, float b)
| Set color to given R,G,B components.
void | Set (const csColor &c)
| Set color to given color.
void | Subtract (float r, float g, float b)
| Subtract given R,G,B components from color.

## Detailed Description

A class used to represent a color in RGB space.

This class is similar to csRGBpixel and csRGBcolor except that it uses floating-point values to store R,G,B values.

Definition at line 33 of file cscolor.h.

## Constructor & Destructor Documentation

csColor::csColor | ( |  | ) | `[inline]`

Initialize a color object (contents undefined)

Definition at line 57 of file cscolor.h.

csColor::csColor | ( | float | r,
|  | float | g,
|  | float | b
| ) |  | `[inline]`

Initialize a color object with given R,G,B components.

Definition at line 59 of file cscolor.h.

csColor::csColor | ( | float | v | ) | `[inline]`

Initialize a color object with same content in R,G,B components.

Definition at line 62 of file cscolor.h.

csColor::csColor | ( | const csColor & | c | ) | `[inline]`

Initialize a color object with an existing color.

Definition at line 65 of file cscolor.h.

## Member Function Documentation

void csColor::Add | ( | float | r,
|  | float | g,
|  | float | b
| ) |  | `[inline]`

Add given R,G,B components to color.

Definition at line 128 of file cscolor.h.

void csColor::Clamp | ( | float | r,
|  | float | g,
|  | float | b
| ) |  | `[inline]`

Clamp color to given R,G,B values.

Definition at line 74 of file cscolor.h.

void csColor::ClampDown | ( |  | ) | `[inline]`

Make sure color components are not negative.

Definition at line 81 of file cscolor.h.

bool csColor::IsBlack | ( |  | ) | const`[inline]`

Check if color is all black (red green and blue all 0)

Definition at line 88 of file cscolor.h.

bool csColor::IsBlack | ( | float | threshold | ) | const`[inline]`

Check if color is all black (red green and blue all below threshold)

Definition at line 93 of file cscolor.h.

float csColor::Luminance | ( |  | ) | const`[inline]`

Return luminance of pixel (assuming sRGB color space)

Definition at line 134 of file cscolor.h.

bool csColor::operator!= | ( | const csColor & | c | ) | const`[inline]`

Compare inequality of two colors.

Definition at line 125 of file cscolor.h.

csColor csColor::operator* | ( | const float | f | ) | `[inline]`

Multiply this color by a scalar, return result.

Definition at line 113 of file cscolor.h.

csColor& csColor::operator*= | ( | float | f | ) | `[inline]`

Multiply this color by a scalar value.

Reimplemented in csColor4.

Definition at line 101 of file cscolor.h.

csColor& csColor::operator*= | ( | const csColor & | c | ) | `[inline]`

Multiply another color with this one.

Definition at line 110 of file cscolor.h.

csColor& csColor::operator+= | ( | const csColor & | c | ) | `[inline]`

Add another color to this one.

Reimplemented in csColor4.

Definition at line 104 of file cscolor.h.

csColor& csColor::operator-= | ( | const csColor & | c | ) | `[inline]`

Subtract another color to this one.

Reimplemented in csColor4.

Definition at line 107 of file cscolor.h.

csColor& csColor::operator= | ( | const csColor & | c | ) | `[inline]`

Assign one color object to another.

Reimplemented in csColor4.

Definition at line 98 of file cscolor.h.

bool csColor::operator== | ( | const csColor & | c | ) | const`[inline]`

Compare equality of two colors.

Definition at line 122 of file cscolor.h.

float csColor::operator[] | ( | size_t | n | ) | const`[inline]`

Returns n-th component of the color.

Reimplemented in csColor4.

Definition at line 141 of file cscolor.h.

float& csColor::operator[] | ( | size_t | n | ) | `[inline]`

Returns n-th component of the color.

Reimplemented in csColor4.

Definition at line 148 of file cscolor.h.

void csColor::Set | ( | float | r,
|  | float | g,
|  | float | b
| ) |  | `[inline]`

Set color to given R,G,B components.

Reimplemented in csColor4.

Definition at line 68 of file cscolor.h.

void csColor::Set | ( | const csColor & | c | ) | `[inline]`

Set color to given color.

Reimplemented in csColor4.

Definition at line 71 of file cscolor.h.

void csColor::Subtract | ( | float | r,
|  | float | g,
|  | float | b
| ) |  | `[inline]`

Subtract given R,G,B components from color.

Definition at line 131 of file cscolor.h.

## Member Data Documentation

float csColor::blue

Blue (0..1)

Definition at line 47 of file cscolor.h.

float csColor::green

Green (0..1)

Definition at line 45 of file cscolor.h.

float csColor::m[3]

All components.

Definition at line 51 of file cscolor.h.

float csColor::red

Red (0..1)

Definition at line 43 of file cscolor.h.

The documentation for this class was generated from the following file:

- csutil/cscolor.h