3D vector class. More...
#include <Inventor/SbVec.h>
Public Member Functions | |
| SbVec3f () | |
| SbVec3f (const float v[3]) | |
| SbVec3f (float x, float y, float z) | |
| SbVec3f (SbPlane &p0, SbPlane &p1, SbPlane &p2) | |
| SbVec3f | cross (const SbVec3f &v) const |
| float | dot (const SbVec3f &v) const |
| const float * | getValue () const |
| void | getValue (float &x, float &y, float &z) const |
| float | length () const |
| float | lengthSquared () const |
| float | normalize () |
| void | negate () |
| 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) |
| SbVec3f & | setValue (const SbVec3d &vec3d) |
| SbVec3f & | operator*= (float d) |
| SbVec3f & | operator/= (float d) |
| SbVec3f & | operator+= (const SbVec3f &v) |
| SbVec3f & | operator-= (const SbVec3f &v) |
| SbVec3f | operator- () const |
| SbVec3f | operator* (const SbVec3f &v) const |
| SbVec3f & | operator*= (const SbVec3f &v) |
| SbBool | equals (const SbVec3f &v, float tolerance) const |
| SbVec3f | getClosestAxis () const |
| template<typename T > | |
| SbVec3f (const T &v) | |
Friends | |
| 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) |
| std::ostream & | operator<< (std::ostream &os, const SbVec3f &v) |
|
| |
| float & | operator[] (int i) |
| const float & | operator[] (int i) const |
3D vector class.
3D vector class used to store 3D vectors and points. This class is used throughout Open Inventor for arguments and return values.
Notes:
SbRotation, SbRotationd, SbVec2d, SbVec2f, SbVec2i32, SbVec2s, SbVec3d, SbVec3i32, SbVec3s, SbVec4b, SbVec4d, SbVec4f, SbVec4i32, SbVec4s, SbVec4ub, SbVec4ui32, SbVec4us
| SbVec3f::SbVec3f | ( | ) | [inline] |
Default constructor.
The vector is initialized with zeros.
| SbVec3f::SbVec3f | ( | const float | v[3] | ) | [inline, explicit] |
Constructor given vector components.
| SbVec3f::SbVec3f | ( | float | x, | |
| float | y, | |||
| float | z | |||
| ) | [inline] |
Constructor given vector components.
| SbVec3f::SbVec3f | ( | const T & | v | ) | [inline, explicit] |
Constructor that converts an arbitrary SbVec3 to an SbVec3f.
Returns right-handed cross product of vector and another vector.
| float SbVec3f::dot | ( | const SbVec3f & | v | ) | const [inline] |
Returns dot (inner) product of vector and another vector.
Equality comparison within given tolerance - the square of the length of the maximum distance between the two vectors.
| SbVec3f SbVec3f::getClosestAxis | ( | ) | const |
Returns principal axis that is closest (based on maximum dot product) to this vector.
| void SbVec3f::getValue | ( | float & | x, | |
| float & | y, | |||
| float & | z | |||
| ) | const |
Returns vector components.
| const float* SbVec3f::getValue | ( | ) | const [inline] |
Returns vector components.
| float SbVec3f::length | ( | ) | const |
Returns geometric length of vector.
| float SbVec3f::lengthSquared | ( | ) | const [inline] |
Returns square length of vector.
Faster than length().
| void SbVec3f::negate | ( | ) |
Negates each component of vector in place.
| float SbVec3f::normalize | ( | ) |
Changes vector to be unit length, returning the length before normalization.
Component-wise vector multiplication operator.
Component-wise vector multiplication operator.
| SbVec3f& SbVec3f::operator*= | ( | float | d | ) |
Component-wise scalar multiplication operator.
Component-wise vector addition operator.
| SbVec3f SbVec3f::operator- | ( | ) | const [inline] |
Nondestructive unary negation - returns a new vector.
| SbVec3f& SbVec3f::operator/= | ( | float | d | ) |
Component-wise scalar division operator.
| const float& SbVec3f::operator[] | ( | int | i | ) | const [inline] |
Accesses indexed component of vector.
| float& SbVec3f::operator[] | ( | int | i | ) | [inline] |
Accesses indexed component of vector.
Sets value of vector from a double precision vector.
| SbVec3f& SbVec3f::setValue | ( | const SbVec3f & | barycentic, | |
| const SbVec3f & | v0, | |||
| const SbVec3f & | v1, | |||
| const SbVec3f & | v2 | |||
| ) |
Sets value of vector as the weighted average of 3 other vectors.
| SbVec3f& SbVec3f::setValue | ( | float | x, | |
| float | y, | |||
| float | z | |||
| ) | [inline] |
Sets the vector components.
| SbVec3f& SbVec3f::setValue | ( | const float | v[3] | ) | [inline] |
Sets the vector components.
Component-wise binary scalar multiplication operator.
Component-wise binary scalar multiplication operator.
Component-wise binary vector addition operator.
Component-wise binary vector subtraction operator.
Component-wise binary scalar division operator.
| std::ostream& operator<< | ( | std::ostream & | os, | |
| const SbVec3f & | v | |||
| ) | [friend] |
Writes the vector to the specified output stream.