Assimp  v2.0 (November 2010)
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
aiQuaternion Struct Reference

Represents a quaternion in a 4D vector. More...

Public Member Functions

 aiQuaternion ()
 
 aiQuaternion (float _w, float _x, float _y, float _z)
 
 aiQuaternion (const aiMatrix3x3 &pRotMatrix)
 Construct from rotation matrix.
 
 aiQuaternion (float rotx, float roty, float rotz)
 Construct from euler angles.
 
 aiQuaternion (aiVector3D axis, float angle)
 Construct from an axis-angle pair.
 
 aiQuaternion (aiVector3D normalized)
 Construct from a normalized quaternion stored in a vec3.
 
aiQuaternionConjugate ()
 Compute quaternion conjugate.
 
aiMatrix3x3 GetMatrix () const
 Returns a matrix representation of the quaternion.
 
aiQuaternionNormalize ()
 Normalize the quaternion.
 
bool operator!= (const aiQuaternion &o) const
 
aiQuaternion operator* (const aiQuaternion &two) const
 Multiply two quaternions.
 
bool operator== (const aiQuaternion &o) const
 
aiVector3D Rotate (const aiVector3D &in)
 Rotate a point by this quaternion.
 

Static Public Member Functions

static void Interpolate (aiQuaternion &pOut, const aiQuaternion &pStart, const aiQuaternion &pEnd, float pFactor)
 Performs a spherical interpolation between two quaternions and writes the result into the third.
 

Public Attributes

float w
 w,x,y,z components of the quaternion
 
float x
 
float y
 
float z
 

Detailed Description

Represents a quaternion in a 4D vector.

Constructor & Destructor Documentation

aiQuaternion::aiQuaternion ( )
inline
aiQuaternion::aiQuaternion ( float  _w,
float  _x,
float  _y,
float  _z 
)
inline
aiQuaternion::aiQuaternion ( const aiMatrix3x3 pRotMatrix)
inline

Construct from rotation matrix.

Result is undefined if the matrix is not orthonormal.

aiQuaternion::aiQuaternion ( float  rotx,
float  roty,
float  rotz 
)
inline

Construct from euler angles.

aiQuaternion::aiQuaternion ( aiVector3D  axis,
float  angle 
)
inline

Construct from an axis-angle pair.

aiQuaternion::aiQuaternion ( aiVector3D  normalized)
inline

Construct from a normalized quaternion stored in a vec3.

Member Function Documentation

aiQuaternion & aiQuaternion::Conjugate ( )
inline

Compute quaternion conjugate.

aiMatrix3x3 aiQuaternion::GetMatrix ( ) const
inline

Returns a matrix representation of the quaternion.

void aiQuaternion::Interpolate ( aiQuaternion pOut,
const aiQuaternion pStart,
const aiQuaternion pEnd,
float  pFactor 
)
inlinestatic

Performs a spherical interpolation between two quaternions and writes the result into the third.

Parameters
pOutTarget object to received the interpolated rotation.
pStartStart rotation of the interpolation at factor == 0.
pEndEnd rotation, factor == 1.
pFactorInterpolation factor between 0 and 1. Values outside of this range yield undefined results.
aiQuaternion & aiQuaternion::Normalize ( )
inline

Normalize the quaternion.

bool aiQuaternion::operator!= ( const aiQuaternion o) const
inline
aiQuaternion aiQuaternion::operator* ( const aiQuaternion two) const
inline

Multiply two quaternions.

bool aiQuaternion::operator== ( const aiQuaternion o) const
inline
aiVector3D aiQuaternion::Rotate ( const aiVector3D in)
inline

Rotate a point by this quaternion.

Member Data Documentation

float aiQuaternion::w

w,x,y,z components of the quaternion

float aiQuaternion::x
float aiQuaternion::y
float aiQuaternion::z

The documentation for this struct was generated from the following file: