00001
00002
00003 #ifndef QuatH
00004 #define QuatH
00005
00006 #include "vector.h"
00007
00008 class QUAT
00009 {
00010 public:
00011 QUAT(float sx = 0, float sy = 0, float sz = 0, float sw = 1);
00012 ~QUAT();
00013
00014 void Reset();
00015 void CopyQuat(QUAT q);
00016 void Set(float sx, float sy, float sz, float sw) {x = sx, y = sy, z = sz, w = sw;}
00017 void AxisAngleToQuat(VECTOR axis, float theta);
00018 void EulerToQuat(float pitch, float yaw, float roll);
00019 void NormaliseQuat();
00020 float MagnitudeQuat();
00021 void MultQuat(QUAT q);
00022
00023 float x;
00024 float y;
00025 float z;
00026 float w;
00027 };
00028
00029
00030 #endif
00031