Provided by: inventor-doc_2.1.5-10-18_all
NAME
SbVec3f — 3D vector class
INHERITS FROM
SbVec3f
SYNOPSIS
#include <Inventor/SbLinear.h> Methods from class SbVec3f: 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 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)
DESCRIPTION
3D vector class used to store 3D vectors and points. This class is used throughout Inventor for arguments and return values.
METHODS
SbVec3f() Default constructor. SbVec3f(const float v[3]) 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. SbBool equals(const SbVec3f v, float tolerance) const Equality comparison within given tolerance — 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. const float * getValue() const void getValue(float &x, float &y, float &z) const Returns vector components. float length() const Returns geometric length of vector. void negate() Negates each component of vector in place. float normalize() Changes vector to be unit length, returning the length before normalization. SbVec3f & setValue(const float v[3]) 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 as the weighted average of 3 other vectors. float & operator [](int i) const float & operator [](int i) Accesses indexed component of vector. SbVec3f & operator *=(float d) SbVec3f & operator /=(float d) Component-wise scalar multiplication and division operators. SbVec3f & operator +=(const SbVec3f &u) SbVec3f & operator -=(const SbVec3f &u) Component-wise vector addition and subtraction operators. SbVec3f operator -() const Nondestructive unary negation — returns a new vector. SbVec3f operator *(const SbVec3f &v, float d) SbVec3f operator *(float d, const SbVec3f &v) SbVec3f operator /(const SbVec3f &v, float d) Component-wise binary scalar multiplication and division operators. SbVec3f operator +(const SbVec3f &v1, const SbVec3f &v2) SbVec3f operator -(const SbVec3f &v1, const SbVec3f &v2) Component-wise binary vector addition and subtraction operators. int operator ==(const SbVec3f &v1, const SbVec3f &v2) int operator !=(const SbVec3f &v1, const SbVec3f &v2) Equality comparison operators.
SEE ALSO
SbVec2f, SbVec4f, SbVec2s, SbRotation SbVec3f(3IV)()