1#ifndef CBasicEnvironment_H
2#define CBasicEnvironment_H
73#include "CBasicBottom.h"
74#include "CBasicCurrentVel.h"
75#include "CBottomDepth.h"
80#ifdef FH_VISUALIZATION
82# include "sfh/ogre/NMeshGenerators.h"
85const int kNumLights = 1;
86const int k_iWorldOriginParamIndex = 1;
87const int k_iSurfaceSpecParamIndex = 2;
88const int k_iSimTimeParamIndex = 3;
101 virtual void OdeFcn(
const double dT,
const double*
const adX,
double*
const adXDot,
const bool bIsMajorTimeStep);
104 virtual void FinalSetup(
const double dT,
const double*
const adX, ISimObjectCreator*
const pCreator);
108#ifdef FH_VISUALIZATION
110 virtual void RenderInit(Ogre::Root*
const pOgreRoot, ISimObjectCreator*
const pCreator);
113 virtual void RenderUpdate(
const double dT,
const double*
const adX);
126 double m_dBottomRoughness;
127 double m_dBottomStructureScale;
128 double m_dSeaFloorDampingHor;
129 double m_dSeaFloorDampingVert;
130 double m_dSeaFloorHardness;
131 double m_dSeaFloorDensity;
132 double m_dCableDampingTangential;
133 double m_dCableDampingNormal;
135#ifdef FH_VISUALIZATION
136 Ogre::Vector4 CalcWorldOrigin();
139 Ogre::Light* m_light[kNumLights];
140 meshgenerators::SCircleSpec m_SSurfacePerimeterSpec;
141 meshgenerators::SCircleSpec m_SBottomPerimeterSpec;
143 CFhCamera* m_pCamera;
144 Ogre::Entity* m_OceanEntity;
145 Ogre::Entity* m_SubOceanEntity;
146 Ogre::SceneNode* m_WorldSceneNode;
147 Ogre::SceneManager* m_pSceneMgr;
148 double m_dSurfaceTextureScale;
149 double m_dBottomTextureScale;
150 double m_dTerrainRadius;
151 double m_dSurfaceDepth;
152 int m_iNumTerrainRings;
153 std::string m_sSurfaceMaterial;
154 std::string m_sSubSurfaceMaterial;
155 std::string m_sSeabedMaterial;
Definition: CBasicBottom.h:21
Definition: CBasicCurrentVel.h:14
Definition: CBasicEnvironment.h:92
~CBasicEnvironment()
The destructor cleans up.
ISignalPort * m_pInCurrentVel
A pointer to the input current velocity.
Definition: CBasicEnvironment.h:120
CBasicEnvironment(std::string sSimObjectName, ISimObjectCreator *pCreator)
The constructor sets the pointer to the output object and the parser object.
virtual void OdeFcn(const double dT, const double *const adX, double *const adXDot, const bool bIsMajorTimeStep)
Calculates the state derivatives.
virtual void FinalSetup(const double dT, const double *const adX, ISimObjectCreator *const pCreator)
Make final preparations before simulation starts. Called before RenderInit.
void InitParameters()
Sets the parameters of the mass object.
CBottomDepth * m_pBottomDepth
The bottom object.
Definition: CBasicEnvironment.h:123
CBasicBottom * m_pBottomForce
The bottom object.
Definition: CBasicEnvironment.h:124
Definition: CBottomDepth.h:14