FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
CDistArrow.h
1#ifndef CDISTARROW_H
2#define CDISTARROW_H
3
51#ifdef FH_VISUALIZATION
52# pragma warning(push)
53# pragma warning(disable : 4251)
54# pragma warning(disable : 4267)
55# include <fhsim/visual/renderer/FhCamera.h>
56# pragma warning(pop)
57# include "sfh/ogre/CDynamicLines.h"
58# include "sfh/ogre/CMovableText.h"
59#endif
60
61#include <fhsim/simobject/SimObject.h>
62
63#include <string>
64
65class CDistArrow : public SimObject
66{
67 public:
69 CDistArrow(std::string sSimObjectName, ISimObjectCreator* pCreator);
70 ~CDistArrow(void);
71#ifdef FH_VISUALIZATION
73 void RenderInit(Ogre::Root* const ogreRoot, ISimObjectCreator* const creator);
74
76 void RenderUpdate(const double T, const double* const X);
77#endif
78
80 virtual void OdeFcn(const double dTime, const double* const adX, double* const adXDot) const{};
81
82
83 private:
84 ISignalPort* m_pInVisible;
85 ISignalPort* m_pInPosA;
86 ISignalPort* m_pInPosB;
87
88 double m_dTxtSize;
89 int m_iValPrecision;
90 std::string m_sSuffix;
91
92 long* m_iPosTxt;
93 double m_dDistance;
94
95#ifdef FH_VISUALIZATION
96 Ogre::SceneNode* m_RenderNode;
97 Ogre::CMovableText* m_BBTxt;
98 Ogre::Entity* m_ArrowA;
99 Ogre::Entity* m_ArrowB;
100 Ogre::SceneNode* m_RenderArrowNodeA;
101 Ogre::SceneNode* m_RenderArrowNodeB;
102 Ogre::SceneNode* m_LineNode;
103 CDynamicLines* m_line;
104#endif
105};
106
107#endif
Definition CDistArrow.h:66
virtual void OdeFcn(const double dTime, const double *const adX, double *const adXDot) const
Calculates the state derivatives.
Definition CDistArrow.h:80
CDistArrow(std::string sSimObjectName, ISimObjectCreator *pCreator)
The constructor sets the pointer to the output object and the parser object.