在此记录一下为配置Qt+VTK的开发环境,在这几天折腾的苦,给自己提个醒儿,也给同样开始配置Qt+VTK的开发环境的兄弟姐妹提供一些参考。
1、编译VTK
https://wenku.baidu.com/view/ef13a7c94a7302768f9939ad.html
https://wenku.baidu.com/view/749528a433687e21ae45a9bb.html
我是综合参考了这两篇的编译过程,同时由于在编译完成后配置过程中发现将QVTKwidget放入qt之后 会发生报错,灵机一动,配置vtk7.0发现的问题,使用的是网上博客里分享的配置方法,把qvtkwidget的lib和dll都添加进去之后也不好使,直觉上是缺少了lib和dll,后来突然想起来在vtk6.3配置成功过,果断把网上流传的7.0版本配置的添加的lib的列表与我的6.3进行了类比,发现缺少了几个比较重要的
libvtkgl2ps-7.0.lib
vtkGUISupportQt-7.0.lib
vtkGUISupportQtSQL-7.0.lib
vtkIOParallelXML-7.0.lib
vtkRenderingContextOpenGL-7.0.lib
vtkRenderingGL2PS-7.0.lib
vtkViewsQt-7.0.lib
vtkRenderingVolumeOpenGL-7.0.lib
vtkRenderingQt-7.0.lib
vtkRenderingOpenGL-7.0.lib
vtkRenderingLIC-7.0.lib
vtkGUISupportQtOpenGL-7.0.lib
vtkGUISupportQtWebkit-7.0.lib
如果没有在自己编译的vtk中发现这些lib和dll应该是用cmake编译时没有把所有的qt选项选中,需要重新编译一次。我这次在添加之后编译就通过了。
我觉得这个非常重要,QVTKwidget的支持的lib需要在编译的时候都选上(除了两篇博客内需要勾选的选项,还需要在cmake中找到qt的所有选项,都勾上)
配置完成后,将QVTKWidget的lib和dll放到designer文件夹中。
需要注意的是:
1、qt有两个界面编辑器(qt designer和qt creator,qt creator是开发工具)对应不同的文件夹
以我自己的为例:
designer的文件夹:C:\Qt\Qt5.4.2\5.4\msvc2013_64_opengl\plugins\designer
qt creator的designer文件夹:C:\Qt\Qt5.4.2\Tools\QtCreator\bin\plugins\designer
2、我下载的是qt 64位程序,编译的也是64位的vtk,但是将qvtkwidget放到qt creator的designer文件夹后,并没有在设计界面出现vtk的控件
百思不得其解,后来忘了在哪个论坛还是博客找