Marine systems simulation
Loading...
Searching...
No Matches
CBillboardArrow.h
1#pragma once
2
67#include <string>
68
69#ifdef FH_VISUALIZATION
70# pragma warning(push)
71# pragma warning(disable : 4251)
72# pragma warning(disable : 4267)
73# include "CFhCamera.h"
74# pragma warning(pop)
75# include "sfh/ogre/CMovableText.h"
76#endif
77
78#include <SimObject.h>
79class CExpandedLines;
80
81class CBillboardArrow : public SimObject
82{
83 public:
85 CBillboardArrow(std::string sSimObjectName, ISimObjectCreator* pCreator);
86 ~CBillboardArrow(void);
87
88#ifdef FH_VISUALIZATION
90 void RenderInit(Ogre::Root* const pOgreRoot, ISimObjectCreator* const pCreator);
91
93 void RenderUpdate(const double dT, const double* const adX);
94#endif
95
97 virtual void OdeFcn(const double dT, const double* const adX, double* const adXDot, const bool bIsMajorTimeStep){};
98
99 protected:
100 ISignalPort* m_pInPos;
101 ISignalPort* m_pInVisible;
102 ISignalPort* m_pInVector;
103
104 int m_iNumPoints;
105 int m_iNumFaces;
106 bool m_bFinalized;
107 bool m_bDirty;
108 double m_radius;
109 double m_radiusFudge;
110
111 int m_iValPrecision;
112 double m_dScalingFactor;
113
114 double m_dTextSize;
115 double m_dTextLocation;
116 bool m_bTextVisible;
117
118 std::string m_sPrefix;
119 std::string m_sSuffix;
120
121 bool m_bExpandedLines;
122 int m_iSplinePoints;
123 std::string m_sMaterialName;
124 std::string m_sType;
125
126#ifdef FH_VISUALIZATION
127 Ogre::SceneNode* m_RenderNode;
128 Ogre::SceneNode* m_TextNode;
129 Ogre::CMovableText* m_BBText;
130
131 CExpandedLines* m_linesExpanded;
132 std::vector<double> m_radiusFactors;
133 std::vector<double> m_arrowPos;
134 Ogre::Vector3* m_vectors;
135
136#endif
137};
Definition CBillboardArrow.h:82
virtual void OdeFcn(const double dT, const double *const adX, double *const adXDot, const bool bIsMajorTimeStep)
Calculates the state derivatives.
Definition CBillboardArrow.h:97
CBillboardArrow(std::string sSimObjectName, ISimObjectCreator *pCreator)
The constructor sets the pointer to the output object and the parser object.