安装VTK

news/2024/11/18 15:23:47/

需要的环境及文件

  • 平台:win10
  • 已安装好的Visual Studio,建议2017及2019。vs主要是用来编译VTK,最后生成我们想要的库文件,头文件之类的。
  • 已安装好的Qt,建议版本5.9或5.12
  • cmake-gui,如未安装可参照下面的教程。cmake是用来把下载下来的VTK源码配置生成vs的解决方案的,好让vs去打开编译。

 

1.下载VTK和cmake

VTK下载地址:https://vtk.org/download/

cmake下载地址:https://cmake.org/download/

 

VTK下载Lasted Release吧,当然之前的旧版本也可以,选择Source下的.zip版本,tar.gz是Linux的。cmake记得下载.msi后缀的,这里选择64位的即win64,下载好后直接双击默认下一步安装即可。

 

接着把下载下来的VTK压缩文件解压,进入到目录中,再创建两个文件夹分别叫vtk-install和vtk-prefix,其中vtk-install是cmake配置后生成vs解决方案的地方,而vtk-prefix是存放vs编译后生成的一些库文件,头文件的地方,这也是我们最终需要的东西。

 

2.在cmake中设置VTK,生成vs的项目

选择源码目录和编译后的目录,然后点击左下角的Configure按钮,这时会让选择vs版本,我这里装的是vs2019所以选择此选项,随后点击Finish便开始了第一次Configure。注意,在下图的第二个框中是可以选择编译的版本的(arm,32位,64位等),默认是64位的。

 

第一次Configure应该要挺长时间,5-10分钟吧,具体看电脑的处理器性能,这只是第一次,后面还有好几次,因为需要继续改参数配置,第一次的Configure过后,会出现下图所示的一片红色,这个不用担心,这里需要修改的地方有三处,分别是:

  1. BUILD_EXAMPLES:生成一些vtk官方的examples,帮助理解学习,当然不选择也没事;
  2. CMAKE_INSTALL_PREFIX:这里存放之后使用vtk时的一些动态库dll,二进制库lib,vtk的一些头文件之类的。图上此项的位置还是默认的,没有修改,应该改为刚创建的那个vtk-pefix文件夹的路径;
  3. VTK_Group_Qt:我这里需要在Qt中使用vtk,所以选择了此项。

 

修改完之后继续Configure,这时候肯定会出现下图的红色,因为第一次的时候选择了VTK_Group_Qt,现在要把Qt安装目录中的cmake目录填进去,下图中的目录是我自己的Qt安装目录,注意更改。

 

接着第三次Configure,这时候会出现下图中的这些,这个不用管他不用修改,直接再点一次Configure,直到全部变成白色的界面为止。

 

在cmake的最下面信息输出处,如果输出一些warning警告的话不改也没事,不过最好根据提示修改一下,我这里偷懒,先不改了,先编译出来最要紧。只要下面显示Configuring done Generating done就好。

 

这时候再点最后一个按钮,Open Project,这时候会打开vs加载整个vtk解决方案,cmake的任务也到此结束。

 

3.用vs编译vtk

进入到vs之后,打开VTK-install文件夹中的vtk.sln会打开整个项目,这时候右键解决方案名,按下图所示的步骤先设为启动项目再生成,这个生成时间比较长,可能要半个小时到一个小时,耐心等待。并且注意是要编译两版的,一版是Debug,一版是Release,编完默认的Debug后记得把工程切换到Release再编一下。

 

生成成功后,重复设为启动项目->生成的步骤给INSTALL

 

最后等INSTALL也生成成功了,再随便选一个其中的examples设为启动项目,ctrl+f5运行它,如果出现图像了说明整个的编译结束完成了。

 

当然以上的只是一个自带的example,具体如何使用编译好的VTK去写程序,请看下一章:https://blog.csdn.net/qq_37996632/article/details/105879911

 

编译出的文件目录说明

  • bin:动态链接库DLL
  • include:vtk的头文件
  • lib:静态库lib
  • plugins:在Qt Designer中使用的图形化的QVTKWidget,不过没啥用,已经被QVTKOpenGLWidget,QVTKOpenGLNativeWidget等淘汰了
  • share:里面就一个doc,没啥用

最主要是bin,include,lib,其中include是Debug和Release通用的,bin和lib要分为Debug和Release两版 ,一般在项目中使用的时候组织方式如下图所示。

 

下面是我已经编译好的,已测可以运行的,度盘链接如下:

链接:https://pan.baidu.com/s/1B6wzDfuNCGTO0DF48wQqZg 
提取码:kvln


http://www.ppmy.cn/news/372534.html

相关文章

VTK-Tessellator Subdivision

前言:本博文主要研究Tessellator 的Subdivision实现方式,并对涉及到vtk中的所有相关接口进行研究,以期找出网格Remesh的方法。希望此篇文章也能给其他小伙伴带来帮助! 目录 vtkTessellatorFilter vtkEdgeSubdivisonCriterion …

VTK

视觉化工具函式库(VTK,Visualization Toolkit)是一个开放源码,跨平台、支援平行处理(VTK曾用于处理大小近乎1个Petabyte的资料,其平台为美国Los Alamos国家实验室所有的具1024个处理器之大型系统&#xff0…

VTK下载并安装

去官网下载https://vtk.org/download/ 选择最新稳定版本 然后点击source后边的压缩包进行下载。 下载完成后将其解压到特定的文件夹下,然后打开cmake-gui.exe,第一行选择刚刚解压的文件夹,这个文件夹下有一个CMakeLists.txt文件&#xff0c…

VTK实现电影级渲染效果(CVR)

目前vtk9.2.2版本中已经集成了ray marching(光线步进)算法实现的体渲染功能,官方博客中已经介绍为电影级体渲染了,如图: 此效果是在3d显示器上的显示效果,就此效果来看说是电影级渲染效果也没什么问题&…

vtk文件格式

最近学了一下vtk文件的格式, 做一个小结。文中用方括号标示出来的文字是根据实际需要自己定义的部分,其他的如DATASET, POINTS,CELLS等是vtk本身的格式要求一部分。 文章目录 1. 第一部分,数据版本声明(不重要)2. 第二部分&#x…

Ti-KV

目录 TiKV 持久化 TiKV架构及作用 RocksDB RocksDB:查询 RocksDB:列簇 TiKV 分布式事务 TiKV Raft Propose Append Replicate Committed Apply Raft Leader选举 TiKV读写与Coprocessor ReadIndex Read Lease Read Follower Read C…

vtk能干什么(适用范围)

参考博客:VTK能做什么_51CTO博客_vtk是什么 1、求一点与一条线之间的距离 2、两点之间的距离 3、生成均匀分布的随机数 4、生成高斯分布的随机数 5、确定点是否在面上 6、读取xgml文件 7、读取一个简单的点文件 8、读取XYZ A格式的点文件 9、读取一个文本文…

VTK渲染引擎

本文翻译自VTK user guide. VTK渲染引擎由VTK中的类组成,这些类负责获取可视化管道的结果并将其显示到窗口中。这涉及以下组件。注意,这并不是一个完备的列表,而是渲染引擎中最常用对象的含义。这里使用的副标题是VTK中表示这种类型对象的最高…