MapViewer.h
Go to the documentation of this file.
00001 // -*- c++ -*-
00002 // Copyright 2008 Isis Innovation Limited
00003 //
00004 // MapViewer.h
00005 //
00006 // Defines the MapViewer class
00007 //
00008 // This defines a simple map viewer widget, which can draw the 
00009 // current map and the camera/keyframe poses within it.
00010 //
00011 #ifndef __MAP_VIEWER_H
00012 #define __MAP_VIEWER_H
00013 
00014 #include "Map.h"
00015 #include <TooN/TooN.h>
00016 using namespace TooN;
00017 #include <TooN/se3.h>
00018 #include <sstream>
00019 #include "GLWindow2.h"
00020 
00021 struct Map;
00022 
00023 class MapViewer
00024 {
00025 public:
00026   MapViewer(Map &map, GLWindow2 &glw);
00027   void DrawMap(SE3<> se3CamFromWorld);
00028   std::string GetMessageForUser();
00029 
00030 protected:
00031   Map &mMap;
00032   GLWindow2 &mGLWindow;
00033 
00034   void DrawGrid();
00035   void DrawMapDots();
00036   void DrawCamera(SE3<> se3, bool bSmall=false);
00037   void SetupFrustum();
00038   void SetupModelView(SE3<> se3WorldFromCurrent = SE3<>());
00039 
00040   Vector<3> mv3MassCenter;
00041   SE3<> mse3ViewerFromWorld;
00042 
00043   std::ostringstream mMessageForUser;
00044 };
00045 
00046 #endif


ptam
Author(s): Stephan Weiss, Markus Achtelik, Simon Lynen
autogenerated on Tue Jan 7 2014 11:12:22