Ocular Engine
|
#include <Euler.hpp>
Public Member Functions | |
Euler (float const pPitch, float const pYaw, float const pRoll) | |
Euler (Vector3< float > const &vector) | |
Euler (Matrix3x3 const &rotationMatrix) | |
Euler (Quaternion const &quaternion) | |
float | getYaw () const |
float | getYawRadians () const |
float | getPitch () const |
float | getPitchRadians () const |
float | getRoll () const |
float | getRollRadians () const |
void | setYaw (float const yaw) |
void | setYawRadians (float const yaw) |
void | setPitch (float const pitch) |
void | setPitchRadians (float const pitch) |
void | setRoll (float const roll) |
void | setRollRadians (float const roll) |
Matrix3x3 | toRotationMatrix () const |
Quaternion | toQuaternion () const |
void | normalize () |
Euler | getNormalized () const |
void | denormalize () |
Euler | getDenormalized () const |
Static Public Member Functions | |
static float | normalizeAxis (float const &angle) |
static float | denormalizeAxis (float const &angle) |
Friends | |
class | Matrix3x3 |
class | Quaternion |
Implementation of Euler (Tait-Bryan) angles - yaw, pitch, roll. In NASA Standard Aeroplace notation, these correspond to heading, altitude, and bearing respectively.
All input and output from the Euler class is in degrees, but internally the components are stored as radians.
Ocular::Math::Euler::Euler | ( | float const | pPitch, |
float const | pYaw, | ||
float const | pRoll | ||
) |
[in] | pPitch | Rotation (in degrees) around the local x-axis |
[in] | pYaw | Rotation (in degrees) around the local y-axis |
[in] | pRoll | Rotation (in degrees) around the local z-axis |
Ocular::Math::Euler::Euler | ( | Vector3< float > const & | vector | ) |
[in] | vector | Vector expected in form of (Pitch, Yaw, Roll) or (X-Rotation, Y-Rotation, Z-Rotation) |
Ocular::Math::Euler::Euler | ( | Matrix3x3 const & | rotationMatrix | ) |
Initializes the Euler angles from a rotation matrix.
[in] | rotationMatrix |
Ocular::Math::Euler::Euler | ( | Quaternion const & | quaternion | ) |
Initializes the Euler angles from a quaternion.
[in] | quaternion |
void Ocular::Math::Euler::denormalize | ( | ) |
|
static |
[in] | angle |
float Ocular::Math::Euler::getPitch | ( | ) | const |
float Ocular::Math::Euler::getPitchRadians | ( | ) | const |
float Ocular::Math::Euler::getRoll | ( | ) | const |
float Ocular::Math::Euler::getRollRadians | ( | ) | const |
float Ocular::Math::Euler::getYaw | ( | ) | const |
float Ocular::Math::Euler::getYawRadians | ( | ) | const |
void Ocular::Math::Euler::normalize | ( | ) |
|
static |
[in] | angle |
void Ocular::Math::Euler::setPitch | ( | float const | pitch | ) |
Directly sets the pitch of this Euler angles. This method should only be used if you know exactly what you are doing.
[in] | pitch | The Pitch in degrees. |
void Ocular::Math::Euler::setPitchRadians | ( | float const | pitch | ) |
[in] | pitch | The Pitch in radians. |
void Ocular::Math::Euler::setRoll | ( | float const | roll | ) |
Directly sets the roll of this Euler angles. This method should only be used if you know exactly what you are doing.
[in] | roll | The Roll in degrees. |
void Ocular::Math::Euler::setRollRadians | ( | float const | roll | ) |
[in] | roll | The Roll in radians. |
void Ocular::Math::Euler::setYaw | ( | float const | yaw | ) |
Directly sets the yaw of this Euler angles. This method should only be used if you know exactly what you are doing.
[in] | yaw | The Yaw in degrees. |
void Ocular::Math::Euler::setYawRadians | ( | float const | yaw | ) |
[in] | yaw | The Yaw in radians. |
Quaternion Ocular::Math::Euler::toQuaternion | ( | ) | const |
Converts this Euler angle representation of a rotation to a Quaternion.
Matrix3x3 Ocular::Math::Euler::toRotationMatrix | ( | ) | const |
Converts this Euler angle representation of a rotation to a 3x3 rotation matrix.