This class describes a dual quaternion. More...
Public Attributes | |
SBDual | w |
The first component of the dual quaternion. | |
SBDual | x |
The second component of the dual quaternion. | |
SBDual | y |
The third component of the dual quaternion. | |
SBDual | z |
The fourth component of the dual quaternion. | |
Constructors | |
SBDTypeDualQuaternion () | |
Constructs a dual quaternion with components set to zero. | |
SBDTypeDualQuaternion (double v[8]) | |
Constructs a dual quaternion such that w=(v [0], v [1]), x=(v [2], v [3]), y=(v [4], v [5]), z=(v [6], v [7]) | |
SBDTypeDualQuaternion (const SBDTypeDual &w, const SBDTypeDual &x, const SBDTypeDual &y, const SBDTypeDual &z) | |
Constructs a dual quaternion from dual numbers w , x , y and z . | |
SBDTypeDualQuaternion (double wa, double xa, double ya, double za, double wb, double xb, double yb, double zb) | |
Constructs a dual quaternion such that w=(wa , wb ), x=(xa , xb ), y=(ya , yb ), z=(za , zb ) | |
SBDTypeDualQuaternion (const SBQuantity::dimensionless &wa, const SBQuantity::dimensionless &xa, const SBQuantity::dimensionless &ya, const SBQuantity::dimensionless &za, const SBQuantity::dimensionless &wb, const SBQuantity::dimensionless &xb, const SBQuantity::dimensionless &yb, const SBQuantity::dimensionless &zb) | |
Constructs a dual quaternion such that w=(wa , wb ), x=(xa , xb ), y=(ya , yb ), z=(za , zb ) | |
Serialization | |
virtual bool | isSerializable () const |
Returns true. | |
virtual void | serialize (SBCSerializer *serializer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER) const |
Serializes the dual quaternion. | |
virtual void | unserialize (SBCSerializer *serializer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER) |
Unserializes the dual quaternion. | |
Operators | |
SBDTypeDualQuaternion | operator+ (const SBDTypeDualQuaternion &d) const |
Returns the sum of this dual quaternion with dual quaternion d . | |
SBDTypeDualQuaternion | operator- (const SBDTypeDualQuaternion &d) const |
Returns the difference between this dual quaternion and dual quaternion d . | |
SBDTypeDualQuaternion | operator* (const SBDTypeDualQuaternion &d) const |
Returns the product of this dual quaternion with dual quaternion d . | |
SBDTypeDualQuaternion | operator* (double d) const |
Returns the product of this dual quaternion with double d . | |
SBDTypeDualQuaternion | operator* (const SBQuantity::dimensionless &d) const |
Returns the product of this dual quaternion with dimensionless quantity d . | |
SBDTypeDualQuaternion & | operator+= (const SBDTypeDualQuaternion &d) |
Adds dual quaternion d to this dual quaternion. | |
SBDTypeDualQuaternion & | operator-= (const SBDTypeDualQuaternion &d) |
Subtracts dual quaternion d from this dual quaternion. | |
SBDTypeDualQuaternion & | operator*= (const SBDTypeDualQuaternion &d) |
Multiplies this dual quaternion with dual quaternion d . | |
SBDTypeDualQuaternion & | operator*= (double d) |
Multiplies this dual quaternion with double d . | |
SBDTypeDualQuaternion & | operator*= (const SBQuantity::dimensionless &d) |
Multiplies this dual quaternion with dimensionless quantity d . | |
Useful functions | |
SBDTypeDual | norm () const |
Returns the norm of the dual quaternion. | |
void | normalize () |
Normalizes the dual quaternion. | |
SBDTypeDualQuaternion | normalizedVersion () const |
Returns the normalized version of the dual quaternion. | |
SBDTypeDualQuaternion | conjugate () const |
Returns the conjugate of the dual quaternion. | |
SBDTypeDualQuaternion | biconjugate () const |
Returns the bi-conjugate of the dual quaternion. | |
void | print () const |
Prints the dual quaternion. | |
This class describes dual quaternions, which may be used to represent and interpolate rigid body positions and orientations. Dual quaternions are quaternions whose components are dual numbers.
Short name: SBDualQuaternion