clan::Quaterniond Class Reference - ClanLib SDK
Description: clan::Quaterniond Class Reference

Public Member Functions | List of all members
clan::Quaterniond Class Reference
clanCore Math

Quaternion - Double. More...

`#include <quaternion.h>`

Inheritance diagram for clan::Quaterniond:

## Public Member Functions
| Quaterniond ()
| Quaterniond (const Angle &euler_x, const Angle &euler_y, const Angle &euler_z, EulerOrder order)
| Quaterniond (const Mat4< double > &rotation_matrix)
| Quaterniond (const Quaternionx< double > &copy)
| Quaterniond (const Vec3< double > &euler, AngleUnit unit, EulerOrder order)
| Quaterniond (double euler_x, double euler_y, double euler_z, AngleUnit unit, EulerOrder order)
| Quaterniond (double real, const Vec3< double > &imag)
| Quaterniond (double real, double i, double j, double k)
Public Member Functions inherited from clan::Quaternionx< double >
| Quaternionx ()
| Quaternionx (const Angle &euler_x, const Angle &euler_y, const Angle &euler_z, EulerOrder order)
| Quaternionx (const Mat4< double > &rotation_matrix)
| Quaternionx (const Quaternionx< double > &copy)
| Quaternionx (const Vec3< double > &euler, AngleUnit unit, EulerOrder order)
| Quaternionx (double euler_x, double euler_y, double euler_z, AngleUnit unit, EulerOrder order)
| Quaternionx (double real, const Vec3< double > &imag)
| Quaternionx (double real, double i, double j, double k)
Quaternionx< double > & | inverse ()
| Inverse this quaternion.
double | magnitude () const
| Get the quaternion magnitude.
Quaternionx< double > & | normalize ()
| Normalizes this quaternion.
bool | operator!= (const Quaternionx< double > &other) const
| Not equal operator.
Quaternionx< double > | operator* (const Mat4< double > &matrix) const
Quaternionx< double > | operator* (const Quaternionx< double > &mult) const
| Multiplication operator.
bool | operator< (const Quaternionx< double > &other) const
| Less operator.
bool | operator<= (const Quaternionx< double > &other) const
| Less equal operator.
bool | operator== (const Quaternionx< double > &other) const
| Equal operator.
bool | operator> (const Quaternionx< double > &other) const
| Greater operator.
bool | operator>= (const Quaternionx< double > &other) const
| Greater equal operator.
Quaternionx< double > & | rotate (const Angle &angle, const Vec3f &axis)
Quaternionx< double > & | rotate (const Angle &euler_x, const Angle &euler_y, const Angle &euler_z, EulerOrder order)
Vec3< double > | rotate_vector (const Vec3< double > &v) const
| Rotates vector by this quaternion.
Vec4< double > | rotate_vector (const Vec4< double > &v) const
void | set (const Angle &euler_x, const Angle &euler_y, const Angle &euler_z, EulerOrder order)
void | set (const Vec3< double > &euler, AngleUnit unit, EulerOrder order)
void | set (double euler_x, double euler_y, double euler_z, AngleUnit unit, EulerOrder order)
Mat4< double > | to_matrix () const
| Convert the quaternion to a rotation matrix.

## Additional Inherited Members
Static Public Member Functions inherited from clan::Quaternionx< double >
static Quaternionx< double > | axis_angle (const Angle &angle, const Vec3f &axis)
static Quaternionx< double > | inverse (Quaternionx< double > q)
| Inverse this quaternion.
static Quaternionx< double > | lerp (const Quaternionx< double > &quaternion_initial, const Quaternionx< double > &quaternion_final, double lerp_time)
| Linear Quaternion Interpolation.
static Quaternionx< double > | multiply (const Quaternionx< double > &quaternion_1, const Quaternionx< double > &quaternion_2)
static Quaternionx< double > | normalize (Quaternionx< double > q)
| Normalizes this quaternion.
static Quaternionx< double > | rotation_between (Vec3< double > v0, Vec3< double > v1)
| Calculates the shortest arc quaternion between two vectors.
static Quaternionx< double > | rotation_between (Vec4< double > v0, Vec4< double > v1)
| Calculates the shortest arc quaternion between two vectors.
static Quaternionx< double > | slerp (const Quaternionx< double > &quaternion_initial, const Quaternionx< double > &quaternion_final, double slerp_time)
| Spherical Quaternion Interpolation.
Public Attributes inherited from clan::Quaternionx< double >
union { |
Type i |
Type x |
}; |  |
| The imaginary vector part.
union { |
Type j |
Type y |
}; |  |
union { |
Type k |
Type z |
}; |  |
double | i
double | j
double | k
double | w
| The real scalar part.
double | x
double | y
double | z

## Detailed Description

Quaternion - Double.

## Constructor & Destructor Documentation

## ◆ Quaterniond() [1/8]

clan::Quaterniond::Quaterniond | ( |  | ) |
| inline

## ◆ Quaterniond() [2/8]

clan::Quaterniond::Quaterniond | ( | const Quaternionx< double > & | copy | ) |
| inline

## ◆ Quaterniond() [3/8]

clan::Quaterniond::Quaterniond | ( | const Mat4< double > & | rotation_matrix | ) |
| inlineexplicit

## ◆ Quaterniond() [4/8]

clan::Quaterniond::Quaterniond | ( | double | real,
|  | double | i,
|  | double | j,
|  | double | k )
| inlineexplicit

## ◆ Quaterniond() [5/8]

clan::Quaterniond::Quaterniond | ( | double | real,
|  | const Vec3< double > & | imag )
| inlineexplicit

## ◆ Quaterniond() [6/8]

clan::Quaterniond::Quaterniond | ( | double | euler_x,
|  | double | euler_y,
|  | double | euler_z,
|  | AngleUnit | unit,
|  | EulerOrder | order )
| inlineexplicit

## ◆ Quaterniond() [7/8]

clan::Quaterniond::Quaterniond | ( | const Vec3< double > & | euler,
|  | AngleUnit | unit,
|  | EulerOrder | order )
| inlineexplicit

## ◆ Quaterniond() [8/8]

clan::Quaterniond::Quaterniond | ( | const Angle & | euler_x,
|  | const Angle & | euler_y,
|  | const Angle & | euler_z,
|  | EulerOrder | order )
| inlineexplicit

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

- quaternion.h