SbVec3f(3IV)
SbVec3f (SbV3f) - 3D vector class
As shipped in IRIX 6.5.22. Added in IRIX 6.5.22.
NAME SbVec3f (SbV3f) - 3D vector class INHERITS FROM SbVec3f SYNOPSIS #include <Inventor_c/SbLinear.h> typedef SbVec3f SbV3f Functions from class SbVec3f: SbVec3f SbV3fCross(const SbV3f *this, const SbVec3f *v) SbBool SbV3fEquals(const SbV3f *this, const SbVec3f v, float tolerance) SbVec3f SbV3fGetClosestAxis(const SbV3f *this) float SbV3fNorm(SbV3f *this) int SbV3fIsEq(SbV3f *this, const SbVec3f *v1, const SbVec3f *v2) int SbV3fIsNEq(SbV3f *this, const SbVec3f *v1, const SbVec3f *v2) Macros from class SbVec3f: SbV3fDot(SbVec3f vec0, SbVec3f vec1) SbV3fGetXYZ(float array[3], SbVec3f vec) SbV3fGetX_Y_Z(float x, float y, float z, SbVec3f vec) SbV3fLen(SbVec3f vec) SbV3fNegate(SbVec3f vec) SbV3fSetXYZ(SbVec3f vec, float array[3]) SbV3fSetX_Y_Z(SbVec3f vec, float x, float y, float z) SbV3fMultBy(SbVec3f vec, float scalar) SbV3fDivBy(SbVec3f vec, float scalar) SbV3fAdd(SbVec3f dest, SbVec3f src1, SbVec3f src2) SbV3fSub(SbVec3f dest, SbVec3f src1, SbVec3f src2) DESCRIPTION 3D vector class used to store 3D vectors and points. This class is used throughout Inventor for arguments and return values. This object does not have Create or Delete functions because it is considered a simple datatype; instances of this class may be declared directly as local or global variables in C. C programmers can access the components of the vector as though it were a simple structure or use the access and operation functions described in this reference page: struct SbVec3f { float vec[3]; }; SbVec2f v1, v2; /* The next two lines produce equivalent vectors. */ v1.vec[0] = 1.0; v1.vec[1] = 1.0; v1.vec[2] = 1.0; SbV3fSetX_Y_Z( v2, 1.0, 1.0, 1.0 ); FUNCTIONS SbVec3f SbV3fCross(const SbV3f *this, const SbVec3f *v) Returns right-handed cross product of vector and another vector. SbBool SbV3fEquals(const SbV3f *this, const SbVec3f v, float tolerance) Equality comparison within given tolerance - the square of the length of the maximum distance between the two vectors. SbVec3f SbV3fGetClosestAxis(const SbV3f *this) Returns principal axis that is closest (based on maximum dot product) to this vector. float SbV3fNorm(SbV3f *this) Changes vector to be unit length, returning the length before normalization. int SbV3fIsEq(SbV3f *this, const SbVec3f *v1, const SbVec3f *v2) int SbV3fIsNEq(SbV3f *this, const SbVec3f *v1, const SbVec3f *v2) Equality comparison operators. MACROS SbV3fDot(SbVec3f vec0, SbVec3f vec1) Returns dot (inner) product of two vectors. SbV3fGetXYZ(float array[3], SbVec3f vec) SbV3fGetX_Y_Z(float x, float y, float z, SbVec3f vec) Returns vector components. SbV3fLen(SbVec3f vec) Returns geometric length of vector. SbV3fNegate(SbVec3f vec) Negates each component of vector in place. SbV3fSetXYZ(SbVec3f vec, float array[3]) SbV3fSetX_Y_Z(SbVec3f vec, float x, float y, float z) Sets the vector components. SbV3fMultBy(SbVec3f vec, float scalar) SbV3fDivBy(SbVec3f vec, float scalar) Component-wise scalar multiplication and division operators. SbV3fAdd(SbVec3f dest, SbVec3f src1, SbVec3f src2) SbV3fSub(SbVec3f dest, SbVec3f src1, SbVec3f src2) Component-wise binary vector addition and subtraction operators. FILE FORMAT/DEFAULTS Vec3f { } SEE ALSO SbVec2f, SbVec4f, SbVec2s, SbRotation