00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00023 #ifndef INCLUDE_ANGLES_H
00024 #define INCLUDE_ANGLES_H
00025
00026 #include "trigo.h"
00027 #include "include/quaternion.h"
00028
00029
00030 class Angles
00031 {
00032 private:
00033 Quaternion quaternion;
00034 Point3D<double> euler;
00035 BOOL isUpdatedEuler;
00036 BOOL isUpdatedQuaternion;
00037
00038 void Zero();
00039
00040 public:
00041 Angles();
00042 Point3D<double> GetEuler();
00043 void operator= (Angles &src);
00044
00045 Angles(Point3D<double> &relativeAngles);
00046 void Rotate(Point3D<double> &relativeAngles);
00047 void Set(Point3D<double> &relativeAngles);
00048 void Add(Point3D<double> &relativeAngles);
00049
00050 Angles(double x,double y,double z) ;
00051 void Rotate(double x,double y,double z);
00052 void Set(double x,double y,double z);
00053 void Add(double x,double y,double z);
00054 };
00055
00056 #endif