VTK教程之二:可视化管线的执行
来源:互联网 发布:怎么把商品放到淘宝网店里去 编辑:程序博客网 时间:2024/05/18 17:00
构建好可视化管线后,构成可视化管线的各个对象对数据的处理过程,成为可视化管线的执行,当管线中的过程对象或数据发生改变时,可视化管线都要重新执行,为了保证管线的执行效率,管线在执行过程中必须保持处理对象的同步,VTK采用隐式执行的方式保持同步,隐式执行的过程如下图所示:
隐式执行包含两个互逆的过程,在图中可以看到Execute()方法的执行是从左到右,UpDate()方法的执行是从右到左。
1、Execute()方法的执行
当可视化管线中的对象创建的时间发生改变时,表示对象已经更新,这时Execute()方法被调用,执行过程为从源对象通过过滤器对象到映射器对象。
2、UpDate()方法的执行
当图形系统请求绘制场景时,发出绘制请求(Render()),UpDate()方法被调用,请求管线中的每个对象更新数据,执行过程为映射器对象、过滤器对象、源对象依次调用Update()方法更新数据。
管线的隐式执行过程:
假设一个可视化管线由源对象、过滤器对象、映射器对象组成,其执行过程如下:
1)用户发出绘制场景的请求。
2)图形系统的角色(Actor)对象给映射器对象发送场景将要绘制的信息,管线开始执行。
3)映射器对象调用Update()方法,然后过滤器对象、源对象依次调用Update()方法。
4)源对象调用Update()方法后,开始比较当前被修改的时间和最后执行的时间,如果当前被修改的时间比最后被执行的时间更新,说明源对象最近被修改过,还未执行,于是调用Execute()方法开始执行流水线。
5)过滤器对象及映射器对象开始比较它们的修改时间和最后的执行时间,根据比较的结果决定是否调用Execute()方法。
可视化管线在执行过程中,提供了循环反馈机制、类型检查机制和内存均衡等,下面分别对这几种机制进行说明:
1) 循环反馈机制
在可视化流水线中引入反馈循环机制,用于将过程对象的输出数据变成输入数据反馈给过程对象,作为过程对象的输入数据,如下图所示,Integrate过滤器对初始输入的数据处理后,再将输出的数据反馈给Probe过滤器。
2)类型检查机制
类型指处理对象所能处理的数据类型,各种处理对象所能接收、处理和输出的数据类型是各不相同的,所以,在建立归管线的连接时,要明确所连接的处理对象所能接收和输出的数据类型,在VTK中,对输入数据类型的控制提供了两种方法,一种是建立单一数据类型处理的过程对象,只能处理单一的数据类型,另一种是建立数据类型检查机制,对数据类型进行检查,只有处理数据类型相互兼容的过程对象才能相互连接。
转自:http://lzchenheng.blog.163.com/blog/static/838335362010718102554655
- VTK教程之二:可视化管线的执行
- VTK教程之二 可视化管线的执行
- VTK教程之一:可视化管线
- VTK学习之路——可视化管线的执行与数据集
- VTK教程之一 可视化管线
- VTK可视化管线
- 【VTK】可视化管线
- vtk可视化管线
- VTK学习之路——可视化管线
- 04-VTK可视化管线(1)
- 04-VTK可视化管线(2)
- 04-VTK可视化管线(1)
- VTK修炼之道83:Pipeline管线执行模型
- VTK修炼之道10:可视化管道的连接与执行
- VTK修炼之道10:可视化管道的连接与执行
- ITK/VTK管线执行进度值得获取 设置管线中断
- VTK教程之十三 可视化基础算法-位…
- VTK教程之七 可视化基础算法-概述
- 小明系列故事——捉迷藏
- 正则的几篇文章
- 学习3D开发技术的优秀网站
- #ifndef与#program once
- VTK教程之一:可视化管线
- VTK教程之二:可视化管线的执行
- 国外基础几何算法答与问
- MFC多文档模板手动创建框架的一个问题
- OpenGL中屏幕坐标转为OpenGL坐标
- RGB和RGBQUAD的区别
- OpenGL中使用glew库进行GLSL编程遇到的一个问题
- 学习日记(四)针对ssh的理解
- 计算机辅助设计CAD/CAM开源软件
- 郑厂长系列故事——N骑士问题