SbVec3f(3IV)

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