SbVec3f(3IV)

SbVec3f (SbV3f) - 3D vector class

As shipped in IRIX 6.5.30. 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