FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
ScalarVolume.h
1#pragma once
2#ifdef FH_VISUALIZATION
3
9# include <OgreManualObject.h>
10# include <OgreRoot.h>
11# include <OgreSceneNode.h>
12
13namespace visual
14{
15
17struct ScalarVolumeSettings
18{
20 double centre[3] = {0.0, 0.0, 100.0};
22 double size[3] = {2000.0, 2000.0, 200.0};
23};
24
38class ScalarVolume
39{
40public:
47 ScalarVolume(Ogre::Root* ogreRoot, const ScalarVolumeSettings& settings, const Ogre::String& materialName);
48
50 ~ScalarVolume();
51
52 ScalarVolume(const ScalarVolume&) = delete;
53 ScalarVolume& operator=(const ScalarVolume&) = delete;
54
60 void SetCentre(const double centre[3]);
61
62private:
69 void BuildBox(const Ogre::Real half[3], const Ogre::String& materialName, const double centre[3]);
70
72 void Release();
73
74 Ogre::SceneManager* m_sceneMgr;
75 Ogre::ManualObject* m_renderObj;
76 Ogre::SceneNode* m_node;
77};
78
79} // namespace visual
80#endif // FH_VISUALIZATION
Visualization utilities.
Definition EnvironmentSettings.h:15