标签归档:可视化

VTK基础:VTK中主要 class

vtkAlgorithm & vtkPolyDataAlgorithm

vtkAlgorithm 通过 SetInputConnectionAddInputConnectionGetOutputPort 进行管线的连接。

vtkPolyDataAlgorithm 继承自 vtkAlgorithm ,以多边形数据作为输出。Cylinder 程序中的 vtkCylinderSource 继承自 vtkPolyDataAlgorithm

vtkPolyDataAlgorithm 通过 GetOutput 可以直接获得 vtkPolyData*

VTK 中所有 sources、 filters 均直接或间接继承自 vtkAlgorithm


 vtkAbstractMapper & vtkPolyDataMapper

vtkAbstractMapper 相关子类用于将输入数据转换为几何图元(2D / 3D)。…

VTK基础:VTK可视化流程

计划在 GitHub 开写《VTK简明教程》,地址:https://github.com/csuzhangxc/vtk-simple-tutorial
另,GitBook 地址:https://www.gitbook.com/book/csuzhangxc/vtk-simple-tutorial


VTK 两大重要模块

每个 VTK 程序,均包含两个最重要的模块:

  • 可视化管线(Visualization Pipeline)
  • 渲染引擎(Rendering Engine)

其中,可视化管线用于获取或创建数据、加工处理数据、把数据写入文件或者把数据传递给渲染引擎,渲染引擎负责数据的可视化表达。


Cylinder 程序

说明:本示例程序修改自 VTK-6.1.0/Examples/Rendering/Cxx/Cylinder.cxx

#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL)
VTK_MODULE_INIT(vtkInteractionStyle)

#include "vtkCylinderSource.h"
#include "vtkPolyDataMapper.h"
#include "vtkActor.h"
#include "vtkRenderer.h"

Qt5(MinGW)使用CMake编译与使用VTK6

本文使用的各软件版本如下:
Qt:5.4.0;
MinGW:4.9.1;
CMake:3.1.1;
VTK:6.1.0。

下载最新版Qt(MinGW版):http://www.qt.io/download-open-source/
下载最新版CMake:http://www.cmake.org/download/
下载最新版VTK:http://vtk.org/VTK/resources/software.html


编译VTK

安装Qt(安装过程中注意勾选安装MinGW)与CMake,并添加与Qt集成安装的MinGW可执行程序路径(Qt***/Tools/mingw***/bin,即mingw32-make.exe所在路径)到系统环境变量PATH
解压VTK,建议解压后路径不要包含中文与空格。

打开VTK目录下的CMakeLists.txt文件,在约第219行,将set(VTK_USE_WIN32_THREADS 1)修改为set(VTK_USE_PTHREADS 1),该处原始上下文为:

include(FindThreads)
set(VTK_USE_WIN32_THREADS 0)
set(VTK_USE_PTHREADS 0)
set(VTK_HP_PTHREADS 0)
set(VTK_USE_SPROC 0)
if(CMAKE_USE_WIN32_THREADS_INIT)
  set(VTK_USE_WIN32_THREADS 1)
  set(CMAKE_THREAD_LIBS_INIT "")
elseif(CMAKE_USE_PTHREADS_INIT)