基于vtk三维可视化编程

基于vtk三维可视化编程

ID:34544230

大小:1.65 MB

页数:5页

时间:2019-03-07

基于vtk三维可视化编程_第1页
基于vtk三维可视化编程_第2页
基于vtk三维可视化编程_第3页
基于vtk三维可视化编程_第4页
基于vtk三维可视化编程_第5页
资源描述:

《基于vtk三维可视化编程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、深圳职业技术学院学报2007年第3期JournalofShenzhenPolytechnicNo.3,2007基于VTK三维可视化编程周振环,王安明,王京阳,赵明(深圳职业技术学院电子与信息工程学院,广东深圳518055)摘要:介绍了VTK特点、体系结构、对象模型等,着重描述图形对象、可视化对象、流水线和图像处理。针对医学图像需要,使用VTK开发了一个小型医学三维可视化软件。实验结果表明,与使用OpenGL相比,使用VTK可以节约大量时间,开发出的软件更加标准和规范。关键词:可视化工具箱;向对象;医学图

2、像;图像处理中图分类号:R319;TP391.41文献标识码:A文章编号:1672-0318(2007)03-0010-05持多种着色如OpenGL等;⑤具有设备无关性使其1VTK的特点代码具有良好的可移植性;⑥VTK中定义了许多VTK(VisualizationToolKit)是一个开放源宏,这些宏极大的简化了编程工作并且加强了一致码、自由获取的软件系统,全世界的数以千计的的对象行为;⑦具有更丰富的数据类型,支持对多研究人员和开发人员用它来进行3D计算机图形,种数据类型进行处理;⑧既可以工作于Wind

3、ows操[1-2]图像处理和可视化,它将在可视化开发过程中作系统又可以工作于Unix操作系统,极大的方便[4-5]经常遇到的细节屏蔽起来,并将一些常用的算法了用户。封装起来。比如VTK将在表面重建中比较常见2VTK体系结构的MarchingCubes算法封装起来,以类的形式给以支持,这样在对三维规则点阵数据进行表面重VTK由2个基本子系统构成:一个是编译过的建时就不必再重复编写MarchingCubes算法的代C++类库;一个是“解释型”的封装层,允许你使码,而直接使用VTK中提供的vtkMarchin

4、gCubes用Tcl,Java和Python等解释型语言操作编译过的[3]类。类库。这样设计的优点能使你创建高效率的C++编VTK以用户使用的方便性和灵活性为主要译算法,保留解释型语言快速开发特点,当然对于原则,具有如下特点:①具有强大的三维图形功C++高手来说,也有这样的工具,整个应用程序可能。既支持基于体素Voxel-basedrendering的体绘以由C++来创建。制VolumeRendering,又保留了传统的面绘制,2.1对象模型从而在极大的改善可视化效果的同时又可以充分VTK是一个面向对象

5、的系统,高效使用VTK利用现有的图形库和图形硬件;②VTK的体系结的关键,是要较好地理解底层的对象模型,这样做构使其具有非常好的流streaming和高速缓存是为了去掉数百个对象的神秘外衣。理解力达到一caching的能力,在处理大量的数据时不必考虑内定程度后,你很容易建立应用程序。构成VTK的2存资源的限制;③能够更好的支持基于网络的工个对象模型:图形对象模型和可视化对象模型。具比如Java和VRML随着Web和Internet技术2.1.1图形对象的发展VTK有着很好的发展前景;④能够支图形对象包含

6、以下几个核心对象:收稿日期:2006-04-10项目来源:2005年粤港关键领域重点突破项目(2005A11304003);深圳市科技计划项目(05KJcd004);深圳职业技术学院科技发展基金项目(07KJcd005)。作者简介:周振环(1963-),男,河南人,高工/博士后,主要研究方向为医学图像处理。第3期周振环,等:基于VTK三维可视化编程11zvtkActor,vtkActor2D,vtkVolume__vtkProp和/句话说,可视化流水线负责构成几何表达,然后由或vtkProp3D的子类图

7、形流水线来绘制。VTK使用数据流方法将信息变zvtkLight换成图形数据,在这个方法中涉及两个基本对象类zvtkCamera型:zvtkProperty,vtkProperty2DzvtkDataObject数据对象zvtkMapper,vtkMapper2D__vtkAbstractMapperzvtkProcessObject处理对象的子类数据对象表示各种类型的数据,vtkDataObjectzvtkTransform可以看成是通用的“blob”数据(blob数据类型的zvtkLookupTabl

8、e,vtkColorTransferFunction列可以存储大型二进制对象,如图形、视频和声音__vtkScalarsToColors的子类等)。具有正式结构的数据称为数据集(DataSet类)。zvtkRenderer图1表明VTK支持的数据集对象,图中数据集对象zvtkRenderWindow由几何和拓扑结构构成,以及与些相关的属性数据zvtkRenderWindowInteractor如尺度或向量。属性数据是与数据集相关的点和单我们

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。