CLAW Library (a C++ Library Absolutely Wonderful) 1.5.5
|
RGBA pixel. More...
#include <pixel.hpp>
Public Types | |
typedef unsigned char | component_type |
Public Member Functions | |
rgba_pixel () | |
Default constructor. | |
rgba_pixel (const rgb_pixel &that) | |
Constructor. | |
rgba_pixel (component_type r, component_type g, component_type b, component_type a) | |
Constructor. | |
rgba_pixel & | operator= (const rgb_pixel &that) |
Assignement operator. | |
bool | operator== (const rgba_pixel &that) const |
Tell if two pixels are equal. | |
bool | operator!= (const rgba_pixel &that) const |
Tell if two pixels are different. | |
component_type | luminosity () const |
Get the luminosity of the pixel. | |
Public Attributes | |
union { | |
unsigned int pixel | |
Compressed representation. | |
struct { | |
component_type red | |
Red component. | |
component_type green | |
Green component. | |
component_type blue | |
Blue component. | |
component_type alpha | |
Translucy. | |
} components | |
}; |
typedef unsigned char claw::graphic::rgba_pixel::component_type |
claw::graphic::rgba_pixel::rgba_pixel | ( | ) |
claw::graphic::rgba_pixel::rgba_pixel | ( | const rgb_pixel & | that | ) |
Constructor.
that | The other pixel. |
Definition at line 170 of file pixel.cpp.
References claw::graphic::rgb_pixel::blue, claw::graphic::rgb_pixel::components, claw::graphic::rgb_pixel::green, and claw::graphic::rgb_pixel::red.
{ components.red = that.components.red; components.green = that.components.green; components.blue = that.components.blue; components.alpha = 255; } // rgba_pixel::rgba_pixel()
claw::graphic::rgba_pixel::rgba_pixel | ( | component_type | r, |
component_type | g, | ||
component_type | b, | ||
component_type | a | ||
) |
Constructor.
r | The value of the red field. |
g | The value of the green field. |
b | The value of the blue field. |
a | The value of the alpha field. |
Definition at line 187 of file pixel.cpp.
{ components.red = r; components.green = g; components.blue = b; components.alpha = a; } // rgba_pixel::rgba_pixel()
claw::graphic::rgba_pixel::component_type claw::graphic::rgba_pixel::luminosity | ( | ) | const |
Get the luminosity of the pixel.
The luminosity is approximated with integers:
Definition at line 243 of file pixel.cpp.
{ return ((unsigned int)components.red * 183 + (unsigned int)components.green * 54 + (unsigned int)components.blue * 18 ) / 256; } // rgba_pixel::luminosity()
bool claw::graphic::rgba_pixel::operator!= | ( | const rgba_pixel & | that | ) | const |
claw::graphic::rgba_pixel & claw::graphic::rgba_pixel::operator= | ( | const rgb_pixel & | that | ) |
Assignement operator.
that | The other pixel. |
Definition at line 202 of file pixel.cpp.
References claw::graphic::rgb_pixel::blue, claw::graphic::rgb_pixel::components, claw::graphic::rgb_pixel::green, claw::graphic::rgb_pixel::red, and red.
{ components.red = that.components.red; components.green = that.components.green; components.blue = that.components.blue; components.alpha = 255; return *this; } // rgba_pixel::operator=()
bool claw::graphic::rgba_pixel::operator== | ( | const rgba_pixel & | that | ) | const |
union { ... } |
struct { ... } claw::graphic::rgba_pixel::components |
unsigned int claw::graphic::rgba_pixel::pixel |
Compressed representation.
Definition at line 82 of file pixel.hpp.
Referenced by operator!=(), and operator==().