遇到的问题:VTKWidge在VTK9中被删除了。
查了挺久的资料
可以用QVTKOpenGLNativeWidget
mainwindow.cpp代码:
// 初始化PCL显示控件
viewer.reset(new pcl::visualization::PCLVisualizer("viewer", false));
vtkNew<vtkGenericOpenGLRenderWindow> window;
window->AddRenderer(viewer->getRendererCollection()->GetFirstRenderer());
ui->openGLWidget->setRenderWindow(window.Get());
std::vector<pcl::PointCloud<pcl::PointXYZ>::Ptr> cloud_vec;
viewer->addPointCloud<pcl::PointXYZ>(cloud.makeShared(),std::to_string(cloud_vec.size()-1));
//设置点云大小
viewer->setPointCloudRenderingProperties (pcl::visualization::PCL_VISUALIZER_POINT_SIZE, point_size, std::to_string(cloud_vec.size()-1));
viewer->resetCamera();
ui->openGLWidget->update();
mainwindow.h
#include <QVTKOpenGLNativeWidget.h>