运用VTK实现纹理贴图

运用VTK实现纹理贴图

ID:37350440

大小:337.61 KB

页数:4页

时间:2019-05-22

运用VTK实现纹理贴图_第1页
运用VTK实现纹理贴图_第2页
运用VTK实现纹理贴图_第3页
运用VTK实现纹理贴图_第4页
资源描述:

《运用VTK实现纹理贴图》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第25卷第3期海洋测绘Vol.25,No.32005年5月HYDROGRAPHICSURVEYINGANDCHARTING,2005运用VTK实现纹理贴图徐苏维,盛业华,黄家柱(南京师范大学地理信息科学江苏省重点实验室,江苏南京210097)摘要:介绍了在虚拟三维景观中如何利用VTK实现纹理映射的方法,方法简便快捷,生成的纹理真实细腻。关键词:计算机图形学;虚拟三维景观;VTK;纹理映射中图分类号:P208文献标识码:B文章编号:1671-3044(2005)03-0067-03用面向对象技术的对象模型图表示VTK的框1引言架结构如图1所示。纹理映射技

2、术的目标是把二维的纹理图像映射到三维物体表面,建立物体空间坐标(x,},Z)与纹理空间坐标(S,)之间的对应关系是其关键点。为生成具有真实感的图形,利用纹理映射技术将复杂物体的图像粘贴到简单几何体的表面,置于场景中。在实时显示场景时,还可利用3D图形的平移、旋转能力,实现复杂物体随观察方向的改变而转动的效果。本文基于VTK的类及库函数来对物体进行纹理映射,主要利用两种信息:纹理图案和纹理坐标,图1VTK的框架结构并通过设置众多属性来达到满意的效果。用VTK来产生图形和进行可视化应用是非常方便的,它包括两个基本部分。首先,建立一个数据2VTK的可视化结构

3、流水线(datapipeiine)来处理数据;其次,建立适当本文利用的可视化开发工具软件包的目标图形来演示数据。建立流水线(pipeiine)就(VisuaiizationTooikit,VTK)是美国Kitware公司利用是将Sources、Fiiters和Mappers连接起来。C++语言开发的一个基于Windows和Unix环境的vtkobject是VTK类库的基类,它为整个可视化流程面向对象的可视化工具。它与openGL这种底层开提供基本的方法。vtkSourc是vtkobject的派生类和发软件的主要功能优势和区别在于VTK是一个功vtkFi

4、iter的父类,它为整个可视化流程的开始(比如能强大的可视化工具包,封装了很多可以直接使用读取数据等)定义具体的行为和接口。vtkFiite:是的类和库函数。一方面减少了那些为现有算法重复vtkSource的派生类,它对数据进行各种处理,将原开发的工作,大大降低了开发难度;另一方面也使得始数据经过各种fiite:的处理后转换为可以直接用最终的软件能获得理想的可视化效果。将一些常用某种算法模块对其进行处理式。vtkMapper:也是的算法和在可视化程序的开发过程中会经常遇到的vtkobject的派生类,它将经过各种fiiter处理后的应细节屏蔽起来,以类

5、库的形式给我们的开发工作以用数据映射为几何数据,为原始数据与图像数据之直接的支持,VTK不仅提供了强大的可视化功能,间定义了接口。这样,依据要处理的数据的类型和而且还提供了强大的图像处理以及有限元分析的功想要实现的功能,多种类型的Sources、Fiiters和能,能够对标量场、矢量场以及张量场的数据进行重Mappers就连接了起来。类型检查控制着哪一类的建。极大地简化了我们的开发工作,提高了工作效Fiiters可以连接在一起。[8]率。VTK一个很特别的地方是:对于任何进行可视收稿日期:2005-01-21;修回日期:2005-04-12基金项目:国

6、家863基金项目(2004105XGO2646)作者简介:徐苏维(1981-),女,江苏无锡人,硕士研究生,主要从事地图学与地理信息系统应用研究。"!海洋测绘第25卷化的数据,它都是通过演员在窗口中表现出来的,因Setopacity(l);//设置不透明度此建立目标图形应该做以下工作:Setambient(0);//设置环境光照系数!建立renderingwindow(绘制窗口);SetSpecular(0);//设置镜面光系数"建立actor(交互操作者),vtkactor类用来表//一个演示者和演示窗口达绘制场景中的一个实体,也就是绘制场景中的演v

7、tkrenderer*ren;员。它通过Setmapper()方法将几何数据的属性告vtkrenderwindow*renwin;诉演员;renwin->addrenderer(ren);#建立renderer(演示者),通过vtkrender类将//交互操作结果在窗口中显示出来。vtkrenderwindowinteractor*iren;iren->Setrenderwindow(renwin);3基于VTK的纹理映射实例探讨//将演员加入演示本文将在VC++.net环境下结合VTK软件包ren->addactor(sphereactor);制作一

8、个贴上纹理的地球。//添加灯光效果,如图2(d)3.l准备工作vtklight*light;在

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

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

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