1. 软件版本
    CMAKE3.8.0
    Visual Studio 2017
    Qt 5.9.1
    VTK 8.0.0
  2. 安装Qt,注意选择与你安装的VS版本对应的组件
  3. 目录结构
  4. 打开CMake,如下设置

    点击configure:
  5. 选中VTK节点中的VTK_Group_Qt, 点击Configure
  6. Ungrouped Entries节点,确认Qt_QMAKE_EXECUTABLE 的路径,将VTK_QT_VERSION改成5. 点击Configure
  7. Ungrouped Entries节点,确认Qt的各个目录,注意,如果Qt已经被添加到环境变量中,这里的目录会自动填好,如果机器上安装有多个版本的Qt或者没有添加环境变量,请一定要确认这一步,
  8. VTK节点,确认VTK_BUILD_QT_DESIGNER_PLUDIN已经被勾选
  9. CMAKE节点, CMAKE_INSTALL_PREFIX选项,该选项是VS编译输出的目录,以后要使用的库目录,包含目录等目录都会在这个目录之下,请按照自己的习惯设置,此处设置为上文建立的D:\Libraries\vtk\vtk8.0.0\VTK-install
  10. 点击Add Entry按钮,Name填写CMAKE_DEBUG_POSTFIX,Type选择STRING,Value填写-gd,填写完如下:设置完这一步之后,编译输出的debug库和release库的名称就会不同,这样方便以后的使用且不会在生成的时候相互覆盖.
  11. 点击Configure.此时应该没有红色的条目了.
  12. 点击Generate
  13. 在CMake的输出目录中,应该已经生成了对应的VS解决方案,用VS打开它.
  14. 以管理员身份运行VS(如果输出目录不是C盘,就不必使用管理员权限),打开VTK.sln
  15. Debug模式,生成ALL_BUILD.完成后生成INSTALL.
  16. Release模式,生成ALL_BUILD.完成后生成INSTALL.
  17. 上述步骤完成后,在CMAKE_INSTALL_PREFIX设置的路径下,即为编译好的文件。
  18. 与Qt相关的操作
    把release版本的QVTKWidgetPlugin.lib和QVTKWidgetPlugin.dl拷贝到Qt的Designer目录下,这样QtDesigner的控件箱中就有QvtkWidget控件了.
    你应该在这里找到这两个文件:

    (cmake输出路径)\bin\Release\QVTKWidgetPlugin.dll
    (cmake输出路径)\lib\Release\QVTKWidgetPlugin.lib

    你应该把这两个文件放到这里:

    (Qt安装路径)\Qt\Qt5.9.1\5.9.1\msvc(Cmake中选择的Msvc版本)\plugins\designer

如果你发现你的Designer中没有QvtkWidget控件,那么很有可能是这样:
你安装的Qt版本中,包含多个生成工具,如果你在(Qt安装路径)\Qt\Qt5.9.1\5.9.1\目录下面找到了多个msvc…这样的文件夹,那说明的确是这样,你应该从正确的msvc文件夹下的bin文件夹中启动designer.
19. 如何使用
到VTK的install目录下:
① 把bin目录加入环境变量
② 到lib目录下,按住shift键在空白处点击鼠标右键,选择”在此处打开命令行窗口”或者”在此处打开Power Shell窗口”,然后输入:dir /b >all.txt,生成全部文件名列表
③ 将这个列表中所有扩展名不是lib的文件名删掉,将这个文件复制两份,分别命名为debug.txt和release.txt,然后把debug.txt中的所有不带有”-gd”的删掉,把release.txt中的所有带”-gd”的删掉.可以使用正则表达式进行匹配并配合支持正则表达式的文本编辑器(例如VSCode或者Sublime或者Visual Studio的代码编辑区域)把不需要的条目删掉,下面给出正则表达式:

vtk+[a-zA-z1-9]+\-8\.0\-gd\.lib    匹配debug库
vtk+[a-zA-z1-9]+\-8\.0\.lib        匹配release库

④ 当你在VS中新建一个工程需要使用vtk时,在项目属性的包含目录中添加此处的include目录,在库目录中添加此处的lib目录,然后在debug模式下,链接器->输入->附加依赖项中添加Debug.txt中的项目,在release模式下, 链接器->输入->附加依赖项中添加release.txt中的项目
⑤ 如果你使用vtk的官方案例,你将会用到cmake,这时一定要确保你要使用的Qt版本和VTK版本在环境变量中能够被优先找到,这样就不需要手动填写了

20. Vtk中常见的非编译期错误的解决方案 此处指得是,程序能够通过编译链接,但是运行的时候弹出一个写着vtk error 的窗口. ① Error: no override found for ‘vtkRenderWindow’. 解决方案:在main.cpp文件中添加如下代码:

#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkInteractionStyle);

② QWidget: Must construct a QApplication before a QWidget
解决方案:这是在Release模式下使用了Debug模式的lib导致的.
③ 初始化错误
解决方案: 添加#include <vtkAutoInit.h>
④ VTK Error: no override found for ‘vtkVolumeTextureMapper2D’.
Error: no override found for ‘vtkRayCastImageDisplayHelper’.
解决方案: 添加VTK_MODULE_INIT(vtkRenderingVolumeOpenGL)
⑤ Error: no override found for ‘vtkImageMapper’.
解决方案在main函数中添加:
VTK_MODULE_INIT(vtkRenderingOpenGL)
⑥ Error:Could not locate vtkTextRenderer object.
解决方案: 添加:VTK_MODULE_INIT(vtkRenderingFreeType)
⑦ Error: Link to vtkinteractionstyle
添加:VTK_MODULE_INIT(vtkInteractionStyle)
⑧VTK6.3.0:Error: no override found for ‘vtkContextDevice2D’
添加VTK_MODULE_INIT(vtkRenderingContextOpenGL)

