Qt-VS-addin出现错误.VSIX http://blog.csdn.net/u012135461/article/details/77828900 2.在QtDesigner中添加QVTKWidget 问题三:添加QVTKWidget插件 ? 方法2: QWidget提升为QVTKWidget。 ? 类名和头文件名都怪要改为QVTKWidget 在.cpp的MianWindow::MianWindow(QWidget*parent) : QMainWindow(parent)中添加 //初始化控件
PCLVisualizer("viewer", false)); //reset viewer viewer->addPointCloud(cloud, "cloud"); //添加点云 ui.qvtkWidget ->SetRenderWindow(viewer->getRenderWindow()); //设置渲染 viewer->setupInteractor(ui.qvtkWidget->GetInteractor (), ui.qvtkWidget->GetRenderWindow()); //设置交互 ui.qvtkWidget->update(); //update } //读取点云数据 void PCLVisualizer //viewer->addPointCloud<pcl::PointXYZ>(cloud, "cloud"); //添加点云(出错) //viewer->setupInteractor(ui.qvtkWidget ->GetInteractor(), ui.qvtkWidget->GetRenderWindow()); //设置交互 ui.qvtkWidget->update(); //update } //
QVTKWidgetPlugin.dll、QVTKWidgetPlugin.lib下载 现在发现真的只要将该两个文件拷贝到Qt\Qt5.7.1\5.7\msvc2013_64\plugins\designer下面即可在Qt界面下显示出qvtkwidget viewer->updatePointCloud(cloud,"cloud"); viewer->resetCamera(); ui.qvtkWidget visualization::PCLVisualizer("viewer", false)); viewer->addPointCloud(cloud,"cloud"); ui.qvtkWidget ->SetRenderWindow(viewer->getRenderWindow()); viewer->setupInteractor(ui.qvtkWidget->GetInteractor (),ui.qvtkWidget->GetRenderWindow()); ui.qvtkWidget->update(); } PointCloud::~PointCloud() { }
可以创建一个QWidget界面,将VTK支持的QVTKWidget,这个旧版本,根据需要使用。QVTKOpenGLWidget,这个新版本,推荐使用。将他们提升类,好用的不行。 setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);//设置大小m_vtkWidget->resize(800,600);//设置布局并将QVTKWidget renderer=vtkRenderer::New();renderer->AddActor(actor);renderer->SetBackground(0.1,0.1,0.1);//深灰色背景//5.关联到QVTKWidget
No.3 在QtDesigner中添加QVTKWidget,显示三维点云窗口 ? 将下图的文件 ? 复制到 ? 进入Qt designer 点帮助->关于插件->刷新 QVTK就出来了 ?
做点云的可视化的时候又需要VTK,虽然我们在windows下安装PCL的时候就已经安装了VTK,由于跟着PCL安装的VTK是没有和QT联合编译的,所以在使用PCL和QT做点云可视化界面的时候是无法使用可是QT的插件QVTKWidget (1)如果是Ubuntu14.04,无论是使用命令行安装PCL或者是QT,系统都已经将QVTKWidget的库安装好了,在使用QT时会自动的加载了QVTKWideget,并且使用我的例子正常cmake就可以实现