SbColor(3)

NAME
SbColor - The SbColor class contains the red, green and blue components which make up a color value.

SYNOPSIS

#include <Inventor/SbColor.h>

Inherits SbVec3f.

  Public Member Functions
SbColor (void)
SbColor (const SbVec3f &v)
SbColor (const float *const rgb)
SbColor (const float r, const float g, const float b)
SbColor & setHSVValue (float h, float s, float v)
SbColor & setHSVValue (const float hsv[3])
void getHSVValue (float &h, float &s, float &v) const
void getHSVValue (float hsv[3]) const
SbColor & setPackedValue (const uint32_t rgba, float &transparency)
uint32_t getPackedValue (const float transparency=0.0f) const
Public Member Functions inherited from SbVec3f
SbVec3f (void)
SbVec3f (const float v[3])
SbVec3f (float x, float y, float z)
SbVec3f (const SbVec3d &v)
SbVec3f (const SbVec3b &v)
SbVec3f (const SbVec3s &v)
SbVec3f (const SbVec3i32 &v)
SbVec3f (const SbPlane &p0, const SbPlane &p1, const SbPlane &p2)
SbVec3f & setValue (const float v[3])
SbVec3f & setValue (float x, float y, float z)
SbVec3f & setValue (const SbVec3f &barycentric, const SbVec3f &v0, const SbVec3f &v1, const SbVec3f &v2)
SbVec3f & setValue (const SbVec3d &v)
SbVec3f & setValue (const SbVec3b &v)
SbVec3f & setValue (const SbVec3s &v)
SbVec3f & setValue (const SbVec3i32 &v)
const float * getValue (void) const
void getValue (float &x, float &y, float &z) const
float & operator[] (int i)
const float & operator[] (int i) const
SbBool equals (const SbVec3f &v, float tolerance) const
SbVec3f cross (const SbVec3f &v) const
float dot (const SbVec3f &v) const
SbVec3f getClosestAxis (void) const
float length (void) const
float sqrLength (void) const
float normalize (void)
void negate (void)
SbVec3f & operator*= (float d)
SbVec3f & operator/= (float d)
SbVec3f & operator+= (const SbVec3f &v)
SbVec3f & operator-= (const SbVec3f &v)
SbVec3f operator- (void) const
SbString toString () const
SbBool fromString (const SbString &str)
void print (FILE *fp) const

  Additional Inherited Members
Protected Attributes inherited from SbVec3f
float vec [3]
Related Symbols inherited from SbVec3f
SbVec3f operator* (const SbVec3f &v, float d)
SbVec3f operator* (float d, const SbVec3f &v)
SbVec3f operator/ (const SbVec3f &v, float d)
SbVec3f operator+ (const SbVec3f &v1, const SbVec3f &v2)
SbVec3f operator- (const SbVec3f &v1, const SbVec3f &v2)
int operator== (const SbVec3f &v1, const SbVec3f &v2)
int operator!= (const SbVec3f &v1, const SbVec3f &v2)

Detailed Description

The SbColor class contains the red, green and blue components which make up a color value. This class is used within other classes in Coin. It inherits the SbVec3f class, interpreting the 3 component vector as a vector in the RGB cube where the red, green and blue components corresponds to x, y and z respectively.

SbColor also adds a few extra methods for convenient handling of setting and getting color values as 32 bit packed values or as HSV values.

See also
    SbVec3f, SbColor4f

Constructor & Destructor Documentation

  SbColor::SbColor (void )
Default constructor. The color value will be uninitialized.

  SbColor::SbColor (const SbVec3f & v)
Construct and initialize an SbColor with the red, green and blue values given by the v vector.

  SbColor::SbColor (const float *const rgb)
Construct and initialize an SbColor with the red, green and blue taken from given rgb array.

  SbColor::SbColor (const float r, const float g, const float b)
Construct and initialize an SbColor with the given red, green and blue values.

Member Function Documentation

  SbColor & SbColor::setHSVValue (float hue, float saturation, float value)
Set the color as a hue, saturation, value triplet. The hue component should be normalized to within [0, 1] before you call this method, where a value of 0 corresponds to 0 degrees and a value of 1 corresponds to 360 degrees.

See also
    getHSVValue().

  SbColor & SbColor::setHSVValue (const float hsv[3])
Set the color as a hue, saturation, value triplet. The hue component should be normalized to within [0, 1] before you call this method, where a value of 0 corresponds to 0 degrees and a value of 1 corresponds to 360 degrees.

See also
    getHSVValue().

  void SbColor::getHSVValue (float & h, float & s, float & v) const
Return the color as a hue, saturation, value triplet.

See also
    setHSVValue().

  void SbColor::getHSVValue (float hsv[3]) const
Return the color as a hue, saturation, value triplet.

See also
    setHSVValue().

  SbColor & SbColor::setPackedValue (const uint32_t rgba, float & transparency)
Set the color value as a 32 bit combined red/green/blue/alpha value. Each component is 8 bit wide (i.e. from 0x00 to 0xff), and the red value should be stored leftmost, like this: 0xRRGGBBAA.

The transparency value is not stored internally in SbColor, just converted to a transparency value in [0, 1] and returned in the transparency field. A value of 1.0 means completely transparent and a value of 0.0 is completely opaque.

See also
    getPackedValue().

  uint32_t SbColor::getPackedValue (const float transparency = 0.0f) const
Return color as a 32 bit packed integer in the form 0xRRGGBBAA. The transparency part of the return value is taken from the supplied transparency argument.

See also
    setPackedValue().

Author

Generated automatically by Doxygen for Coin from the source code.