26 #ifndef __QUATERNION_H
27 #define __QUATERNION_H
44 Quaternion(
float val0,
float val1,
float val2,
float val3)
54 setFromAngleAxis(angle, axis);
59 setFromAngles(xAngle, yAngle, zAngle);
64 slerp(q1, q2, interpolation);
75 return Quaternion(-values[0], -values[1], -values[2], -values[3]);
80 if(values[0] == quat.
values[0] &&
81 values[1] == quat.
values[1] &&
82 values[2] == quat.
values[2] &&
83 values[3] == quat.
values[3])
91 return !((*this) == quat);
97 void loadIdentity(
void);
98 void setFromAngles(
float xAngle,
float yAngle,
float zAngle);
101 void setFromAngleAxis(
float angle,
const Vector3 & axis);
102 void setFromVectors(
const Vector3 & source,
const Vector3 & destination);
104 Vector3 getEulerAngles(
void)
const;
106 float getAngle(
void)
const;
Quaternion(float val0, float val1, float val2, float val3)
Definition: Quaternion.h:44
Quaternion(void)
Definition: Quaternion.h:39
Quaternion(float xAngle, float yAngle, float zAngle)
Definition: Quaternion.h:57
float values[4]
Definition: Quaternion.h:35
Quaternion(float angle, const Vector3 &axis)
Definition: Quaternion.h:52
Quaternion(const Quaternion &q1, Quaternion q2, float interpolation)
Definition: Quaternion.h:62
Definition: Quaternion.h:31