VTK可视化工具库:编译与添加模块

来源:互联网 发布:mac卸载office2016 编辑:程序博客网 时间:2024/06/11 06:08
VTK 可视化工具库

一、编译

VTK使用CMake作为项目管理工具。在源代码根目录下有CMakeLists.txt文件。

1、编译过程:
    运行CMakeGUI,选择源代码目录和编译目录(不要使用相同目录),依次点击configure,generate生成sln解决方案。

2、编译选项:
    BUILD_SHARED_LIBS 是否编译为dll,一般选是
    BUILD_TESTING 是否编译测试模块,可以选否,提高编译速度
    VTK_LEGACY_REMOVE 移除兼容模块 选是
    VTK_LEGACY_SILENT 不显示兼容信息 选是
    BUILD_EXAMPLES 编译例子
    VTK_WRAP_PYTHON 编译python导入库,如果需要在python使用vtk则选是,下同。
    VTK_WRAP_JAVA
    VTK_WRAP_TCL
    VTK_MAKE_INSTANTIATORS
    BUILD_DOCUMENTATION 文档

二、添加模块

    如果VTK提供的模块不够用,那就需要扩展VTK。

    1、首先要了解下VTK模块组织结构。在VTK6.0中,模块分为二级结构:模块名称--子模块。例如Common/Core模块,Common是顶层结构,Core是二级结构。
    2、添加模块需要先确定模块所在的顶层结构目录,比如Filters。然后给模块取名并为它创建单独为文件夹,放在Filters目录下。例如Filters/MyMod
    3、在MyMod文件夹中创建两个文件:module.cmake和CMakeLists.txt.
   
    module.cmake内容:
        vtk_module(vtkFiltersMyMod
          GROUPS
            StandAlone
          DEPENDS
            vtkFiltersCore
          )
      
        vtkFiltersMyMod为模块名称。
        GROUPS 分组信息,在CMakeGui中会提示是否编译StandAlone。
        DEPENDS 依赖的模块,CMake自动解决头文件包含和库文件引用问题。
   
    CMakeLists.txt内容:
        set(Module_SRCS
          vtkMyMod.cxx
          )
         
        vtk_module_library(vtkFiltersMyMod ${Module_SRCS})
       
        Module_SRCS 变量名,随意取。
        vtkMyMod.cxx 源代码,结尾必须为cxx,否则CMake不认vtkMyMod.h文件。
        vtk_module_library VTK提供的宏,用于声明模块的源代码。
       
    4、重新运行CmakeGui,编译。

0 0
原创粉丝点击