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

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

Quaternion - Float. More...

`#include <quaternion.h>`

Inheritance diagram for clan::Quaternionf:

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

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

## Detailed Description

Quaternion - Float.

## Constructor & Destructor Documentation

## ◆ Quaternionf() [1/8]

clan::Quaternionf::Quaternionf | ( |  | ) |
| inline

## ◆ Quaternionf() [2/8]

clan::Quaternionf::Quaternionf | ( | const Quaternionx< float > & | copy | ) |
| inline

## ◆ Quaternionf() [3/8]

clan::Quaternionf::Quaternionf | ( | const Mat4< float > & | rotation_matrix | ) |
| inlineexplicit

## ◆ Quaternionf() [4/8]

clan::Quaternionf::Quaternionf | ( | float | real,
|  | float | i,
|  | float | j,
|  | float | k )
| inlineexplicit

## ◆ Quaternionf() [5/8]

clan::Quaternionf::Quaternionf | ( | float | real,
|  | const Vec3< float > & | imag )
| inlineexplicit

## ◆ Quaternionf() [6/8]

clan::Quaternionf::Quaternionf | ( | float | euler_x,
|  | float | euler_y,
|  | float | euler_z,
|  | AngleUnit | unit,
|  | EulerOrder | order )
| inlineexplicit

## ◆ Quaternionf() [7/8]

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

## ◆ Quaternionf() [8/8]

clan::Quaternionf::Quaternionf | ( | 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