44 lines
1.2 KiB
C++
44 lines
1.2 KiB
C++
#pragma once
|
|
#include <pcl/point_types.h>
|
|
#include <pcl/io/pcd_io.h>
|
|
#include <pcl/visualization/pcl_visualizer.h>
|
|
#include <pcl/io/vtk_lib_io.h>
|
|
#include <QtWidgets/QMainWindow>
|
|
#include "Reconstruction.h"
|
|
|
|
using namespace pcl;
|
|
|
|
class PointCloudData
|
|
{
|
|
private:
|
|
PointCloudData(PointCloud<PointXYZRGB> cloudArg);
|
|
~PointCloudData(){};
|
|
PointCloud<PointXYZRGB> cloud;
|
|
boost::shared_ptr<visualization::PCLVisualizer> viewer;
|
|
std::vector<int> indices;
|
|
Ui::ReconstructionClass ui;
|
|
int num;// 用于框选删除点云的名称
|
|
QColor color = Qt::yellow;
|
|
float xAxis, zAxis;
|
|
|
|
public:
|
|
static PointCloudData* getInstance();
|
|
static PointCloudData* getInstance(PointCloud<PointXYZRGB> cloudArg);
|
|
static PointCloudData* instance ;
|
|
PointCloud<PointXYZRGB> getCloud() const;
|
|
void setCloud(PointCloud<PointXYZRGB> cloudArg);
|
|
boost::shared_ptr<visualization::PCLVisualizer> getViewer();
|
|
void setViewer(boost::shared_ptr<visualization::PCLVisualizer> viewerArg);
|
|
std::vector<int> getIndices();
|
|
void setIndices(std::vector<int> indicesArg);
|
|
Ui::ReconstructionClass getUI();
|
|
void setUI(Ui::ReconstructionClass uiArg);
|
|
int getNum();
|
|
void setNum();
|
|
QColor getColor();
|
|
void setColor(QColor colorArg);
|
|
float getXAxis();
|
|
float getZAxis();
|
|
void setAxises(float xArg,float zArg);
|
|
};
|