Jan 2, 2013

在MRPT裡面畫圖 (Plot in MRPT)


MRPT的gui modules 提供了三個視窗class用來畫圖:

1. mrpt::gui::CDisplayWindow (範例)
    CDisplayWindow 提供的是顯示影像的功能,也可以在影像上面畫東西。



2. mrpt::gui::CDisplayWindowPlots
    CDisplayWindowPlots提供的是類似Matlab plot的函數功能。(範例)
#include <mrpt/base.h>
#include <mrpt/gui.h>
#include <vector>
#include <cmath>

using namespace mrpt;
using namespace mrpt::gui;
using namespace std;


int main ( void )
{
 CDisplayWindowPlots win("Plot Windows", 640, 480);
 vector<float> x, y, z; 
 int maxsize = 100;
 float dt = M_2PIf/100;

 for (int i = 0 ; i < maxsize ; i++)
 {
  x.push_back(-M_PIf+dt*i);
  y.push_back(sin(x[i]));
  z.push_back(cos(x[i]));
 }

 win.plot(x,y);
 win.hold_on();
 win.plot(x,z,"r:3");
 win.axis_fit(true);

 while(win.isOpen())
 {
  mrpt::system::sleep(100);
 }

}
3. mrpt::gui::CDisplayWindow3D
    CDisplayWindow3D 提供的OpenGL的3D場景畫圖。(範例)



No comments: