PixelLightAPI
.
|
Static Euler angles conversion tool class. More...
#include <EulerAngles.h>
Public Types | |
enum | EOrder { XYZs = 0, XYXs = 2, XZYs = 4, XZXs = 6, YZXs = 8, YZYs = 10, YXZs = 12, YXYs = 14, ZXYs = 16, ZXZs = 18, ZYXs = 20, ZYZs = 22, ZYXr = 1, XYXr = 3, YZXr = 5, XZXr = 7, XZYr = 9, YZYr = 11, ZXYr = 13, YXYr = 15, YXZr = 17, ZXZr = 19, XYZr = 21, ZYZr = 23 } |
Euler angles order. More... | |
Static Public Member Functions | |
static PLMATH_API void | ToQuaternion (float fAngleX, float fAngleY, float fAngleZ, Quaternion &qRotation, EOrder nOrder=XYZs) |
Sets a rotation quaternion by using three given Euler angles. | |
static PLMATH_API void | FromQuaternion (const Quaternion &qRotation, float &fAngleX, float &fAngleY, float &fAngleZ, EOrder nOrder=XYZs) |
Returns the Euler angles from a rotation quaternion. | |
static PLMATH_API void | ToMatrix (float fAngleX, float fAngleY, float fAngleZ, Matrix3x3 &mRot, EOrder nOrder=XYZs) |
Sets a rotation matrix by using three given Euler angles. | |
static PLMATH_API void | ToMatrix (float fAngleX, float fAngleY, float fAngleZ, Matrix3x4 &mRot, EOrder nOrder=XYZs) |
static PLMATH_API void | ToMatrix (float fAngleX, float fAngleY, float fAngleZ, Matrix4x4 &mRot, EOrder nOrder=XYZs) |
static PLMATH_API void | FromMatrix (const Matrix3x3 &mRot, float &fAngleX, float &fAngleY, float &fAngleZ, EOrder nOrder=XYZs) |
Returns the Euler angles from a rotation matrix. | |
static PLMATH_API void | FromMatrix (const Matrix3x4 &mRot, float &fAngleX, float &fAngleY, float &fAngleZ, EOrder nOrder=XYZs) |
static PLMATH_API void | FromMatrix (const Matrix4x4 &mRot, float &fAngleX, float &fAngleY, float &fAngleZ, EOrder nOrder=XYZs) |
Static Euler angles conversion tool class.
Euler angles order.
static PLMATH_API void PLMath::EulerAngles::ToQuaternion | ( | float | fAngleX, |
float | fAngleY, | ||
float | fAngleZ, | ||
Quaternion & | qRotation, | ||
EOrder | nOrder = XYZs |
||
) | [static] |
Sets a rotation quaternion by using three given Euler angles.
[in] | fAngleX | Rotation angle around the x axis (in radian) where fAngleX > 0 indicates a counterclockwise rotation in the yz-plane (if you look along -x) |
[in] | fAngleY | Rotation angle around the y axis (in radian) where fAngleY > 0 indicates a counterclockwise rotation in the zx-plane (if you look along -y) |
[in] | fAngleZ | Rotation angle around the z axis (in radian) where fAngleZ > 0 indicates a counterclockwise rotation in the xy-plane (if you look along -z) |
[out] | qRotation | Resulting rotation quaternion |
[in] | nOrder | Order of the Euler angles |
static PLMATH_API void PLMath::EulerAngles::FromQuaternion | ( | const Quaternion & | qRotation, |
float & | fAngleX, | ||
float & | fAngleY, | ||
float & | fAngleZ, | ||
EOrder | nOrder = XYZs |
||
) | [static] |
Returns the Euler angles from a rotation quaternion.
[in] | qRotation | Rotation quaternion |
[out] | fAngleX | Will receive the rotation angle around the x axis (in radian) |
[out] | fAngleY | Will receive the rotation angle around the y axis (in radian) |
[out] | fAngleZ | Will receive the rotation angle around the z axis (in radian) |
[in] | nOrder | Order of the Euler angles |
static PLMATH_API void PLMath::EulerAngles::ToMatrix | ( | float | fAngleX, |
float | fAngleY, | ||
float | fAngleZ, | ||
Matrix3x3 & | mRot, | ||
EOrder | nOrder = XYZs |
||
) | [static] |
Sets a rotation matrix by using three given Euler angles.
[in] | fAngleX | Rotation angle around the x axis (in radian) where fAngleX > 0 indicates a counterclockwise rotation in the yz-plane (if you look along -x) |
[in] | fAngleY | Rotation angle around the y axis (in radian) where fAngleY > 0 indicates a counterclockwise rotation in the zx-plane (if you look along -y) |
[in] | fAngleZ | Rotation angle around the z axis (in radian) where fAngleZ > 0 indicates a counterclockwise rotation in the xy-plane (if you look along -z) |
[out] | mRot | Resulting rotation matrix |
[in] | nOrder | Order of the Euler angles |
static PLMATH_API void PLMath::EulerAngles::ToMatrix | ( | float | fAngleX, |
float | fAngleY, | ||
float | fAngleZ, | ||
Matrix3x4 & | mRot, | ||
EOrder | nOrder = XYZs |
||
) | [static] |
static PLMATH_API void PLMath::EulerAngles::ToMatrix | ( | float | fAngleX, |
float | fAngleY, | ||
float | fAngleZ, | ||
Matrix4x4 & | mRot, | ||
EOrder | nOrder = XYZs |
||
) | [static] |
static PLMATH_API void PLMath::EulerAngles::FromMatrix | ( | const Matrix3x3 & | mRot, |
float & | fAngleX, | ||
float & | fAngleY, | ||
float & | fAngleZ, | ||
EOrder | nOrder = XYZs |
||
) | [static] |
Returns the Euler angles from a rotation matrix.
[in] | mRot | Rotation matrix |
[out] | fAngleX | Will receive the rotation angle around the x axis (in radian) |
[out] | fAngleY | Will receive the rotation angle around the y axis (in radian) |
[out] | fAngleZ | Will receive the rotation angle around the z axis (in radian) |
[in] | nOrder | Order of the Euler angles |
static PLMATH_API void PLMath::EulerAngles::FromMatrix | ( | const Matrix3x4 & | mRot, |
float & | fAngleX, | ||
float & | fAngleY, | ||
float & | fAngleZ, | ||
EOrder | nOrder = XYZs |
||
) | [static] |
static PLMATH_API void PLMath::EulerAngles::FromMatrix | ( | const Matrix4x4 & | mRot, |
float & | fAngleX, | ||
float & | fAngleY, | ||
float & | fAngleZ, | ||
EOrder | nOrder = XYZs |
||
) | [static] |
|