一、版本

  win10

  VS2019

  VTK8.2.0

  其实vtk的安装过程和itk的安装过程很是类似,如果你对itk的安装很是熟悉(也就是我的博客一里面的内容,那么自己就可以安装。)

  如果不放心,可以接着往下看

二、过程

 1-下载

  访问 https://vtk.org/ ,下载vtk8.2.0.zip

 2、解压到一个文件夹

  然后新建两个文件夹,分别是VTK-install 和 VTKprefix

 3-打开cmake,编译

  

  <1>设置文件夹路径如图,第一个是原文件,第二个是编译之后的二进制文件存放位置

  <2>然后点击configure

  

  点击之后等到已经结束

  <3>在红色区域里面找到BUILT_EXAMPLES,勾选上去:

  

  <4>之后修改CMAKE部分的一个选项:

  

  将这个路径更改为我们之前修建的VTK-prefix

  <5>之后重新点击Configure

  <6>等到界面全部变成了白色以后(如果有一两项是红色多点几次Configure),点击Generate

  <7>点击Open project

  

  整个时候整个的函数库就已经在VS里面打开了

 4-VS里面编译

  实际上这个时候所有的文件已经在VTK-bin文件夹里面,但是还没有编译,我们需要重新生成

  在VS界面右侧找到ALL_BUILD

  

  然后右键,选择设为启动项目。

  然后右键,选择生成解决方案。

  

  这个时候等待时间比较久。

  然后选择工程里面的INSLATT项目:

  

  放在INSTALL上面,然后右键,选择仅项目-仅生成INSTALL

  

  这个时候VTK-prefix文件夹里面就存在文件了(这也是我们主要使用的文件)。

三、验证

 1-例子验证

  找到Cube这个工程,然后设置为启动项目,再运行程序,这个时候程序已经完整运行,证明我们安装正确。

 2-自己构建例子

   2.1过程

  <1>重新构建一个空项目。

  <2>新建main.cpp

  并将cube里面的代码复制到main.cpp里面

  <3>配准属性表

  属性表的配置参考博客1ITK的安装与例子运行

  <4>设置程序模式为release X64

  <5>运行程序

    2.2、出现错误

  1、编译问题:

  

  解决办法:https://www.cnblogs.com/algs/p/11089754.html

  2、编译不再出问题,但是运行出问题

  显示错误:no override found for vtkpolydatamapper

  解决办法:https://blog.csdn.net/kaspar1992/article/details/57080724

  最后结果运行正常,显示出画面:

  

  3-下次如何构建新的工程

  1-建立工程以后,将上面第2步里面的属性表复制到本工程文件夹,然后在属性管理器里面添加这个属性表

  比如我的工程设置为这个模式:

  

  那么我只需要在这里添加就好了:

  

  其他的代码部分就是正常的,不用去管。

四、参考博客

  主要参考博客:https://blog.csdn.net/weixin_43981402/article/details/84845274

  问题一博客:https://www.cnblogs.com/algs/p/11089754.html

  问题二博客:https://blog.csdn.net/kaspar1992/article/details/57080724

  我的ITK安装博客:https://www.cnblogs.com/fantianliang/p/11937788.html

  vtk下载网址:https://vtk.org/download/

  

