|
Jpp
|
Data structure for quaternion in three dimensions. More...
#include <JQuaternion3D.hh>
Public Member Functions | |
| JQuaternion3D () | |
| Default constructor. More... | |
| JQuaternion3D (const double a, const double b, const double c, const double d) | |
| Constructor. More... | |
| JQuaternion3D (const double theta, const JVersor3D &dir) | |
| Constructor. More... | |
| JQuaternion3D (const JQuaternion3X &qx, const JQuaternion3Y &qy, const JQuaternion3Z &qz) | |
| Constructor. More... | |
| const JQuaternion3D & | getQuaternion () const |
| Get quaternion. More... | |
| JQuaternion3D & | getQuaternion () |
| Get quaternion. More... | |
| void | setQuaternion (const JQuaternion3D &quaternion) |
| Set quaternion. More... | |
| operator JVector3D () const | |
| Type conversion operator. More... | |
| operator JVersor3D () const | |
| Type conversion operator. More... | |
| double | getA () const |
| Get a value. More... | |
| double | getB () const |
| Get b value. More... | |
| double | getC () const |
| Get c value. More... | |
| double | getD () const |
| Get d value. More... | |
| JQuaternion3D & | setIdentity () |
| Set to identity matrix. More... | |
| JQuaternion3D & | conjugate () |
| Conjugate quaternion. More... | |
| JQuaternion3D & | negate () |
| Negate quaternion. More... | |
| JQuaternion3D & | add (const JQuaternion3D &quaternion) |
| Add quaternion. More... | |
| JQuaternion3D & | sub (const JQuaternion3D &quaternion) |
| Subtract quaternion. More... | |
| JQuaternion3D & | mul (const double factor) |
| Scale quaternion. More... | |
| JQuaternion3D & | div (const double factor) |
| Scale quaternion. More... | |
| JQuaternion3D & | mul (const JQuaternion3D &first, const JQuaternion3X &second) |
| Quaternion multiplicaion. More... | |
| JQuaternion3D & | mul (const JQuaternion3D &first, const JQuaternion3Y &second) |
| Quaternion multiplicaion. More... | |
| JQuaternion3D & | mul (const JQuaternion3D &first, const JQuaternion3Z &second) |
| Quaternion multiplicaion. More... | |
| JQuaternion3D & | mul (const JQuaternion3D &first, const JQuaternion3D &second) |
| Quaternion multiplicaion. More... | |
| JQuaternion3D & | mul (const JQuaternion3X &qx, const JQuaternion3Y &qy, const JQuaternion3Z &qz) |
| Quaternion multiplicaion. More... | |
| void | rotate (double &__x, double &__y, double &__z) const |
| Rotate. More... | |
| void | rotate_back (double &__x, double &__y, double &__z) const |
| Rotate back. More... | |
| bool | equals (const JQuaternion3D &quaternion, const double precision=std::numeric_limits< double >::min()) const |
| Check equality. More... | |
| double | getLengthSquared () const |
| Get length squared. More... | |
| double | getLength () const |
| Get length. More... | |
| double | getDistanceSquared (const JQuaternion3D &quaternion) const |
| Get squared of distance to quaternion. More... | |
| double | getDistance (const JQuaternion3D &quaternion) const |
| Get distance to quaternion. More... | |
| double | getDot (const JQuaternion3D &quaternion) const |
| Get dot product. More... | |
| JFirst_t & | mul (const JSecond_t &object) |
| Multiply with object. More... | |
Protected Attributes | |
| double | __a |
| double | __b |
| double | __c |
| double | __d |
Friends | |
| std::istream & | operator>> (std::istream &in, JQuaternion3D &quaternion) |
| Write quaternion from input. More... | |
| std::ostream & | operator<< (std::ostream &out, const JQuaternion3D &quaternion) |
| Write quaternion to output. More... | |
| JReader & | operator>> (JReader &in, JQuaternion3D &quaternion) |
| Read quaternion from input. More... | |
| JWriter & | operator<< (JWriter &out, const JQuaternion3D &quaternion) |
| Write quaternion to output. More... | |
Data structure for quaternion in three dimensions.
This class implements the JMATH::JMath and JLANG::JEquals interfaces.
Definition at line 240 of file JQuaternion3D.hh.
|
inline |
|
inline |
|
inline |
Constructor.
This constructor represents a rotation around the given axis by the given angle.
| theta | rotation angle [rad] |
| dir | rotation axis |
Definition at line 293 of file JQuaternion3D.hh.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Quaternion multiplicaion.
This method evaluates the Hamilton product (also called cross product).
| first | first quaternion |
| second | second quaternion |
Definition at line 548 of file JQuaternion3D.hh.
|
inline |
Quaternion multiplicaion.
This method evaluates the Hamilton product (or cross product).
| first | first quaternion |
| second | second quaternion |
Definition at line 568 of file JQuaternion3D.hh.
|
inline |
Quaternion multiplicaion.
This method evaluates the Hamilton product (or cross product).
| first | first quaternion |
| second | second quaternion |
Definition at line 589 of file JQuaternion3D.hh.
|
inline |
Quaternion multiplicaion.
This method evaluates the Hamilton product (or cross product).
| first | first quaternion |
| second | second quaternion |
Definition at line 610 of file JQuaternion3D.hh.
|
inline |
Quaternion multiplicaion.
| qx | rotation around x-axis |
| qy | rotation around y-axis |
| qz | rotation around x-axis |
Definition at line 630 of file JQuaternion3D.hh.
|
inline |
Rotate.
| __x | x value |
| __y | y value |
| __z | z value |
Definition at line 645 of file JQuaternion3D.hh.
|
inline |
Rotate back.
| __x | x value |
| __y | y value |
| __z | z value |
Definition at line 668 of file JQuaternion3D.hh.
|
inline |
Check equality.
| quaternion | quaternion |
| precision | numerical precision |
Definition at line 691 of file JQuaternion3D.hh.
|
inline |
|
inline |
|
inline |
Get squared of distance to quaternion.
| quaternion | quaternion |
Definition at line 729 of file JQuaternion3D.hh.
|
inline |
Get distance to quaternion.
| quaternion | quaternion |
Definition at line 741 of file JQuaternion3D.hh.
|
inline |
|
inlineinherited |
Multiply with object.
| object | object |
Definition at line 273 of file JMath.hh.
|
friend |
|
friend |
Write quaternion to output.
| out | output stream |
| quaternion | quaternion |
Definition at line 788 of file JQuaternion3D.hh.
|
friend |
|
friend |
|
protected |
Definition at line 835 of file JQuaternion3D.hh.
|
protected |
Definition at line 836 of file JQuaternion3D.hh.
|
protected |
Definition at line 837 of file JQuaternion3D.hh.
|
protected |
Definition at line 838 of file JQuaternion3D.hh.
1.8.16