绘制曲线
#include <iostream>
#include <pangolin/pangolin.h>
int main(/*int argc, char* argv[]*/)
{
// Create OpenGL window in single line
pangolin::CreateWindowAndBind("Main",640,480);
// Data logger object
pangolin::DataLog log;//常规数据格式
// Optionally add named labels
std::vector<std::string> labels;//添加label字符串
labels.push_back(std::string("sin(t)"));
labels.push_back(std::string("cos(t)"));
labels.push_back(std::string("sin(t)+cos(t)"));
log.SetLabels(labels);
const float tinc = 0.01f;
// OpenGL 'view' of data. We might have many views of the same data.
pangolin::Plotter plotter(&log,0.0f,4.0f*(float)M_PI/tinc,-2.0f,2.0f,(float)M_PI/(4.0f*tinc),0.1);
//左边界、右边界、下边界、上边界, 每个小格x,y的边界值
plotter.SetBounds(0, 1.0, 0, 1.0);//设置画图在显示界面边界
plotter.Track("$i","");//设置图像动态跟踪当前值
// Add some sample annotations to the plot
plotter.AddMarker(pangolin::Marker::Vertical, -10, pangolin::Marker::LessThan, pangolin::Colour::Blue().WithAlpha(0.2f) );
plotter.AddMarker(pangolin::Marker::Horizontal, 20, pangolin::Marker::GreaterThan, pangolin::Colour::Red().WithAlpha(0.2f) );
plotter.AddMarker(pangolin::Marker::Horizontal, 10, pangolin::Marker::Equal, pangolin::Colour::Green().WithAlpha(0.2f) );
//plotter.AddMarker 修改一片区域背景颜色,方向,值,范围,颜色
//pangolin::Marker::Horizontal:水平方向
//值
//pangolin::Marker::Equal 等于 angolin::Marker::LessThan:小于 pangolin::Marker::GreaterThan:大于
//pangolin::Colour::Blue().WithAlpha(0.2f) 蓝色
pangolin::DisplayBase().AddDisplay(plotter);//添加显示
float t = 0;
// Default hooks for exiting (Esc) and fullscreen (tab).
while( !pangolin::ShouldQuit() )
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
log.Log(sin(t),cos(t),sin(t)+cos(t));//绘制点
t += tinc;
// Render graph, Swap frames and Process Events
pangolin::FinishFrame();
}
return 0;
}
pangolin::Plotter
pangolin::Plotter plotter(&log,0.0f,4.0f*(float)M_PI/tinc,-2.0f,2.0f,(float)M_PI/(4.0f*tinc),0.1);
//左边界、右边界、下边界、上边界, 每个小格x,y的边界值
plotter.AddMarker
plotter.AddMarker(pangolin::Marker::Horizontal, 10, pangolin::Marker::Equal, pangolin::Colour::Green().WithAlpha(0.2f) );
//plotter.AddMarker 修改一片区域背景颜色,方向,比较值,范围,颜色
//pangolin::Marker::Horizontal:水平方向
//值
//pangolin::Marker::Equal 等于10 angolin::Marker::LessThan:小于10 pangolin::Marker::GreaterThan:大于10
//pangolin::Colour::Blue().WithAlpha(0.2f) 蓝色
log.Log
log.Log(sin(t),cos(t),sin(t)+cos(t));//绘制点