26 #include <QPaintEvent>
29 #ifndef VECTOR_LIDAR_DISPLAY_H
30 #define VECTOR_LIDAR_DISPLAY_H
37 #define BACKGROUND_COLOR 1.0,1.0,1.0,1.0
48 Color(
float _r,
float _g,
float _b);
50 float red(){
return r;};
51 float green(){
return g;};
52 float blue(){
return b;};
56 static const double minZValue = -10;
57 static const double maxZValue = 10;
61 vector<vector2f> points;
62 vector<vector2f> circles;
63 vector<Color> lineColors;
64 vector<Color> pointColors;
65 vector<Color> circleColors;
97 void paintEvent ( QPaintEvent * event );
98 void wheelEvent ( QWheelEvent * event );
99 void mouseMoveEvent ( QMouseEvent * event );
100 void keyPressEvent ( QKeyEvent * event );
101 void mousePressEvent( QMouseEvent * event );
102 void mouseReleaseEvent( QMouseEvent * event );
103 void resizeEvent ( QResizeEvent * event );
105 void resizeGL(
int width,
int height);
106 void setupViewport(
int width,
int height);
107 QSize sizeHint ()
const {
return QSize(580,1000);}
110 void drawQuad(
double x1,
double y1,
double x2,
double y2,
double z=0.0)
112 template <
class num>
void drawArc(
GVector::vector2d<num> loc, num r1, num r2, num theta1, num theta2, num z=0.0, num dTheta = -1);
113 void drawArc(
double x,
double y,
double r1,
double r2,
double theta1,
double theta2,
double z=0.0,
double dTheta = -1)
114 {drawArc(
vector2d(x,y),r1,r2,theta1,theta2,z,dTheta);}
115 void drawCircles(
float lineThickness);
116 void drawLines(
float lineThickness);
117 void drawPoints(
float pointsSize);
118 template <
class num>
void drawLine(
Line2d<num> &line, num lineWidth);
124 void updateLines(vector<line2f> _lines, vector<Color> _lineColors = vector<Color>());
125 void updatePoints(vector< vector2f > _points, vector<Color> _pointColors = vector<Color>());
126 void updateCircles(vector< vector2f > _circles, vector<Color> _circleColors = vector<Color>());
127 void updateDisplay(
vector2d _robotLoc,
double _robotAngle,
double _displayWindow,
128 vector<line2f> _lines, vector<vector2f> _points, vector<vector2f> _circles,
129 vector<Color> _lineColors = vector<Color>(),
130 vector<Color> _pointColors = vector<Color>(),
131 vector<Color> _circleColors = vector<Color>());
140 #endif //VECTOR_LIDAR_DISPLAY_H
void setCallback(void(*_ptrCallback)(vector2d, vector2d, double, int))