## Public API Reference

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

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# csColor Class Reference

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

`#include <csutil/cscolor.h>`

Inheritance diagram for csColor:

[legend]
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 (const csColor &c)
| Initialize a color object with an existing color.
| csColor (float r, float g, float b)
| Initialize a color object with given R,G,B components.
| csColor ()
| Initialize a color object (contents undefined).
csColor | operator * (const float f)
| Multiply this color by a scalar, return result.
csColor & | operator *= (const csColor &c)
| Multiply another color with this one.
csColor & | operator *= (float f)
| Multiply this color by a scalar value.
bool | operator!= (const csColor &c) const
| Compare inequality of two colors.
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.
void | Set (const csColor &c)
| Set color to given color.
void | Set (float r, float g, float b)
| Set color to given R,G,B components.
void | Subtract (float r, float g, float b)
| Subtract given R,G,B components from color.

## Public Attributes

float | blue
| Blue (0..1).
float | green
| Green (0..1).
float | red
| Red (0..1).

## 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 44 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 46 of file cscolor.h. References blue, green, and red.

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

| Initialize a color object with an existing color. Definition at line 49 of file cscolor.h. References blue, green, and red.

## Member Function Documentation

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

| Add given R,G,B components to color. Definition at line 102 of file cscolor.h. References blue, green, and red.

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

| Clamp color to given R,G,B values. Definition at line 58 of file cscolor.h. References blue, green, and red.

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

| Make sure color components are not negative. Definition at line 65 of file cscolor.h. References blue, green, and red.

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

| Multiply this color by a scalar, return result. Definition at line 87 of file cscolor.h. References blue, green, and red.

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

| Multiply another color with this one. Definition at line 84 of file cscolor.h. References blue, green, and red.

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

| Multiply this color by a scalar value. Reimplemented in csColor4. Definition at line 75 of file cscolor.h. References blue, green, and red.

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

| Compare inequality of two colors. Definition at line 99 of file cscolor.h. References blue, green, and red.

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

| Add another color to this one. Reimplemented in csColor4. Definition at line 78 of file cscolor.h. References blue, green, and red.

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

| Subtract another color to this one. Reimplemented in csColor4. Definition at line 81 of file cscolor.h. References blue, green, and red.

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

| Assign one color object to another. Reimplemented in csColor4. Definition at line 72 of file cscolor.h. References blue, green, and red.

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

| Compare equality of two colors. Definition at line 96 of file cscolor.h. References blue, green, and red.

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

| Set color to given color. Reimplemented in csColor4. Definition at line 55 of file cscolor.h. References blue, green, and red.

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

| Set color to given R,G,B components. Reimplemented in csColor4. Definition at line 52 of file cscolor.h. References blue, green, and red. Referenced by csShaderVariable::GetValue().

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

| Subtract given R,G,B components from color. Definition at line 105 of file cscolor.h. References blue, green, and red.

## Member Data Documentation

float csColor::blue

Blue (0..1).

Definition at line 41 of file cscolor.h.

Referenced by Add(), Clamp(), ClampDown(), csColor(), operator *(), operator *(), csColor4::operator *=(), operator *=(), csColor4::operator!=(), operator!=(), csColor4::operator+=(), operator+=(), csColor4::operator-=(), operator-=(), operator/(), csColor4::operator=(), operator=(), csColor4::operator==(), operator==(), csColor4::Set(), Set(), csShaderVariable::SetValue(), and Subtract().

float csColor::green

Green (0..1).

Definition at line 39 of file cscolor.h.

Referenced by Add(), Clamp(), ClampDown(), csColor(), operator *(), operator *(), csColor4::operator *=(), operator *=(), csColor4::operator!=(), operator!=(), csColor4::operator+=(), operator+=(), csColor4::operator-=(), operator-=(), operator/(), csColor4::operator=(), operator=(), csColor4::operator==(), operator==(), csColor4::Set(), Set(), csShaderVariable::SetValue(), and Subtract().

float csColor::red

Red (0..1).

Definition at line 37 of file cscolor.h.

Referenced by Add(), Clamp(), ClampDown(), csColor(), operator *(), operator *(), csColor4::operator *=(), operator *=(), csColor4::operator!=(), operator!=(), csColor4::operator+=(), operator+=(), csColor4::operator-=(), operator-=(), operator/(), csColor4::operator=(), operator=(), csColor4::operator==(), operator==(), csColor4::Set(), Set(), csShaderVariable::SetValue(), and Subtract().

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

- csutil/cscolor.h