SbColor(3)

SbColor3

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

Usage

#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().

Releases

8 releases since Debian 3.0 (Woody); the text changed 7 times.

  1. 3.0
  2. 3.1
  3. 4.0
  4. 5.0
  5. 6.0
  6. 7
  7. 8
  8. Arch

Author

Generated automatically by Doxygen for Coin from the source code.

From coin 1:4.0.10-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.