一、说明

      本文的主要目的是在说明通过Cmake重新编译VTK,使得其能够与QT交互使用

二、VTK的安装

       VTK版本:8.2.0

      VS版本2019

       电脑:win-64bit

  需要软件:CMake(我使用的版本是3.16.0)

三、过程

       大概过程分为以下几个步骤:

        1、下载vtk压缩包,然后解压

        2、通过Cmake编译

        3、打开VS编译解决方案 , 在编译生成的时候,我们要注意自己的VS的属性配置,可以将VS参数先设置为Release x64,编译生成,然后将属性设置为Debug x64,再次编译生成,这样我们就可以使用两个配置的vtk。我因为没有这么高的要求,所以只生成了Release x64版本的。

        4、安装

      具体过程过程可以参考这个博客:

     

     还有这个:

      

  唯一有区别的地方在于我们在使用CMAKE编译的时候需要勾选上与QT有关系的地方:

      

vtk库编译android vtk安装_系统变量

 

      

vtk库编译android vtk安装_QT_02

 

          

vtk库编译android vtk安装_vtk库编译android_03

 

        同时我们还需要勾选Group选项:

        

vtk库编译android vtk安装_环境变量_04

 

          然后点击Configure选项,如果仍然有红色,多点击几次。

        其他的过程完全一样。

        注意:在安装之前最好已经将QT添加到了系统的环境变量里面去,这样在CMAKE里面可以自动搜索到QT的版本和位置,如果不能,那我们就在红色的地方手动输入,因为我的已经加入到了系统变量里面去,所以我没有遇见这种情况。

四、将QT或者VTK添加到系统环境变量里面的方法

  注意QT应该在VTK安装之前就已经安装好,然后再设置完QT的环境变量以后再安装VTK

       使用情况:win10电脑

       1、打开任意一个文件夹,找到此电脑

        

vtk库编译android vtk安装_系统变量_05

 

     2、鼠标放在上面,然后右键点击属性,打开控制面板

        

vtk库编译android vtk安装_vtk库编译android_06

 

     3、选择高级系统设置:

     

vtk库编译android vtk安装_vtk库编译android_07

 

     4、打开环境变量,在系统变量下面选择编辑:

 

         

vtk库编译android vtk安装_系统变量_08

 

        在系统变量里面选择Path,然后点击编辑:

        

vtk库编译android vtk安装_QT_09

 

        5、添加QT文件夹,这个文件夹应该是QT的安装路径(这个文件夹是QT的插件一类的东西,需要另外下载,是辅助VS使用QT产生的,前面的博客已经提到了):

       

vtk库编译android vtk安装_QT_10

 

          注意在QT的安装文件夹里面一共有两个版本:

           

vtk库编译android vtk安装_vtk库编译android_11

 

我选择64位的。

 

添加的是其安装文件夹里面的bin文件夹

           

vtk库编译android vtk安装_vtk库编译android_12

 五、在QT里面使用VTK

    将D:\FilesSetup\VTK\VTK-prefix\plugins\designer里面的 QVTKWidgetPlugin.dll  复制到:

                  如下界面:

              

vtk库编译android vtk安装_QT_13

 

              这个时候我们打开QT designer msvc x64:

             

                           

vtk库编译android vtk安装_系统变量_14

 

              会看到有这样的一个控件:

             

vtk库编译android vtk安装_环境变量_15

 

             这个时候差不多已经安装完成

 六、补充

如果CMAEK编译的时候勾选了TESTING选项,这个时候需要下载vtkdata文件,我没有下载,所以只编译了vtk_EXAMPLES

 

纵一苇之所如,临万顷之茫然。