3

I have a working project on Qt using pcl and vtk....I was using QVTKWidget.

Now I need to re-build the project using QVTKOpenGLWidget as QVTKWidget is deprecated

This post suggests that the latest PCL version from master should be used QVTKOpenGLWidget and vtkGenericOpenGlRenderWindow with QTDesigner

I did that and changed the necessary files but when compiling the project always crashes when I link pclVisuiliser with 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();

When these two lines are commented out the project doesn't crash :

pcl::visualization::PCLVisualizer::Ptr pclViewer(new pcl::visualization::PCLVisualizer(renderer.Get(), renderWindow.Get(), "viewer", false));
widget->SetRenderWindow(pclViewer->getRenderWindow());

I'm using Qt 5.9.5 and latest version from master on github for PCl and VTK.

Is there anything missing ?

Tamim Boubou
  • 75
  • 11

0 Answers0