从DICOM开始入门医学图像处理-2-VTK+Qt+VS开发环境搭建相关推荐

  1. 《Python入门》Windows 7下Python Web开发环境搭建笔记

    最近想尝试一下在IBM Bluemix上使用Python语言创建Web应用程序,所以需要在本地搭建Python Web的开发测试环境. 关于Python的版本 进入Python的网站,鼠标移到导航条上 ...

  2. 微信公众号开发系统入门教程(公众号注册、开发环境搭建、access_token管理、Demo实现、natapp外网穿透)

    由于图片图床问题,文章部分图片无法预览,暂时把该文章迁移至简书,给大家带来麻烦,抱歉了. 感兴趣的小伙伴可参考:https://www.jianshu.com/p/cc1b1050b5b4 Autho ...

  3. 《Node.js入门》Windows 7下Node.js Web开发环境搭建笔记

    最近想尝试一下在IBM Bluemix上使用Node.js创建Web应用程序,所以需要在本地搭建Node.js Web的开发测试环境. 这里讲的是Windows下的搭建方法,使用CentOS 的小伙伴 ...

  4. 【机器学习-数据科学】第二节:ipython开发环境搭建以及pandas快速入门

    ipython开发环境搭建以及pandas快速入门 0.开发环境搭建 技巧 网页版ipython:ipython notebook numpy 1.pandas 快速入门一 导入 创建对象 2. pa ...

  5. 【技术文档】Jeecg-P3开发环境搭建入门(java插件开发框架)

    一.项目工程说明 jeecg-p3-web       | 启动主项目 jeecg-p3-biz-demo | 插件项目     注意:项目为maven工程,采用maven方式导入eclipse等ID ...

  6. 【官方搭建入门】JEEWX 捷微开发环境搭建必读

    [官方搭建入门]JEEWX 捷微开发环境搭建必读 下载地址: http://git.oschina.net/jeecg/jeewx 1. 标准开发环境:eclipse + maven + jdk7 + ...

  7. 【官方搭建入门】JEECG 平台开发环境搭建必读

    [官方搭建入门]JEECG 平台开发环境搭建必读 下载地址:http://git.oschina.net/jeecg/jeecg 1. 标准开发环境:eclipse + maven + jdk7 + ...

  8. Android开发环境搭建与入门Hello World

    一直没机会接触手机开发,很想开发一款手机围棋软件,今天先学习一下环境搭建与Hello World吧. 环境配置对于没入门的很麻烦,谁如果有需要留下QQ邮箱,我发给你.不客气,呵呵. 推荐一本书: Go ...

  9. STM32入门笔记(02):MDK Keil5 开发环境搭建及新建工程模板教程(SPL库函数版)

    目录 Keil5 开发环境搭建 芯片数据手册 Mec 多功能智能小车底盘开发与使用手册 Mec 主控原理图 Mec STM32F103VET6集成主控板资源分配 Mec OLED 显示内容 如何给 S ...

最新文章

  1. 【译】使用这些 CSS 属性选择器来提高前端开发效率!
  2. 2台电脑间快速复制大文件
  3. unity中单位是米还是厘米_小学数学常用单位换算汇总,收藏起来方便孩子查阅...
  4. CUDA在Debug下编译有错而Release下无错
  5. mysql hp ux_hp ux apa 切换
  6. 生产环境频繁内存溢出,原来就是因为这个“String类”
  7. 响应式下的雪碧图解决方案 - 活用background-size / background-position
  8. python 菜鸟-Python 元组
  9. 拓端tecdat|r语言中对LASSO回归,Ridge岭回归和Elastic Net模型实现
  10. 代码换行符_Excel办公技巧:如何定位、替换、清除单元格中的换行符?
  11. 大学毕业生,关于转正定级和干部身份你懂吗?
  12. poco mysql 安装_linux 下 POCO 安装
  13. 社会工程学利用的人性_社会互程学利用的人性“弱点”
  14. 按字母顺序排列c语言,C语言有n个国家名,要求按字母先后顺序排列,并按升序输出。(要求:尽量使用标准字符串函数)...
  15. python制作壁纸获取器exe,壁纸采集
  16. 真!AI低代码平台——瀚码编程小助手“叨叨“正式上线!
  17. 电脑上怎样下载喜马拉雅里的 Mp3
  18. 【SecureFx服务器无法上传文中文件】
  19. 2015520吴思其 基于《Arm试验箱的国密算法应用》课程设计个人报告
  20. 尚学堂JAVA第四章课后答案

热门文章

  1. 前端监控与前端埋点(初探)
  2. Linux fuser 命令详解------常用选项fuser功能使用
  3. Centos7: Docker安装与实践
  4. python学习之数据分析(二):Matplotlib库:常用画图技巧, 折线图, 散点图,柱状图,直方图, 饼图
  5. 成都前端开发工资是多少?工资高吗?
  6. LuoguP4383 [八省联考2018]林克卡特树lct
  7. python matplotlib画抛物线和一次函数图像
  8. 什么是图灵机和通用计算机,从图灵机到冯诺依曼体系结构让你知道什么才是计算机?...
  9. java 设计模式之State篇
  10. 中文打字速度测试软件官网,中文打字速度测试软件