Earth Observation Mission CFI Software Lib Software User Manual |
00001 //-------------------------------------------------------------------- 00002 // CVS Info: $Id: LibFunc.h,v 1.3 2009/04/13 13:30:10 expcfi Exp $ 00003 //-------------------------------------------------------------------- 00004 00005 #ifndef _EECFI_LIBFUNC_H 00006 #define _EECFI_LIBFUNC_H 00007 00008 00009 //--INCLUDE----------------------------------------------------------- 00010 #include "LibData.h" 00011 #include "CfiClass.h" 00012 #include "CfiError.h" 00013 00014 //--NAMESPACES-------------------------------------------------------- 00015 using namespace std; 00016 00017 namespace EECFI 00018 { 00022 class LibFunc: public CfiClass 00023 { 00024 public: 00025 00027 LibFunc(){}; 00028 00030 virtual ~LibFunc(){}; 00031 00033 static void eulerToMatrix(double eulerAngles[3], 00034 double matrix[3][3]) throw (CfiError); 00035 00037 static void matrixToEuler(double matrix[3][3], 00038 double eulerAngles[3]) throw (CfiError); 00039 00041 static void getRotationAngles(double xsInit[3], double ysInit[3], double zsInit[3], 00042 double xsFin[3], double ysFin[3], double zsFin[3], 00043 double angle[3]) throw (CfiError); 00044 00046 static void getRotatedVectors(double xsInit[3], double ysInit[3], double zsInit[3], 00047 double angle[3], 00048 double xsFin[3], double ysFin[3], double zsFin[3]) throw (CfiError); 00049 00051 static void quaternionsToVectors(double quaternions[4], 00052 double uxVec[3], 00053 double uyVec[3], 00054 double uzVec[3]) throw (CfiError); 00055 00057 static void vectorsToQuaternions(double uxVec[3], 00058 double uyVec[3], 00059 double uzVec[3], 00060 double quaternions[4]) throw (CfiError); 00061 00062 protected: 00063 00064 private: 00065 00066 }; 00067 00068 } // closing namespace 00069 00070 #endif