Subversion Repositories seema-scanner

Rev

Rev 248 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 jakw 1
#ifndef SMPointCloudWidget_H
2
#define SMPointCloudWidget_H
3
 
4
#include <QTime>
5
 
248 jakw 6
//#ifndef Q_MOC_RUN
7
    #include <QVTKOpenGLWidget.h>
2 jakw 8
    #include <pcl/visualization/pcl_visualizer.h>
9
    #include <Eigen/Eigen>
248 jakw 10
//#endif
2 jakw 11
 
12
#include <opencv2/opencv.hpp>
13
 
44 jakw 14
#include "SMTypes.h"
2 jakw 15
 
128 jakw 16
typedef pcl::PointCloud<pcl::PointXYZRGBNormal>::Ptr PointCloudPtr;
17
typedef pcl::PointCloud<pcl::PointXYZRGBNormal>::ConstPtr PointCloudConstPtr;
18
typedef pcl::visualization::PointCloudColorHandler<pcl::PointXYZRGBNormal>* ColorHandlerPtr;
19
typedef const pcl::visualization::PointCloudColorHandler<pcl::PointXYZRGBNormal>* ColorHandlerConstPtr;
44 jakw 20
 
248 jakw 21
class SMPointCloudWidget : public QVTKOpenGLWidget {
2 jakw 22
    Q_OBJECT
23
    public:
24
        explicit SMPointCloudWidget(QWidget *parent = 0);
25
        ~SMPointCloudWidget();
26
    public slots:
44 jakw 27
        void addPointCloud(SMPointCloud pointCloud, int id);
28
        void updatePointCloud(SMPointCloud pointCloud, int id);
29
        void removePointCloud(int id);
139 jakw 30
        void removeAllPointClouds();
2 jakw 31
        void saveScreenShot();
31 jakw 32
        void updateCalibrationParameters();
2 jakw 33
    signals:
44 jakw 34
        void pointCloudDataChanged();
2 jakw 35
    private:
36
        pcl::visualization::PCLVisualizer *visualizer;
37
        ColorHandlerPtr colorHandler;
38
        QTime time;
250 jakw 39
        void update();
2 jakw 40
};
41
 
42
#endif // SMPointCloudWidget_H