9 #ifndef _LIBALMATH_ALMATH_TYPES_ALQUATERNION_H_
10 #define _LIBALMATH_ALMATH_TYPES_ALQUATERNION_H_
118 w*pQua2.
w -
x*pQua2.
x -
y*pQua2.
y -
z*pQua2.
z,
119 w*pQua2.
x + pQua2.
w*
x +
y*pQua2.
z -
z*pQua2.
y,
120 w*pQua2.
y + pQua2.
w*
y +
z*pQua2.
x -
x*pQua2.
z,
121 w*pQua2.
z + pQua2.
w*
z +
x*pQua2.
y -
y*pQua2.
x);
176 const float& pEpsilon=0.0001f)
const;
224 void toVector(std::vector<float>& pReturnVector)
const;
225 std::vector<float> toVector(
void)
const;
238 float norm(
const Quaternion& pQua);
250 Quaternion
normalize(
const Quaternion& pQua);
261 const Quaternion& pQua,
262 Quaternion& pQuaOut);
306 const Quaternion& pQuaternion,
322 const Quaternion& pQuaternion);
327 #endif // _LIBALMATH_ALMATH_TYPES_ALQUATERNION_H_
float norm() const
Compute the norm of the actual Quaternion.
Quaternion operator/(float pVal) const
Overloading of operator / for Quaternion.
float norm(const Quaternion &pQua)
Compute the norm of a Quaternion:
bool isNear(const Quaternion &pQua2, const float &pEpsilon=0.0001f) const
Check if the actual Quaternion is near the one give in argument.
Quaternion()
Create a Quaternion initialize with 0.0f.
Quaternion & operator*=(const Quaternion &pQua2)
Overloading of operator *= for Quaternion.
Quaternion quaternionFromAngleAndAxisRotation(const float pAngle, const float pAxisX, const float pAxisY, const float pAxisZ)
Create a Quaternion initialized with explicit angle and axis rotation.
Quaternion operator*(const Quaternion &pQua2) const
Overloading of operator * for Quaternion.
Quaternion & operator/=(float pVal)
Overloading of operator /= for Quaternion.
std::vector< float > angleAndAxisRotationFromQuaternion(const Quaternion &pQuaternion)
Compute angle and axis rotation from a Quaternion.
Quaternion quaternionInverse(const Quaternion &pQua)
Return the quaternion inverse of the given Quaternion
bool operator!=(const Quaternion &pQua2) const
Overloading of operator != for Quaternion.
Quaternion inverse() const
Compute the quaternion inverse of the actual Quaternion
bool operator==(const Quaternion &pQua2) const
Overloading of operator == for Quaternion.
Create and play with a Quaternion.
Quaternion normalize(const Quaternion &pQua)
Normalize a Quaternion:
Quaternion normalize() const
Normalize the actual Quaterion.
static Quaternion fromAngleAndAxisRotation(const float pAngle, const float pAxisX, const float pAxisY, const float pAxisZ)
Create a Quaternion initialized with explicit angle and axis rotation.