zoukankan      html  css  js  c++  java
  • 创建一个简单的VTK程序

    创建VTK程序的前提是必须之前已经正确编译并安装了VTK,因为VTK程序中会用到VTK中的头文件和各种库文件。

    该程序的建立也可用于验证VTK是否安装正确。

    关于VTK的安装过程可以参考:

                1.VTK6.2&6.3+VS2013+QT5编译配置

                2.Visual Studio 2013编译VTK7.1.0

                2.官方VTK配置和构建

                3.官方QT安装方法


    i.

    建立一个文件夹,为便于示例程序的管理,该文件夹目录可以为VTK/Examples,然后在该文件夹下建立本程序所属文件夹”chap01“。

    接着在新建的chap01示例程序目录下创建一个名为”CMakeLists.txt“的记事本文件,输入内容:

    CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
    PROJECT(Chap01)
    FIND_PACKAGE(VTK REQUIRED)
    INCLUDE(${VTK_USE_FILE})
    ADD_EXECUTABLE(TestVTKInstall TestVTKInstall.cpp)
    TARGET_LINK_LIBRARIES(TestVTKInstall ${VTK_LIBRARIES})

    然后在CMakeLists.txt同级目录下新建一个cpp文件,名为”TestVTKInstall.cpp“,输入内容:

    #include <vtkRenderWindow.h>
    #include <vtkSmartPointer.h>
    int main()
    {
    	vtkSmartPointer<vtkRenderWindow> renWin =
    	vtkSmartPointer<vtkRenderWindow>::New();
    	renWin->Render();
    	std::cin.get();
    	return 0;
    }

    ii.

    打开CMake程序,在CMake的where is the source code 文本框中输入CMakeLists.txt所在路径,在where to build the binaries 文本框中输入编译目录的路径,如VTK/Examples/chap01/bin 。

    接着单击configure按钮,选择准备使用的编译环境,CMake开始配置工程。

    VTK_DIR这个选项自动指向VTK的编译目录,准确的讲这个路径就是VTKConfig.cmake文件所在的完整路径。一般情况下,编译完VTK后,用CMake配置VTK工程时,该选项的值都会自动填充。如果CMake找不到,或者找到的不是想要的VTK版本(假设计算机上编译有多个版本的VTK时),可以通过直接手动输入路径。

    而对于CMAKE_INSTALL_PREFIX这个选项默认的值都是 C:Program Files*** (***指的就是在CMakeLists.txt里的PROJECT(***)命令里所指定的工程名字)。

    多次configure直到没有红色选项出现,最后单击Gneerate按钮,生成工程。生成文件如图:

    iii.

    打开Chap01.sln文件,Build该工程,工程较小很快就可以完成。然后右击TestVTKInstall工程,选择Set as StartUp project设置为启动工程,再运行该工程。

    运行可能会出错 如图:

    会提示有四个dll文件找不到,这几个动态链接库文件就是编译VTK时生成的。可采取以下方式解决:

       1.  在VTK的编译目录下(**/bin/Debug)找到缺少的文件,然后复制到工程所在的目录下。

       2.  在系统变量Path中添加VTK动态链接库所在的完整路径(**/bin/Debug)。

       3.  右击项目“TestVTKInstall”在快捷菜单中选择properties->configuration properties->debugging选项,找到“working directory”,再把(**/bin/Debug)放在这里,单击确定即可解决问题。但是这种方式生成的可执行文件在执行时又会出现同样问题。

    程序运行情况如下:

    靠前的时VTK窗口,靠后的时控制台窗口,用CMake构建的工程,默认都是带控制台窗口的,以便输出调试信息。

    参考:《VTK图形图像开发进阶》

  • 相关阅读:
    剑指OFFER之复杂链表的复制(九度OJ1524)
    剑指OFFER之二叉树中和为某一值的路径(九度OJ1368)
    剑指OFFER之从二叉搜索树的后序遍历序列(九度OJ1367)
    剑指OFFER之从上往下打印二叉树(九度OJ1523)
    剑指OFFER之栈的压入、弹出序列(九度OJ1366)
    剑指OFFER之包含min函数的栈(九度OJ1522)
    剑指OFFER之顺时针打印矩阵(九度OJ1391)
    剑指OFFER之树的子结构(九度OJ1520)
    剑指OFFER之二叉树的镜像(九度OJ1521)
    VM安装CentOs7虚拟机后无法上网之解决方法
  • 原文地址:https://www.cnblogs.com/oneDongHua/p/14264102.html
Copyright © 2011-2022 走看看