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