DOKK / manpages / debian 12 / inventor-doc / SbColor.3iv.en
SbColor(3IV)() SbColor(3IV)()

SbColor — color vector class

SbVec3f

#include <Inventor/SbColor.h>


Methods from class SbColor:


SbColor(const SbVec3f vec3f)

SbColor(const float rgb[3])

SbColor(float r, float g, 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(uint32_t rgba, float& transparency)

uint32_t getPackedValue(float transparency = 0.0) const


Methods from class SbVec3f:


SbVec3f cross(const SbVec3f &v) const

float dot(const SbVec3f &v) const

SbBool equals(const SbVec3f v, float tolerance) const

SbVec3f getClosestAxis() const

const float * getValue() const

void getValue(float &x, float &y, float &z) const

float length() const

void negate()

float normalize()

SbVec3f & setValue(const float v[3])

SbVec3f & setValue(float x, float y, float z)

SbVec3f & setValue(const SbVec3f &barycentic, const SbVec3f &v0, const SbVec3f &v1, const SbVec3f &v2)

float & operator [](int i)

const float & operator [](int i)

SbVec3f & operator *=(float d)

SbVec3f & operator /=(float d)

SbVec3f & operator +=(const SbVec3f &u)

SbVec3f & operator -=(const SbVec3f &u)

SbVec3f operator -() const

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)

This class is used to represent an RGB color. Each component of the vector is a floating-point number between 0.0 and 1.0. There are routines to convert back and forth between RGB and HSV.


SbColor(const SbVec3f vec3f)

SbColor(const float rgb[3])

SbColor(float r, float g, float b)

Constructors for color vector.



SbColor & setHSVValue(float h, float s, float v)

Sets value of color vector from 3 HSV (Hue, Saturation, and Value) components. Value is the same as brightness of the color.



SbColor & setHSVValue(const float hsv[3])

Sets value of color vector from array of 3 HSV components



void getHSVValue(float &h, float &s, float &v) const

Returns 3 individual HSV components



void getHSVValue(float hsv[3]) const

Returns an array of 3 HSV components



SbColor & setPackedValue(uint32_t rgba, float& transparency)

Sets value of color vector from an RGBA packed color value. The packed color format expressed in hexadecimal is 0xrrggbbaa, where


rr is the red value gg is the green value bb is the blue value aa is the alpha value

RGBA component values range from 0 to 0xFF (255). The returned transparency value is a floating point value between 0.0 (opaque) and 1.0 (completely transparent). It is derived from the alpha component of the RGBA color.



uint32_t getPackedValue(float transparency = 0.0) const

Returns an RGBA packed color value, derived from the color vector and the passed transparency value. The alpha component is set to (1.0 - transparency) * 255, resulting in a hex value between 0 and 0xFF. If transparency not specified, alpha is set to 0xFF (opaque).