Leonetienne/Eule
Homemade math library, mainly targetted towards computer graphics
|
3D rotation representation More...
#include <Quaternion.h>
Public Member Functions | |
Quaternion () | |
Quaternion (const Vector4d values) | |
Constructs by these raw values. More... | |
Quaternion (const Quaternion &q) | |
Copies this existing Quaternion. More... | |
Quaternion (const Vector3d eulerAngles) | |
Creates an quaternion from euler angles. More... | |
~Quaternion () | |
Quaternion | operator= (const Quaternion &q) |
Copies. More... | |
Quaternion | operator* (const Quaternion &q) const |
Multiplies (applies) More... | |
Quaternion | operator/ (Quaternion &q) const |
Divides (applies) More... | |
Quaternion & | operator*= (const Quaternion &q) |
Also multiplies. More... | |
Quaternion & | operator/= (const Quaternion &q) |
Also divides. More... | |
Vector3d | operator* (const Vector3d &p) const |
Will transform a 3d point around its origin. More... | |
bool | operator== (const Quaternion &q) const |
bool | operator!= (const Quaternion &q) const |
Quaternion | Inverse () const |
Quaternion | Conjugate () const |
Quaternion | UnitQuaternion () const |
Vector3d | RotateVector (const Vector3d &vec) const |
Will rotate a vector by this quaternion. More... | |
Vector3d | ToEulerAngles () const |
Will return euler angles representing this Quaternion's rotation. More... | |
Matrix4x4 | ToRotationMatrix () const |
Will return a rotation matrix representing this Quaternions rotation. More... | |
Vector4d | GetRawValues () const |
Will return the raw four-dimensional values. More... | |
Quaternion | AngleBetween (const Quaternion &other) const |
Will return the value between two Quaternion's as another Quaternion. More... | |
void | SetRawValues (const Vector4d values) |
Will set the raw four-dimensional values. More... | |
Quaternion | Lerp (const Quaternion &other, double t) const |
Will return the lerp result between two quaternions. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &os, const Quaternion &q) |
std::wostream & | operator<< (std::wostream &os, const Quaternion &q) |
3D rotation representation
Definition at line 10 of file Quaternion.h.
Quaternion::Quaternion | ( | ) |
Definition at line 11 of file Quaternion.cpp.
|
explicit |
Constructs by these raw values.
Definition at line 17 of file Quaternion.cpp.
Quaternion::Quaternion | ( | const Quaternion & | q | ) |
Copies this existing Quaternion.
Definition at line 23 of file Quaternion.cpp.
Quaternion::Quaternion | ( | const Vector3d | eulerAngles | ) |
Quaternion::~Quaternion | ( | ) |
Definition at line 97 of file Quaternion.cpp.
Quaternion Quaternion::AngleBetween | ( | const Quaternion & | other | ) | const |
Will return the value between two Quaternion's as another Quaternion.
Definition at line 295 of file Quaternion.cpp.
Quaternion Quaternion::Conjugate | ( | ) | const |
Definition at line 187 of file Quaternion.cpp.
Vector4d Quaternion::GetRawValues | ( | ) | const |
Will return the raw four-dimensional values.
Definition at line 290 of file Quaternion.cpp.
Quaternion Quaternion::Inverse | ( | ) | const |
Definition at line 175 of file Quaternion.cpp.
Quaternion Quaternion::Lerp | ( | const Quaternion & | other, |
double | t | ||
) | const |
Will return the lerp result between two quaternions.
Definition at line 309 of file Quaternion.cpp.
bool Quaternion::operator!= | ( | const Quaternion & | q | ) | const |
Definition at line 170 of file Quaternion.cpp.
Quaternion Quaternion::operator* | ( | const Quaternion & | q | ) | const |
Multiplies (applies)
Definition at line 111 of file Quaternion.cpp.
Will transform a 3d point around its origin.
Definition at line 160 of file Quaternion.cpp.
Quaternion & Quaternion::operator*= | ( | const Quaternion & | q | ) |
Quaternion Quaternion::operator/ | ( | Quaternion & | q | ) | const |
Divides (applies)
Definition at line 126 of file Quaternion.cpp.
Quaternion & Quaternion::operator/= | ( | const Quaternion & | q | ) |
Also divides.
Definition at line 152 of file Quaternion.cpp.
Quaternion Quaternion::operator= | ( | const Quaternion & | q | ) |
Copies.
Definition at line 102 of file Quaternion.cpp.
bool Quaternion::operator== | ( | const Quaternion & | q | ) | const |
Definition at line 165 of file Quaternion.cpp.
void Quaternion::SetRawValues | ( | const Vector4d | values | ) |
Will set the raw four-dimensional values.
Definition at line 300 of file Quaternion.cpp.
Vector3d Quaternion::ToEulerAngles | ( | ) | const |
Will return euler angles representing this Quaternion's rotation.
Definition at line 215 of file Quaternion.cpp.
Matrix4x4 Quaternion::ToRotationMatrix | ( | ) | const |
Will return a rotation matrix representing this Quaternions rotation.
Definition at line 246 of file Quaternion.cpp.
Quaternion Quaternion::UnitQuaternion | ( | ) | const |
Definition at line 192 of file Quaternion.cpp.
|
friend |
Definition at line 325 of file Quaternion.cpp.
|
friend |
Definition at line 331 of file Quaternion.cpp.