Home | Download | Screen shots | Discussion | Documentation |
---|
A POD-struct comprising a color with an alpha channel. More...
#include <openvrml/basetypes.h>
Public Member Functions | |
const float & | operator[] (std::size_t index) const throw () |
Index-based component access. | |
float | r () const throw () |
Get the red component. | |
float | g () const throw () |
Get the green component. | |
float | b () const throw () |
Get the blue component. | |
float | a () const throw () |
Get the alpha component. | |
void | r (float value) throw () |
Set the red component. | |
void | g (float value) throw () |
Set the green component. | |
void | b (float value) throw () |
Set the blue component. | |
void | a (float value) throw () |
Set the alpha component. | |
void | hsv (float(&result)[4]) const throw () |
Get the color_rgba as hue, saturation, and value. | |
void | hsv (float h, float s, float v, float a=1.0f) throw () |
Set the color_rgba from hue, saturation, and value. |
Public Attributes | |
float | rgba [4] |
RGB triplet plus alpha. |
Related Functions | |
(Note that these are not member functions.) | |
const openvrml::color_rgba | make_color_rgba () throw() |
Create a zero-initialized color_rgba . | |
const openvrml::color_rgba | make_color_rgba (const float(&rgba)[4]) throw() |
Create a color_rgba . | |
const openvrml::color_rgba | make_color_rgba (const float r, const float g, const float b, const float a) throw() |
Create a color_rgba . | |
bool | operator== (const color_rgba &lhs, const color_rgba &rhs) throw() |
Compare for equality. | |
bool | operator!= (const color_rgba &lhs, const color_rgba &rhs) throw() |
Compare for inequality. | |
std::istream & | operator>> (std::istream &in, color_rgba &c) |
Stream input. | |
std::ostream & | operator<< (std::ostream &out, const color_rgba &c) |
Stream output. |
A POD-struct comprising a color with an alpha channel.
VRML color_rgbas
are represented as four single-precision floating point components—red, green, blue, and alpha—ranging from 0.0 to 1.0. For the alpha channel, 1.0 is opaque.
|
inline |
Index-based component access.
[in] | index | 0 is the red component, 1 is the green component, 2 is the blue component, and 3 is the alpha component. |
index
.
|
inline |
Get the red component.
|
inline |
Get the green component.
|
inline |
Get the blue component.
|
inline |
Get the alpha component.
|
inline |
Set the red component.
[in] | value | the new component value. |
|
inline |
Set the green component.
[in] | value | the new component value. |
|
inline |
Set the blue component.
[in] | value | the new component value. |
|
inline |
Set the alpha component.
[in] | value | the new component value. |
void openvrml::color_rgba::hsv | ( | float(&) | result[4] | ) | const throw () |
Get the color_rgba as hue, saturation, and value.
[out] | result | the hue, saturation, and value. |
void openvrml::color_rgba::hsv | ( | float | h, |
float | s, | ||
float | v, | ||
float | a = 1.0f |
||
) | throw () |
Set the color_rgba from hue, saturation, and value.
[in] | h | hue. |
[in] | s | saturation. |
[in] | v | value. |
[in] | a | alpha. |
|
related |
Create a zero-initialized color_rgba
.
color_rgba
.
|
related |
Create a color_rgba
.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
[in] | rgba | an array comprising red, green, blue, and alpha components. |
color_rgba
.
|
related |
Create a color_rgba
.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
[in] | r | red component. |
[in] | g | green component. |
[in] | b | blue component. |
[in] | a | alpha component. |
color_rgba
.
|
related |
Compare for equality.
[in] | lhs | left-hand operand. |
[in] | rhs | right-hand operand. |
true
if lhs
and rhs
have the same value; false
otherwise.
|
related |
Compare for inequality.
[in] | lhs | left-hand operand. |
[in] | rhs | right-hand operand. |
true
if lhs
and rhs
dot not have the same value; false
otherwise.
|
related |
Stream input.
Consistent with the VRML97 convention, commas (“,”) in the input are treated as whitespace.
If any of the color components is outside the the range [0.0, 1.0], the failbit
will be set on in
and c
will be left in an arbitrary state.
[in,out] | in | input stream. |
[out] | c | a color_rgba . |
in
.
|
related |
float openvrml::color_rgba::rgba[4] |
RGB triplet plus alpha.