Container class for (r,g,b) color. Each component is an integer in [0,255]. More...
Public Member Functions | |
color () | |
empty constructor (0,0,0) | |
color (const unsigned char &gray) | |
direct constructor with gray value (r,b,g)=(gray,gray,gray) | |
color (const unsigned char &r, const unsigned char &g, const unsigned char &b) | |
direct constructor with (r,b,g) value | |
void | set (const unsigned char &r, const unsigned char &g, const unsigned char &b) |
set color value | |
void | get (unsigned char *r, unsigned char *g, unsigned char *b) const |
get color values | |
const unsigned char & | r () const |
get red value | |
unsigned char & | r () |
get red value | |
const unsigned char & | g () const |
get green value | |
unsigned char & | g () |
get green value | |
const unsigned char & | b () const |
get blue value | |
unsigned char & | b () |
get blue value | |
Static Public Member Functions | |
static color | interpolate_linear (const color &c1, const color &c2, double alpha) |
linear interpolation of colors | |
Private Attributes | |
unsigned char | internal_r |
internal red component | |
unsigned char | internal_g |
internal green component | |
unsigned char | internal_b |
internal blue component | |
Friends | |
std::ostream & | operator<< (std::ostream &stream, const color &c) |
standard output |
Container class for (r,g,b) color. Each component is an integer in [0,255].
cpe::color::color | ( | ) |
empty constructor (0,0,0)
Referenced by interpolate_linear().
cpe::color::color | ( | const unsigned char & | gray | ) |
direct constructor with gray value (r,b,g)=(gray,gray,gray)
cpe::color::color | ( | const unsigned char & | r, | |
const unsigned char & | g, | |||
const unsigned char & | b | |||
) |
direct constructor with (r,b,g) value
unsigned char & cpe::color::b | ( | ) |
get blue value
References internal_b.
const unsigned char & cpe::color::b | ( | ) | const |
get blue value
References internal_b.
Referenced by cpe::image::fill(), cpe::image::fill_rectangle(), cpe::image::get_pixel(), interpolate_linear(), cpe::operator<<(), and cpe::image::set_pixel().
unsigned char & cpe::color::g | ( | ) |
get green value
References internal_g.
const unsigned char & cpe::color::g | ( | ) | const |
get green value
References internal_g.
Referenced by cpe::image::fill(), cpe::image::fill_rectangle(), cpe::image::get_pixel(), interpolate_linear(), cpe::operator<<(), and cpe::image::set_pixel().
void cpe::color::get | ( | unsigned char * | r, | |
unsigned char * | g, | |||
unsigned char * | b | |||
) | const |
get color values
References internal_b, internal_g, and internal_r.
unsigned char & cpe::color::r | ( | ) |
get red value
References internal_r.
const unsigned char & cpe::color::r | ( | ) | const |
get red value
References internal_r.
Referenced by cpe::image::fill(), cpe::image::fill_rectangle(), cpe::image::get_pixel(), interpolate_linear(), cpe::operator<<(), and cpe::image::set_pixel().
void cpe::color::set | ( | const unsigned char & | r, | |
const unsigned char & | g, | |||
const unsigned char & | b | |||
) |
set color value
References internal_b, internal_g, and internal_r.
std::ostream& operator<< | ( | std::ostream & | stream, | |
const color & | c | |||
) | [friend] |
standard output
unsigned char cpe::color::internal_b [private] |
unsigned char cpe::color::internal_g [private] |
unsigned char cpe::color::internal_r [private] |