八、VTK安装并运行一个例子的更多相关文章

  1. hadoop安装后运行一个单实例(测试MapReduce程序)

    1.安装hadoop 解压hadoop-1.2.1-bin.tar.gz包   tar -zxvf hadoop-1.2.1-bin.tar.gz  /opt/modules/ 解压后在/opt/mo ...

  2. sparkR的一个运行的例子

    在sparkR在配置完成的基础上,本例采用Spark on yarn模式,介绍sparkR运行的一个例子. 在spark的安装目录下,/examples/src/main/r,有一个dataframe ...

  3. 让powershell同时只能运行一个脚本(进程互斥例子)

    powershell,mutex,互斥,进程互斥,脚本互斥 powershell脚本互斥例子,在powershell类别文章中,声明原创唯一. powershell 传教士 原创文章 2016-07- ...

  4. Visual Studio 2015 Update 1 成功安装后运行 “出现未能正确加载[XXXX]包,此问题可能是由配置更改或安装另一个扩展导致的。” 可能的解决方法

    作死装Visual Studio 2015 update 1.安装过程中虽然波澜不惊,但是安装之后运行回报未能正确安装[XXXX]包.找了半天,在stackoverflow中找到了相关的问题,在问题描 ...

  5. Eclipse下载安装并运行第一个Hello world(详细)

    Eclipse下载安装并运行第一个Hello world(详细) 1.下载安装和配置JDK JDK详细的安装教程参考:https://www.cnblogs.com/mxxbc/p/11845150. ...

  6. Docker安装以及运行第一个HelloWorld

      Docker安装以及运行第一个HelloWorld

  7. 在Kubernetes上运行SAP UI5应用(下): 一个例子体会Kubernetes内容器的高可用性和弹性伸缩

    上一篇文章 在Kubernetes上运行SAP UI5应用(上),我介绍了如何在Docker里运行一个简单的SAP UI5应用,并且已经成功地将一个包含了这个UI5应用的docker镜像上传到Dock ...

  8. [Linux][Hadoop] 运行WordCount例子

    紧接上篇,完成Hadoop的安装并跑起来之后,是该运行相关例子的时候了,而最简单最直接的例子就是HelloWorld式的WordCount例子.   参照博客进行运行:http://xiejiangl ...

  9. 【转】hive简介安装 配置常见问题和例子

    原文来自:  http://blog.csdn.net/zhumin726/article/details/8027802 1 HIVE概述 Hive是基于Hadoop的一个数据仓库工具,可以将结构化 ...

随机推荐

  1. 在ASP.NET Core中使用托管启动(hosting startup)程序集,实现批量注册service

    在启动ASPNET Core时可以从外部程序集向应用添加增强功能.例如,外部库可以用托管启动( hosting startup) 实现为应用程序提供附加配置(Configuration)或服务(ser ...

  2. Day 04 数据类型基础

    目录 什么是数据类型 为什么对数据分类 整型和浮点型统称为数字类型 整型(int) 作用 定义 使用方法 浮点型(float) 作用 定义 使用方法 强制类型转换 什么是字符串 作用 定义 使用方法 ...

  3. CentOS6.8系统最小化安装

    一.CentOS系统版本 CentOS-6.8-x86_64 二.安装系统 1.打开VMware主页点击创建虚拟机 2.选择镜像 3.启动虚拟机 4.键入回车键直接进行安装 5.按Tab键选择Skip ...

  4. CSS中@support的用法

    这段时间一直在调试浏览器的兼容性问题,了解到了@support的这个属性,记录下: CSS中的@support主要是用于检测浏览器是否支持CSS的某个属性,其实就是条件判断,如果支持某个属性,你可以写 ...

  5. 在Atmel Studio7中创建ASF项目

    使用ASF自带例程的方式创建程序是很方便,但是因为系统例程支持的ATMEL开发板往往和用户板配置不同,所以我们需要自己创建项目.下面介绍在AS7.0中快速创建一个ASF项目的方法. 1.首先从菜单开始 ...

  6. ansible部署Tomcat

    首先要准备的环境就是免密登录 这是要在ansible-playbook中所写的内容---- hosts: tomcat tasks:   - name: 关闭防火墙     service: name ...

  7. linux,centos,php,word转图片方法

    刚开始的时候是客户的活儿,真的是没有想到,被这样一个方法给卡住了,真是醉了,经过漫长的一周,终于搞定了这个问题,以下就来给大家介绍以下这个方法把.能方便大家. (直接转换没办法,所以找了个折中的办法, ...

  8. JVM系列二(垃圾收集算法).

    一.标记-清除算法(Mark-Sweep) 这种算法分为"标记"和"清除"两个阶段:首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象. Mar ...

  9. Python面向对象-获取对象信息type()、isinstance()、dir()

    type() type()函数用于判断对象类型: >>> type(11) <class 'int'> >>> type('abc') <clas ...

  10. .NET Core的JWT认证的学习

    今天学习下JWT,遇到了两个坑爹问题,这里记录下.在 ASP.NET Core 中,授权的设置方式有两种,可以使用角色,也可以使用策略,这里也将简单举例角色.策略的使用. JWT这里不做介绍,如果想了 ...