Marine systems simulation
CFhCameraTrajectoryPlayer.h
1
9
10#pragma once
11
12#ifdef FH_VISUALIZATION
13//#include "CFhVis.h"
14# include "CFhCamera.h"
15# include "CFhCameraController.h"
16# include "OgreSimpleSpline.h"
17#endif
18
19#include "CSimObject.h"
20
21#include <string>
22#include <vector>
23
24
25class CFhCameraTrajectoryPlayer : public CSimObject
26{
27 public:
29 CFhCameraTrajectoryPlayer(std::string sSimObjectName, ISimObjectCreator* pCreator);
31#ifdef FH_VISUALIZATION
33 void RenderInit(Ogre::Root* pOgreRoot, ISimObjectCreator* pCreator);
34
36 void RenderUpdate(double dT, const double* adX);
37#endif
38
40 virtual void OdeFcn(const double dTime, const double* const adX,
41 double* const adXDot, const bool bIsMajorTimeStep);
42
43
44 private:
45 unsigned int m_iNumNodes;
46 std::string m_sType;
47 double m_tBegin;
48 double m_tEnd;
49#ifdef FH_VISUALIZATION
50 CFhCameraController* m_cameraController;
51 CFhCamera* m_camera;
52 std::vector<double> m_time;
53 Ogre::SimpleSpline m_pos;
54 Ogre::SimpleSpline m_angle;
55#endif
56};
This objects implements a smooth camera movement, using data that has been read from an input file.
Definition: CFhCameraTrajectoryPlayer.h:26
virtual void OdeFcn(const double dTime, const double *const adX, double *const adXDot, const bool bIsMajorTimeStep)
Calculates the state derivatives.
CFhCameraTrajectoryPlayer(std::string sSimObjectName, ISimObjectCreator *pCreator)
The constructor sets the pointer to the output object and the parser object.