Open Inventor Reference
|
3D vector class. More...
#include <Inventor/SbLinear.h>
Public Member Functions | |
SbVec3f () | |
Default constructor. | |
SbVec3f (const float v[3]) | |
Constructor given vector components. | |
SbVec3f (float x, float y, float z) | |
Constructor given vector components. | |
SbVec3f (SbPlane &p0, SbPlane &p1, SbPlane &p2) | |
Constructor given 3 planes. | |
SbVec3f | cross (const SbVec3f &v) const |
Returns right-handed cross product of vector and another vector. | |
float | dot (const SbVec3f &v) const |
Returns dot (inner) product of vector and another vector. | |
const float * | getValue () const |
Returns vector components. | |
void | getValue (float &x, float &y, float &z) const |
Returns vector components. | |
float | length () const |
Returns geometric length of vector. | |
float | normalize () |
Changes vector to be unit length, returning the length before normalization. | |
void | negate () |
Negates each component of vector in place. | |
SbVec3f & | setValue (const float v[3]) |
Sets the vector components. | |
SbVec3f & | setValue (float x, float y, float z) |
Sets the vector components. | |
SbVec3f & | setValue (const SbVec3f &barycentic, const SbVec3f &v0, const SbVec3f &v1, const SbVec3f &v2) |
Sets value of vector to be convex combination of 3 other vectors, using barycentic coordinates. | |
float & | operator[] (int i) |
Accesses indexed component of vector. | |
const float & | operator[] (int i) const |
SbVec3f & | operator*= (float d) |
Component-wise scalar multiplication and division operators. | |
SbVec3f & | operator/= (float d) |
Component-wise scalar multiplication and division operators. | |
SbVec3f & | operator+= (SbVec3f v) |
Component-wise vector addition and subtraction operators. | |
SbVec3f & | operator-= (SbVec3f v) |
Component-wise vector addition and subtraction operators. | |
SbVec3f | operator- () const |
Nondestructive unary negation - returns a new vector. | |
bool | equals (const SbVec3f v, float tolerance) const |
Equality comparison within given tolerance em the square of the length of the maximum distance between the two vectors. | |
SbVec3f | getClosestAxis () const |
Returns principal axis that is closest (based on maximum dot product) to this vector. | |
Protected Attributes | |
float | vec [3] |
Storage for vector components. | |
Friends | |
INVENTOR_API SbVec3f | operator* (const SbVec3f &v, float d) |
Component-wise binary scalar multiplication and division operators. | |
INVENTOR_API SbVec3f | operator* (float d, const SbVec3f &v) |
INVENTOR_API SbVec3f | operator/ (const SbVec3f &v, float d) |
INVENTOR_API SbVec3f | operator+ (const SbVec3f &v1, const SbVec3f &v2) |
Component-wise binary vector addition and subtraction operators. | |
INVENTOR_API SbVec3f | operator- (const SbVec3f &v1, const SbVec3f &v2) |
INVENTOR_API bool | operator== (const SbVec3f &v1, const SbVec3f &v2) |
Equality comparison operator. | |
INVENTOR_API bool | operator!= (const SbVec3f &v1, const SbVec3f &v2) |
3D vector class used to store 3D vectors and points. This class is used throughout Inventor for arguments and return values. {}
Definition at line 120 of file SbLinear.h.
|
inline |
Definition at line 124 of file SbLinear.h.
|
inline |
Definition at line 127 of file SbLinear.h.
|
inline |
Definition at line 131 of file SbLinear.h.
float SbVec3f::dot | ( | const SbVec3f & | v | ) | const |
bool SbVec3f::equals | ( | const SbVec3f | v, |
float | tolerance | ||
) | const |
SbVec3f SbVec3f::getClosestAxis | ( | ) | const |
|
inline |
Definition at line 144 of file SbLinear.h.
Referenced by SbVec3fList::append(), SbVec3fList::insert(), and SbColor::SbColor().
void SbVec3f::getValue | ( | float & | x, |
float & | y, | ||
float & | z | ||
) | const |
float SbVec3f::length | ( | ) | const |
void SbVec3f::negate | ( | ) |
float SbVec3f::normalize | ( | ) |
SbVec3f & SbVec3f::operator*= | ( | float | d | ) |
SbVec3f SbVec3f::operator- | ( | ) | const |
|
inline |
Definition at line 179 of file SbLinear.h.
|
inline |
Definition at line 172 of file SbLinear.h.
|
inline |
Definition at line 173 of file SbLinear.h.
|
inline |
Definition at line 159 of file SbLinear.h.
Referenced by SbColor::SbColor(), SbColor::SbColor(), and SbColor::SbColor().
SbVec3f & SbVec3f::setValue | ( | const SbVec3f & | barycentic, |
const SbVec3f & | v0, | ||
const SbVec3f & | v1, | ||
const SbVec3f & | v2 | ||
) |
|
inline |
Definition at line 163 of file SbLinear.h.
|
friend |
Definition at line 225 of file SbLinear.h.
|
friend |
|
friend |
Definition at line 217 of file SbLinear.h.
|
friend |
|
friend |
|
friend |
Definition at line 219 of file SbLinear.h.
|
friend |
|
protected |
Definition at line 213 of file SbLinear.h.