![]() |
OGRE
1.10.12
Object-Oriented Graphics Rendering Engine
|
Implementation of a dual quaternion, i.e. More...
#include <OgreDualQuaternion.h>
Public Member Functions | |
| DualQuaternion () | |
| Default constructor, initializes to identity rotation (aka 0°), and zero translation (0,0,0) More... | |
| DualQuaternion (Real fW, Real fX, Real fY, Real fZ, Real fdW, Real fdX, Real fdY, Real fdZ) | |
| Construct from an explicit list of values. More... | |
| DualQuaternion (const Matrix4 &rot) | |
| Construct a dual quaternion from a transformation matrix. More... | |
| DualQuaternion (const Quaternion &q, const Vector3 &trans) | |
| Construct a dual quaternion from a unit quaternion and a translation vector. More... | |
| DualQuaternion (Real *valptr) | |
| Construct a dual quaternion from 8 manual w/x/y/z/dw/dx/dy/dz values. More... | |
| void | fromRotationTranslation (const Quaternion &q, const Vector3 &trans) |
| Construct a dual quaternion from a rotation described by a Quaternion and a translation described by a Vector3. More... | |
| void | fromTransformationMatrix (const Matrix4 &kTrans) |
| Construct a dual quaternion from a 4x4 transformation matrix. More... | |
| bool | isNaN () const |
| Check whether this dual quaternion contains valid values. More... | |
| bool | operator!= (const DualQuaternion &rhs) const |
| DualQuaternion & | operator= (const DualQuaternion &rkQ) |
| bool | operator== (const DualQuaternion &rhs) const |
| Real | operator[] (const size_t i) const |
| Array accessor operator. More... | |
| Real & | operator[] (const size_t i) |
| Array accessor operator. More... | |
| Real * | ptr () |
| Pointer accessor for direct copying. More... | |
| const Real * | ptr () const |
| Pointer accessor for direct copying. More... | |
| void | swap (DualQuaternion &other) |
| Exchange the contents of this dual quaternion with another. More... | |
| void | toRotationTranslation (Quaternion &q, Vector3 &translation) const |
| Convert a dual quaternion into its two components, a Quaternion representing the rotation and a Vector3 representing the translation. More... | |
| void | toTransformationMatrix (Matrix4 &kTrans) const |
| Convert a dual quaternion to a 4x4 transformation matrix. More... | |
Public Attributes | |
| Real | dw |
| Real | dx |
| Real | dy |
| Real | dz |
| Real | w |
| Real | x |
| Real | y |
| Real | z |
Friends | |
| _OgreExport friend std::ostream & | operator<< (std::ostream &o, const DualQuaternion &q) |
| Function for writing to a stream. More... | |
Implementation of a dual quaternion, i.e.
a rotation around an axis and a translation. This implementation may note be appropriate as a general implementation, but is intended for use with dual quaternion skinning.
|
inline |
Default constructor, initializes to identity rotation (aka 0°), and zero translation (0,0,0)
|
inline |
Construct from an explicit list of values.
|
inline |
Construct a dual quaternion from a transformation matrix.
|
inline |
Construct a dual quaternion from a unit quaternion and a translation vector.
|
inline |
Construct a dual quaternion from 8 manual w/x/y/z/dw/dx/dy/dz values.
|
inline |
Array accessor operator.
|
inline |
Array accessor operator.
|
inline |
|
inline |
|
inline |
References Ogre::operator==().
|
inline |
Pointer accessor for direct copying.
|
inline |
Pointer accessor for direct copying.
|
inline |
|
inline |
Check whether this dual quaternion contains valid values.
References Ogre::Math::isNaN().
| void Ogre::DualQuaternion::fromRotationTranslation | ( | const Quaternion & | q, |
| const Vector3 & | trans | ||
| ) |
Construct a dual quaternion from a rotation described by a Quaternion and a translation described by a Vector3.
| void Ogre::DualQuaternion::toRotationTranslation | ( | Quaternion & | q, |
| Vector3 & | translation | ||
| ) | const |
Convert a dual quaternion into its two components, a Quaternion representing the rotation and a Vector3 representing the translation.
| void Ogre::DualQuaternion::fromTransformationMatrix | ( | const Matrix4 & | kTrans | ) |
Construct a dual quaternion from a 4x4 transformation matrix.
| void Ogre::DualQuaternion::toTransformationMatrix | ( | Matrix4 & | kTrans | ) | const |
Convert a dual quaternion to a 4x4 transformation matrix.
|
friend |
Function for writing to a stream.
Outputs "DualQuaternion(w, x, y, z, dw, dx, dy, dz)" with w, x, y, z, dw, dx, dy, dz being the member values of the dual quaternion.
| Real Ogre::DualQuaternion::w |
Referenced by operator=(), operator==(), and swap().
| Real Ogre::DualQuaternion::x |
Referenced by operator=(), operator==(), and swap().
| Real Ogre::DualQuaternion::y |
Referenced by operator=(), operator==(), and swap().
| Real Ogre::DualQuaternion::z |
Referenced by operator=(), operator==(), and swap().
| Real Ogre::DualQuaternion::dw |
Referenced by operator=(), operator==(), and swap().
| Real Ogre::DualQuaternion::dx |
Referenced by operator=(), operator==(), and swap().
| Real Ogre::DualQuaternion::dy |
Referenced by operator=(), operator==(), and swap().
| Real Ogre::DualQuaternion::dz |
Referenced by operator=(), operator==(), and swap().