18 #ifndef __H__OCULAR_MATH_QUATERNION__H__
19 #define __H__OCULAR_MATH_QUATERNION__H__
21 #include "MathCommon.hpp"
22 #include "Utilities/Types.hpp"
38 template<
typename T>
class Vector3;
39 template<
typename T>
class Vector4;
45 struct Quaternion_Internal;
61 Quaternion(
float w,
float x,
float y,
float z);
182 float getLength()
const;
187 float getYaw()
const;
192 float getPitch()
const;
197 float getRoll()
const;
202 float getAngle()
const;
Definition: Matrix3x3.hpp:39
static Quaternion Bilerp(Quaternion const &q00, Quaternion const &q10, Quaternion const &q01, Quaternion const &q11, float x, float y)
Definition: Quaternion.cpp:383
void inverse()
Definition: Quaternion.cpp:287
void normalize()
Definition: Quaternion.cpp:302
static Quaternion Slerp(Quaternion const &a, Quaternion const &b, float f)
Definition: Quaternion.cpp:378
Quaternion getNormalized() const
Definition: Quaternion.cpp:307
Quaternion getInverse() const
Definition: Quaternion.cpp:292
Note: Once this library is made dynamic, this will no longer be needed.
Definition: Common.hpp:70
Definition: Quaternion.hpp:50
Quaternion getConjugate() const
Definition: Quaternion.cpp:297
A 3x3 column-major float matrix.
Definition: Matrix3x3.hpp:63
static Quaternion Lerp(Quaternion const &a, Quaternion const &b, float f)
Definition: Quaternion.cpp:373
Quaternion_Internal * getInternal() const
Definition: Quaternion.cpp:392
static Quaternion CreateLookAtRotation(Vector3< float > const &from, Vector3< float > const &to, Vector3< float > const &up)
Definition: Quaternion.cpp:352
A 4x4 column-major float matrix.
Definition: Matrix4x4.hpp:64
Definition: MathInternal.hpp:60