Index: trunk/include/FlairSimulator/Blade.h
===================================================================
--- trunk/include/FlairSimulator/Blade.h	(revision 74)
+++ trunk/include/FlairSimulator/Blade.h	(revision 94)
@@ -36,4 +36,9 @@
         const irr::core::vector3df &position = irr::core::vector3df(0, 0, 0),
         bool inverted = false, irr::s32 id = -1);
+
+  Blade(irr::scene::ISceneNode *parent,
+        const irr::core::vector3df &position = irr::core::vector3df(0, 0, 0),
+        bool inverted = false, irr::s32 id = -1);
+  
   virtual void OnRegisterSceneNode(void);
   virtual void render(void);
Index: trunk/include/FlairSimulator/MeshSceneNode.h
===================================================================
--- trunk/include/FlairSimulator/MeshSceneNode.h	(revision 74)
+++ trunk/include/FlairSimulator/MeshSceneNode.h	(revision 94)
@@ -31,4 +31,10 @@
       const irr::core::vector3df &rotation = irr::core::vector3df(0, 0, 0),
       irr::video::ITexture *texture = NULL, irr::s32 id = -1);
+  
+  MeshSceneNode(
+      irr::scene::ISceneNode *parent, irr::scene::IMesh *mesh,
+      const irr::core::vector3df &position = irr::core::vector3df(0, 0, 0),
+      const irr::core::vector3df &rotation = irr::core::vector3df(0, 0, 0),
+      irr::video::ITexture *texture = NULL, irr::s32 id = -1);
 
   virtual void OnRegisterSceneNode(void);
Index: trunk/include/FlairSimulator/Simulator.h
===================================================================
--- trunk/include/FlairSimulator/Simulator.h	(revision 74)
+++ trunk/include/FlairSimulator/Simulator.h	(revision 94)
@@ -44,5 +44,5 @@
   // yaw_deg: rotation of the vrpn coordinate with respect to the earth
   // coordinate, around z axis
-  Simulator(std::string name, int optitrack_mstime = 10, float yaw_deg = 30);
+  Simulator(std::string name, int optitrack_mstime = 10, float yaw_deg = 30, int port=3883);
   ~Simulator();
   void RunSimu(void);
Index: trunk/include/FlairSimulator/UavVrpnObject.h
===================================================================
--- trunk/include/FlairSimulator/UavVrpnObject.h	(revision 94)
+++ trunk/include/FlairSimulator/UavVrpnObject.h	(revision 94)
@@ -0,0 +1,43 @@
+// %flair:license{
+// This file is part of the Flair framework distributed under the
+// CECILL-C License, Version 1.0.
+// %flair:license}
+//  created:    2018/12/11
+//  filename:   UavVrpnObject.h
+//
+//  author:     Guillaume Sanahuja
+//              Copyright Heudiasyc UMR UTC/CNRS 7253
+//
+//  version:    $Id: $
+//
+//  purpose:    uav vrpn object, can display a real vrpn object in a simulated environment
+//
+/*********************************************************************/
+
+#ifndef UAVVRPNOBJECT_H
+#define UAVVRPNOBJECT_H
+
+#ifdef GL
+
+#include <VrpnObject.h>
+
+class UavVrpnObject_impl;
+
+namespace flair {
+namespace simulator {
+
+class UavVrpnObject :public sensor::VrpnObject {
+public:
+  UavVrpnObject(std::string name,sensor::VrpnClient *client=sensor::GetVrpnClient());
+  ~UavVrpnObject();
+
+private:
+  UavVrpnObject_impl *pimpl_;
+
+};
+} // end namespace simulator
+} // end namespace flair
+
+#endif // GL
+
+#endif // UAVVRPNOBJECT_H
Index: trunk/include/FlairSimulator/VisualizationCamera.h
===================================================================
--- trunk/include/FlairSimulator/VisualizationCamera.h	(revision 74)
+++ trunk/include/FlairSimulator/VisualizationCamera.h	(revision 94)
@@ -27,4 +27,7 @@
     class ICameraSceneNode;
   }
+  namespace video {
+    class ITexture;
+  }
 }
 
@@ -42,11 +45,15 @@
   irr::scene::ICameraSceneNode *getCameraSceneNode(void);
   std::string getName(void);
+  void renderAxisToTexture(irr::video::ITexture* texture);
 
 private:
   virtual bool isEventReceiverEnabled(void) const { return true; }
-
+  irr::scene::ISceneNode *nodeX,*nodeY,*nodeZ;
+  irr::scene::ISceneManager *axis_scenemanager;
+  
 protected:
   bool LMouseKey;
   irr::scene::ICameraSceneNode *camera;
+  irr::scene::ICameraSceneNode *axis_camera;
   irr::core::position2df MousePos;
   float currentZoom;
Index: trunk/include/FlairSimulator/X4.h
===================================================================
--- trunk/include/FlairSimulator/X4.h	(revision 74)
+++ trunk/include/FlairSimulator/X4.h	(revision 94)
@@ -43,10 +43,7 @@
 #ifdef GL
   virtual void Draw(void);
-  virtual void ExtraDraw(void){};
+  virtual void ExtraDraw(void){}; 
+#endif
 
-protected:
-  Blade *fl_blade, *fr_blade, *rl_blade, *rr_blade;
-  core::Mutex *motor_speed_mutex;
-#endif
 private:
   void CalcModel(void);
@@ -56,4 +53,6 @@
   void WritedbtBuf(char *dbtbuf);
   void ReaddbtBuf(char *dbtbuf);
+  Blade *fl_blade, *fr_blade, *rl_blade, *rr_blade;
+  core::Mutex *motor_speed_mutex;
 #endif
 
Index: trunk/include/FlairSimulator/X8.h
===================================================================
--- trunk/include/FlairSimulator/X8.h	(revision 74)
+++ trunk/include/FlairSimulator/X8.h	(revision 94)
@@ -45,8 +45,5 @@
 
 protected:
-#ifdef GL
-  Blade *tfl_blade, *tfr_blade, *trl_blade, *trr_blade;
-  Blade *bfl_blade, *bfr_blade, *brl_blade, *brr_blade;
-#endif
+
 private:
   void CalcModel(void);
@@ -57,4 +54,6 @@
   void ReaddbtBuf(char *dbtbuf);
   core::Mutex *motor_speed_mutex;
+  Blade *tfl_blade, *tfr_blade, *trl_blade, *trr_blade;
+  Blade *bfl_blade, *bfr_blade, *brl_blade, *brr_blade;
 #endif
 
