SFML

- Main Page
- Modules
- Classes
- Files

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

Public Member Functions | Public Attributes | Static Public Attributes | Related Functions | List of all members
sf::Color Class Reference
Graphics module

Utility class for manpulating RGBA colors. More...

`#include <Color.hpp>`

## Public Member Functions
| Color ()
| Default constructor. More...
| Color (Uint8 red, Uint8 green, Uint8 blue, Uint8 alpha=255)
| Construct the color from its 4 RGBA components. More...

## Public Attributes
Uint8 | r
| Red component. More...
Uint8 | g
| Green component. More...
Uint8 | b
| Blue component. More...
Uint8 | a
| Alpha (opacity) component. More...

## Static Public Attributes
static const Color | Black
| Black predefined color. More...
static const Color | White
| White predefined color. More...
static const Color | Red
| Red predefined color. More...
static const Color | Green
| Green predefined color. More...
static const Color | Blue
| Blue predefined color. More...
static const Color | Yellow
| Yellow predefined color. More...
static const Color | Magenta
| Magenta predefined color. More...
static const Color | Cyan
| Cyan predefined color. More...
static const Color | Transparent
| Transparent (black) predefined color. More...

## Related Functions
(Note that these are not member functions.)
bool | operator== (const Color &left, const Color &right)
| Overload of the == operator. More...
bool | operator!= (const Color &left, const Color &right)
| Overload of the != operator. More...
Color | operator+ (const Color &left, const Color &right)
| Overload of the binary + operator. More...
Color | operator* (const Color &left, const Color &right)
| Overload of the binary * operator. More...
Color & | operator+= (Color &left, const Color &right)
| Overload of the binary += operator. More...
Color & | operator*= (Color &left, const Color &right)
| Overload of the binary *= operator. More...

## Detailed Description

Utility class for manpulating RGBA colors.

sf::Color is a simple color class composed of 4 components:

- Red
- Green
- Blue
- Alpha (opacity)

Each component is a public member, an unsigned integer in the range [0, 255]. Thus, colors can be constructed and manipulated very easily:

sf::Color color(255, 0, 0); // red
color.r = 0; // make it black
color.b = 128; // make it dark blue

The fourth component of colors, named "alpha", represents the opacity of the color. A color with an alpha value of 255 will be fully opaque, while an alpha value of 0 will make a color fully transparent, whatever the value of the other components is.

The most common colors are already defined as static variables:

sf::Color black = sf::Color::Black;
sf::Color white = sf::Color::White;
sf::Color red = sf::Color::Red;
sf::Color green = sf::Color::Green;
sf::Color blue = sf::Color::Blue;
sf::Color yellow = sf::Color::Yellow;
sf::Color magenta = sf::Color::Magenta;
sf::Color cyan = sf::Color::Cyan;
sf::Color transparent = sf::Color::Transparent;

Colors can also be added and modulated (multiplied) using the overloaded operators + and *.

Definition at line 40 of file Color.hpp.

## Constructor & Destructor Documentation

sf::Color::Color | ( | ) |  |

Default constructor.

Constructs an opaque black color. It is equivalent to sf::Color(0, 0, 0, 255).

sf::Color::Color | ( | Uint8 | red,
|  | Uint8 | green,
|  | Uint8 | blue,
|  | Uint8 | alpha = `255`
| ) |  |

Construct the color from its 4 RGBA components.

Parameters

  red | Red component (in the range [0, 255])
  green | Green component (in the range [0, 255])
  blue | Blue component (in the range [0, 255])
  alpha | Alpha (opacity) component (in the range [0, 255])

## Friends And Related Function Documentation

bool operator!= | ( | const Color & | left,
|  | const Color & | right
| ) |  |
| related

Overload of the != operator.

This operator compares two colors and check if they are different.

Parameters

  left | Left operand
  right | Right operand

Returns
  True if colors are different, false if they are equal

Color operator* | ( | const Color & | left,
|  | const Color & | right
| ) |  |
| related

Overload of the binary * operator.

This operator returns the component-wise multiplication (also called "modulation") of two colors. Components are then divided by 255 so that the result is still in the range [0, 255].

Parameters

  left | Left operand
  right | Right operand

Returns
  Result of left * right

Color & operator*= | ( | Color & | left,
|  | const Color & | right
| ) |  |
| related

Overload of the binary *= operator.

This operator returns the component-wise multiplication (also called "modulation") of two colors, and assigns the result to the left operand. Components are then divided by 255 so that the result is still in the range [0, 255].

Parameters

  left | Left operand
  right | Right operand

Returns
  Reference to left

Color operator+ | ( | const Color & | left,
|  | const Color & | right
| ) |  |
| related

Overload of the binary + operator.

This operator returns the component-wise sum of two colors. Components that exceed 255 are clamped to 255.

Parameters

  left | Left operand
  right | Right operand

Returns
  Result of left + right

Color & operator+= | ( | Color & | left,
|  | const Color & | right
| ) |  |
| related

Overload of the binary += operator.

This operator computes the component-wise sum of two colors, and assigns the result to the left operand. Components that exceed 255 are clamped to 255.

Parameters

  left | Left operand
  right | Right operand

Returns
  Reference to left

bool operator== | ( | const Color & | left,
|  | const Color & | right
| ) |  |
| related

Overload of the == operator.

This operator compares two colors and check if they are equal.

Parameters

  left | Left operand
  right | Right operand

Returns
  True if colors are equal, false if they are different

## Member Data Documentation

Uint8 sf::Color::a

Alpha (opacity) component.

Definition at line 83 of file Color.hpp.

Uint8 sf::Color::b

Blue component.

Definition at line 82 of file Color.hpp.

const Color sf::Color::Black
| static

Black predefined color.

Definition at line 67 of file Color.hpp.

const Color sf::Color::Blue
| static

Blue predefined color.

Definition at line 71 of file Color.hpp.

const Color sf::Color::Cyan
| static

Cyan predefined color.

Definition at line 74 of file Color.hpp.

Uint8 sf::Color::g

Green component.

Definition at line 81 of file Color.hpp.

const Color sf::Color::Green
| static

Green predefined color.

Definition at line 70 of file Color.hpp.

const Color sf::Color::Magenta
| static

Magenta predefined color.

Definition at line 73 of file Color.hpp.

Uint8 sf::Color::r

Red component.

Definition at line 80 of file Color.hpp.

const Color sf::Color::Red
| static

Red predefined color.

Definition at line 69 of file Color.hpp.

const Color sf::Color::Transparent
| static

Transparent (black) predefined color.

Definition at line 75 of file Color.hpp.

const Color sf::Color::White
| static

White predefined color.

Definition at line 68 of file Color.hpp.

const Color sf::Color::Yellow
| static

Yellow predefined color.

Definition at line 72 of file Color.hpp.

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

- Color.hpp