У меня есть рабочий проект на Qt с использованием pcl и vtk .... Я использовал QVTKWidget.
Теперь мне нужно пересобрать проект с использованием QVTKOpenGLWidget, поскольку QVTKWidget устарела
В этом посте предлагается использовать последнюю версию PCL от master QVTKOpenGLWidget и vtkGenericOpenGlRenderWindow с QTDesigner
Я сделал это и изменил необходимые файлы, но при компиляции проекта всегда происходит сбой, когда я связываю pclVisuiliser сQVTKOpenGLWidget.
QSurfaceFormat::setDefaultFormat(QVTKOpenGLWidget::defaultFormat());
QApplication app(argc, argv);
QVTKOpenGLWidget *widget = new QVTKOpenGLWidget();
vtkNew<vtkRenderer> renderer;
vtkNew<vtkGenericOpenGLRenderWindow> renderWindow;
renderWindow->AddRenderer(renderer.Get());
pcl::visualization::PCLVisualizer::Ptr pclViewer(new pcl::visualization::PCLVisualizer(renderer.Get(), renderWindow.Get(), "viewer", false));
widget->SetRenderWindow(pclViewer->getRenderWindow());
widget->show();
Когда эти две строки закомментированы, проект не падает:
pcl::visualization::PCLVisualizer::Ptr pclViewer(new pcl::visualization::PCLVisualizer(renderer.Get(), renderWindow.Get(), "viewer", false));
widget->SetRenderWindow(pclViewer->getRenderWindow());
Я использую Qt 5.9.5 и последнюю версию из master на github дляPCl и VTK.
Чего-то не хватает?