显示点云 pcl1.12 allone 存在的 vtk 没有 能在qt 中显示的组件
QVTKOpenGLNativeWidget
重新编译vtk9.1源码后,生成了 QVTKOpenGLNativeWidget
创建显示组件的方法与之前的创建的方法不一样.
PCLViewer::PCLViewer(int win_size, QWidget *parent) : QVTKOpenGLNativeWidget(parent)
{
#if VTK_MAJOR_VERSION > 8
auto renderer2 = vtkSmartPointer<vtkRenderer>::New();
auto renderWindow2 = vtkSmartPointer<vtkGenericOpenGLRenderWindow>::New();
renderWindow2->AddRenderer(renderer2);
viewer.reset(new pcl::visualization::PCLVisualizer(renderer2, renderWindow2, "viewer", false));
this->setRenderWindow(viewer->getRenderWindow());
viewer->setupInteractor(this->interactor(), this->renderWindow());
#else
viewer.reset(new pcl::visualization::PCLVisualizer("viewer", false));
this->SetRenderWindow(viewer->getRenderWindow());
viewer->setupInteractor(this->GetInteractor(), this->GetRenderWindow());
#endif
#ifndef PCLViewer_H
#define PCLViewer_H
// Point Cloud Library
#include <pcl/point_cloud.h>
#include <pcl/point_types.h>
#include <pcl/visualization/pcl_visualizer.h>
// Visualization Toolkit (VTK)
#include <vtkRenderWindow.h>
#include <QVTKRenderWidget.h>
#include <QVTKOpenGLNativeWidget.h>
#i