# include <cmath>
#endif
+#ifndef M_PI
+# include <simgear/constants.h>
+# define M_PI FG_PI
+#endif
+
#include "FGModel.h"
#include "FGMatrix.h"
-using namespace std;
-
/*******************************************************************************
CLASS DECLARATION
*******************************************************************************/
-#pragma warn -8026
-
class FGRotation : public FGModel
{
FGColumnVector vPQR;
+ FGColumnVector vPQRdot;
FGColumnVector vMoments;
FGColumnVector vEuler;
-
+ FGColumnVector vEulerRates;
+
+ float cTht,sTht;
+ float cPhi,sPhi;
+ float cPsi,sPsi;
+
float Ixx, Iyy, Izz, Ixz;
float dt;
bool Run(void);
inline FGColumnVector GetPQR(void) {return vPQR;}
+ inline FGColumnVector GetPQRdot(void) {return vPQRdot;}
inline FGColumnVector GetEuler(void) {return vEuler;}
+ inline FGColumnVector GetEulerRates(void) { return vEulerRates; }
inline void SetPQR(FGColumnVector tt) {vPQR = tt;}
inline void SetEuler(FGColumnVector tt) {vEuler = tt;}
+
inline float Getphi(void) {return vEuler(1);}
inline float Gettht(void) {return vEuler(2);}
inline float Getpsi(void) {return vEuler(3);}
+
+ inline float GetCosphi(void) {return cPhi;}
+ inline float GetCostht(void) {return cTht;}
+ inline float GetCospsi(void) {return cPsi;}
+
+ inline float GetSinphi(void) {return sPhi;}
+ inline float GetSintht(void) {return sTht;}
+ inline float GetSinpsi(void) {return sPsi;}
+
+
+
};
-#pragma warn .8026
/******************************************************************************/
#endif