Windows 7下的VS2015 + Qt 5+ VTK安装配置(示例:读取医学文件)

下载VTK-7.1.1和对应的VTKData-7.1.1:https://www.vtk.org/download/

Windows 7下的VS2015 + Qt 5+ VTK安装配置(示例:读取医学文件)

解压VTK7源码,为便于管理,将.ExternalData放入VTK解压出的文件夹中

Windows 7下的VS2015 + Qt 5+ VTK安装配置(示例:读取医学文件)

使用CMake指定源文件目录和编译文件目录:

Windows 7下的VS2015 + Qt 5+ VTK安装配置(示例:读取医学文件)

推荐修改Entry:

BUILD_EXAMPLES                 ON

CMAKE_INSTALL_PREFIX     C:/Program Files/VTK (默认为该目录,可根据需要修改)

勾选Advanced后出现的Entry:

Module_vtkGUISupportMFC     ON

VTK_DATA_STORE                  E:/Desktop/VTK-7.1.1/.ExternalData (根据实际解压出Data目录修改)

此外,如果想使用Qt的话,需要修改下列Entry :

VTK_Group_Qt                          ON

VTK_ViewsQt                             ON

VTK_vtkRenderingQt                 ON

Module_vtkGUISupportQt          ON

VTK_QT_VERSION                   5 (如果使用5的话,configure后会出现该Entry,注意!)

Note(路径注意根据实际情况修改):如果Configure后出现Qt_DIR找不到的错误,删除Cache,添加Entry:CMAKE_PREFIX_PATH值为D:\Qt\Qt5.7.1\5.7\msvc2015_64,重新Configure即可。如果还是不行,则手动设置下列Entry:

Qt5_DIR                                       D:/Qt/Qt5.7.1/5.7/msvc2015_64/lib/cmake/Qt5

Qt5Core_DIR                                D:/Qt/Qt5.7.1/5.7/msvc2015_64/lib/cmake/Qt5Core

QT_QMAKE_EXECUTABLE         D:/Qt/Qt5.7.1/5.7/msvc2015_64/bin/qmake.exe

Note:一般Configure后,输出窗口会出现红色字体文本,需注意读一下:

如果还有弹出窗口,说明是fatal error,必须解决。最常见的是某个必须的第三方库没安装,根据提示,找到安装包安装一下即可。比如你勾选输出Document,可能需要Doxygen,CMake提醒找不到该库,则下载安装后再Configure即可。还有可能是勾选某个Entry后,其所依赖的某个Entry没有设置,根据提示操作即可。

如果没有弹窗,最常见的是提示某些代码deprecated,这种一般忽略就好。还有就是提醒安装一些非必须库比如OPENNI,如果没有相关需求,忽略应该没有问题。

点击Configure到没有红色Entry后,输出文本Configuring done(如果遇到弹窗,需根据提示解决)

点击Generate会出现Open Project按钮,输出文本Generation Done(如果遇到弹窗,需根据提示解决)

打开生成的VTK.sln(由于INSTALL需要管理员权限,推荐编译前就用管理员打开VS)

打开工程后,根据需要选择Release或者Debug模式,等VS初始化完成,右键选择ALL_BUILD,点击生成,然后会等大约半个小时到一个小时的样子……

看到输出窗口显示生成:成功N个,失败0个,最新N个,跳过0个,恭喜!

然后,右键选择INSTALL,点击生成,然后等待……

完成后,可以看到刚才设置的安装目录下已经有个VTK文件夹,安装结束。

Windows 7下的VS2015 + Qt 5+ VTK安装配置(示例:读取医学文件)

 

-------------------------------------------------------------------------------------------------------------------------------------------------------

运行示例

打开VTK编辑文件夹下的bin目录,可以看到很多可执行文件,其中很多是Example的编译结果

打开Cone5.exer如下

Windows 7下的VS2015 + Qt 5+ VTK安装配置(示例:读取医学文件)

如果你打开Medical1.exe等很多编译出示例可执行文件,会发现没有弹窗,或者一闪而过

使用控制台运行程序可以看到,需要文件路径参数

Windows 7下的VS2015 + Qt 5+ VTK安装配置(示例:读取医学文件)

这里查看源码可以看到: v16->SetFilePrefix (argv[1]);

需要传入一个文件前缀参数,但是根据提示的格式怎么都不对!!!害得我把可能的环境变量设置了好几遍!

实际上这里有点坑的是,Windows平台下,传入参数后给到程序是没有双引号的字符串,所以无论怎样都识别不了路径!

正确格式如下(读取的文件是headsq目录下的quarter.1 quater.2 quater.3 ...):

Windows 7下的VS2015 + Qt 5+ VTK安装配置(示例:读取医学文件)

显示结果如下:

Windows 7下的VS2015 + Qt 5+ VTK安装配置(示例:读取医学文件)

 

还有,刚才如果我们有设置Qt,那如何使用呢?

注意到VTK安装目录下有个plugins目录,打开发现有个designer文件夹,再打开发现QVTKWidgetPlugin.dll

该文件为Qt Designer的插件。

实际上,如果你cmake配置得当的话,应该你打开Qt Designer就能发现已经装好该插件了

Windows 7下的VS2015 + Qt 5+ VTK安装配置(示例:读取医学文件)

如果没有的话,将上述动态链接库文件复制到D:\Qt\Qt5.7.1\5.7\msvc2015_64\plugins\designer目录下即可。