![]() |
http://www.sim.no http://www.coin3d.org |
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. More...
#include <Inventor/SbColor.h>
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 |
![]() | |
SbVec3f (void) | |
SbVec3f (const float v[3]) | |
SbVec3f (const float x, const float y, const float z) | |
SbVec3f (const SbPlane &p0, const SbPlane &p1, const SbPlane &p2) | |
SbVec3f (const SbVec3d &v) | |
SbVec3f (const SbVec3b &v) | |
SbVec3f (const SbVec3s &v) | |
SbVec3f (const SbVec3i32 &v) | |
SbVec3f & | setValue (const float v[3]) |
SbVec3f & | setValue (const float x, const float y, const 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) |
SbVec3f | cross (const SbVec3f &v) const |
float | dot (const SbVec3f &v) const |
SbBool | equals (const SbVec3f &v, const float tolerance) const |
SbVec3f | getClosestAxis (void) const |
const float * | getValue (void) const |
void | getValue (float &x, float &y, float &z) const |
float | length (void) const |
float | sqrLength () const |
void | negate (void) |
float | normalize (void) |
float & | operator[] (const int i) |
const float & | operator[] (const int i) const |
SbVec3f & | operator*= (const float d) |
SbVec3f & | operator/= (const float d) |
SbVec3f & | operator+= (const SbVec3f &u) |
SbVec3f & | operator-= (const SbVec3f &u) |
SbVec3f | operator- (void) const |
void | print (FILE *fp) const |
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.
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.
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 0 is equal to 0° and 1 is equal to 360°.
References SoDebugError::postWarning(), and SbVec3f::setValue().
Referenced by SoMFColor::set1HSVValue(), setHSVValue(), SoSFColor::setHSVValue(), SoMFColor::setHSVValue(), and SbColor4f::setHSVValue().
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 0 is equal to 0° and 1 is equal to 360°.
References setHSVValue().
void SbColor::getHSVValue | ( | float & | h, |
float & | s, | ||
float & | v | ||
) | const |
Return the color as a hue
, saturation
, value
triplet.
Referenced by getHSVValue(), and SbColor4f::getHSVValue().
void SbColor::getHSVValue | ( | float | hsv[3] | ) | const |
Return the color as a hue
, saturation
, value
triplet.
References getHSVValue().
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.
References SbVec3f::setValue().
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.
Referenced by SoVRMLIndexedLineSet::GLRender(), and SoVRMLInline::GLRender().
Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.
Generated on Fri Jul 20 2018 for Coin by Doxygen. 1.8.14