Marine systems simulation
GridEnvironment.h
1#ifndef GRID_ENVIRONMENT_H
2#define GRID_ENVIRONMENT_H
3
4#include <Eigen/Eigen>
5
6#include <CPrintDuringExec.h>
7//#include <SimObject.h>
8#include "CEnvironment.h"
9#ifdef FH_VISUALIZATION
10 //#include "sfh/ogre/C3DLine.h"
11#endif
12
13
51 class GridEnvironment : public SimObject
52 {
53 public:
54 GridEnvironment(std::string simObjectName, ISimObjectCreator *creator);
55 virtual ~GridEnvironment();
56 virtual void OdeFcn(const double T, const double *const X, double *const XDot, const bool isMajorTimeStep);
57 //virtual void InitialConditionSetup(const double T, const double *const currentIC, double *const updatedIC, ISimObjectCreator *const creator);
58 //virtual void FinalSetup(const double T, const double *const X, ISimObjectCreator *const creator);
59
60#ifdef FH_VISUALIZATION
61 virtual void RenderInit(Ogre::Root *const ogreRoot, ISimObjectCreator *const creator);
62 virtual void RenderUpdate(const double T, const double *const X);
63#endif
64
65
66 protected:
67 double m_southWestUpCorner[3];
68 double m_northEastDownCorner[3];
69 double m_gridCellSize;
70 int m_gridDimensions[3];
71 bool m_renderGrid;
73
74#ifdef FH_VISUALIZATION
75 Ogre::Root* m_ogreRoot;
76 Ogre::ManualObject * m_gridRenderObj;
77 Ogre::SceneManager* m_sceneMgr;
78 Ogre::Quaternion m_InitOrientation;
79 Ogre::AnimationState* m_animationState;
80 std::string m_mesh;
81 std::string m_material;
82 double m_scale;
83 Ogre::Entity* m_renderFish;
84
85 Ogre::SceneNode* m_renderNode;
86 Ogre::SceneNode* m_renderNodeMaterial;
87 Ogre::SceneNode* m_rootNode;
88 Ogre::SceneNode* m_childNode;
89#endif
90
91 };
92#endif
Definition: GridEnvironment.h:52
int * m_netPresenceIndicator
-1 = cell is outside net, 1 = cell contains net nodes, 0 = cell is within net
Definition: GridEnvironment.h:72