Changeset 13 in flair-dev for trunk/include/FlairSimulator/Gui.h
- Timestamp:
- 04/08/16 15:39:24 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/FlairSimulator/Gui.h
r9 r13 22 22 #include <vector3d.h> 23 23 24 namespace irr 25 { 26 class IrrlichtDevice; 27 namespace video 28 { 29 class ITexture; 30 } 31 namespace scene 32 { 33 class IAnimatedMesh; 34 class ISceneManager; 35 } 24 namespace irr { 25 class IrrlichtDevice; 26 namespace video { 27 class ITexture; 28 } 29 namespace scene { 30 class IAnimatedMesh; 31 class ISceneManager; 32 } 36 33 } 37 34 38 namespace flair 39 { 40 namespace core 41 { 42 class Object; 43 class Vector3D; 44 class Euler; 45 class Quaternion; 46 } 35 namespace flair { 36 namespace core { 37 class Object; 38 class Vector3D; 39 class Euler; 40 class Quaternion; 41 } 47 42 } 48 43 … … 51 46 class Model_impl; 52 47 53 namespace flair 54 { 55 namespace simulator 56 { 57 class Simulator; 48 namespace flair { 49 namespace simulator { 50 class Simulator; 58 51 59 class Gui: public core::Object 60 { 61 friend class ::Simulator_impl; 52 class Gui : public core::Object { 53 friend class ::Simulator_impl; 62 54 63 public: 64 Gui(const Simulator* parent,std::string name,int app_width, int app_height,int scene_width, int scene_height,std::string media_path,irr::video::E_DRIVER_TYPE driver_type=irr::video::EDT_OPENGL); 65 ~Gui(); 66 irr::core::vector3df getRotation(void) const; 67 irr::video::ITexture* getTexture(std::string filename) const; 68 irr::scene::IAnimatedMesh* getMesh(std::string filename) const; 69 irr::scene::ISceneManager* getSceneManager(void) const; 70 float getAspectRatio(void) const; 55 public: 56 Gui(const Simulator *parent, std::string name, int app_width, int app_height, 57 int scene_width, int scene_height, std::string media_path, 58 irr::video::E_DRIVER_TYPE driver_type = irr::video::EDT_OPENGL); 59 ~Gui(); 60 irr::core::vector3df getRotation(void) const; 61 irr::video::ITexture *getTexture(std::string filename) const; 62 irr::scene::IAnimatedMesh *getMesh(std::string filename) const; 63 irr::scene::ISceneManager *getSceneManager(void) const; 64 float getAspectRatio(void) const; 71 65 72 protected: 73 irr::IrrlichtDevice *getDevice(void) const; 74 void setMesh(std::string file,irr::core::vector3df position = irr::core::vector3df(0,0,0),irr::core::vector3df rotation= irr::core::vector3df(0,0,0),irr::core::vector3df scale= irr::core::vector3df(1,1,1)); 66 protected: 67 irr::IrrlichtDevice *getDevice(void) const; 68 void setMesh(std::string file, 69 irr::core::vector3df position = irr::core::vector3df(0, 0, 0), 70 irr::core::vector3df rotation = irr::core::vector3df(0, 0, 0), 71 irr::core::vector3df scale = irr::core::vector3df(1, 1, 1)); 75 72 76 77 78 73 private: 74 Gui_impl *pimpl_; 75 }; 79 76 80 81 82 83 84 85 Gui*getGui(void);77 /*! 78 * \brief get Gui 79 * 80 * \return the Gui 81 */ 82 Gui *getGui(void); 86 83 87 84 bool noGui(void); 88 85 89 bool isGlExtensionSupported(const std::string& ext); // check if a extension is supported 86 bool isGlExtensionSupported( 87 const std::string &ext); // check if a extension is supported 90 88 91 92 93 94 95 96 97 98 89 /*! 90 * \brief Convert to irrlicht scale 91 * 92 * \param value value in simulator scale 93 * 94 * \return value in irrlicht scale 95 */ 96 float ToIrrlichtScale(float value); 99 97 100 101 102 103 104 105 106 107 98 /*! 99 * \brief Convert to simulator scale 100 * 101 * \param value value in irrlicht scale 102 * 103 * \return value in simulator scale 104 */ 105 float ToSimulatorScale(float value); 108 106 109 110 111 112 113 114 115 116 117 118 107 /*! 108 * \brief Convert to irrlicht coordinates 109 * 110 * irrlicht is left handed and as a different scale 111 * 112 * \param vect vector in simulator coordinates 113 * 114 * \return vector in irrlicht coordinates 115 */ 116 irr::core::vector3df ToIrrlichtCoordinates(irr::core::vector3df vect); 119 117 120 121 122 123 124 125 126 127 128 129 118 /*! 119 * \brief Convert to irrlicht coordinates 120 * 121 * irrlicht is left handed and as a different scale 122 * 123 * \param vect vector in simulator coordinates 124 * 125 * \return vector in irrlicht coordinates 126 */ 127 irr::core::vector3df ToIrrlichtCoordinates(core::Vector3D vect); 130 128 131 132 133 134 135 136 137 138 139 140 129 /*! 130 * \brief Convert to simulator coordinates 131 * 132 * irrlicht is left handed and as a different scale 133 * 134 * \param vect vector in irrlicht coordinates 135 * 136 * \return vector in simulator coordinates 137 */ 138 core::Vector3D ToSimulatorCoordinates(irr::core::vector3df vect); 141 139 142 143 144 145 146 147 148 149 150 151 140 /*! 141 * \brief Convert to irrlicht orientation 142 * 143 * irrlicht is left handed 144 * 145 * \param quat quaternion in simulator frame 146 * 147 * \return quaternion in irrlicht frame 148 */ 149 core::Quaternion ToIrrlichtOrientation(core::Quaternion quat); 152 150 153 151 } // end namespace simulator
Note:
See TracChangeset
for help on using the changeset viewer.