ImageVerifierCode 换一换
格式:DOCX , 页数:36 ,大小:126.85KB ,
资源ID:1871935      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-1871935.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(精品三维画面锯齿处理本科毕业设计.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

精品三维画面锯齿处理本科毕业设计.docx

1、精品三维画面锯齿处理本科毕业设计 题目:三维画面锯齿处理三维画面锯齿处理摘要 随着计算机多媒体技术、可视化技术及图形学技术的发展,我们可以使用计算机来精确地再现现实世界中绚丽多彩的三维物体,并充分发挥自身的创造性思维,通过人机交互来模拟、改造现实世界,这就是目前最为流行的虚拟现实技术。通过这种技术,建筑工程师可以直接设计出美观的楼房模型;军事指挥员可以模拟战场进行军事推演,网民可以足不出户游览故宫博物馆等名胜古迹等。而虚拟现实技术最重要的一部分内容就是三维图形编程。它已经成为一个工业标准的计算机三维图形软件开发接口,并广泛应用于游戏开发、建筑、产品设计、医学、地球科学、流体力学等领域。值得一提

2、的是,虽然微软有自己的三维编程开发工具DirectX,但它也提供OpenGL图形标准,因此,OpenGL可以在计算机中广泛应用。虚拟现实技术是计算机图形学的一个分支。OpenGL 是功能强大的开放式图形库。论文运用OpenGL工具在MFC单文档平台下创建了一个虚拟三维环境,绘制一些常见的三维图形, 并实现消锯齿处理以增加物体的真实感。关键词:系统设计 OpenGL技术 三维图形设计 消锯齿 虚拟现实 The Three-Dimensional graphics Anti-aliasing Abstract With the development of the Internet and the

3、 multimedia technology, visualization technology, Graphics technology, We can accuray emersion the 3D object in the reality world that use computer, and compley exert the creationary thinking of ourselves. Through man-machine conversation to simulate or transform the real world, thats the most fashi

4、onably technology of the Virtual Reality. Through this technology, the architect could design the beauty model of building directly; The military commander could imitate battlefield for a sham battle, the web cam could excurse museum,scenic spot and of Industrial standard for computers 3D photograph

5、,and widely utilizes in game design, architecture, porduct design, medicine, geoscience, . What is worth mentioning is, although the Microsoft 3D programmer development kit,Directx, computer widely. Virtual reality technology is a computer graphics branching. OpenGL is the function formidable open s

6、tyle graph storehouse. This design implements a virtual three-dimensional environment with OpenGL onMFC single document platform, and draws up some common ; OpenGL technology; 3D photograph design; Anti-aliasing; Virtual Reality.1 系统概述 21.1课题研究的背景及意义 21.2目前国内外相关研究和发展趋向 31.2.1可视化是计算机程序设计的发展趋势 31.3课题研

7、究的内容及技能要求 51.4课题开发环境介绍 61.4.1环境需求 61.4.2 C+语言及其特点 61.4.3 OpenGL及其特点 71.4.4软硬件要求 92 OpenGL实现三维图像显示的基本理论 102.1概要设计 102.2基本设计概念和流程 112.2.1创意说明 112.2.2系统初始化 112.2.3对象模型的建立 123.2.2区域取样 174 反走样算法改进 234.1多段直线反走样算法 234.1.1概述 234.2圆反走样算法 244.2.1算法思想 244.2.2算法 254.3本课题采用的反走样算法累积缓冲区实现反走样 254.3.1概述 25结 论 28绪 论计

8、算机图形学是伴随着计算机技术在图形处理领域中的应用而发展起来的一门实践性的学科,是游戏、数字媒体、计算机视觉、图像处理、地理信息系统、计算机辅助设计等专业技术的基础。计算机图形学的应用领域非常广泛,已经渗透到科研、工程、商业、艺术等社会生活和工业生产的几乎一切领域,并与这些领域的发展相互推动和促进。随着计算机软硬件技术的不断进步,人们发现复杂的数据结构以可视的形式加以表达更容易为人们所理解。因此,计算机图形学的研究目标之一便是通过计算机将数据转变为图形,并在有关的设备上以特定的形式加以显示。为了方便这一转换过程,避免不必要的重复劳动,人们设计了各种各样的辅助编程工具,并将它们打包以公共图库的形

9、式加以推介。这些图库的一个共同特点是:都提供了一些标准的点、线、面、体的建模方法以及一些标准的图形变换方法,甚至还提供一些外部图形设备的访问接口。不过,OpenGL走得更远。它除了提供上述通用建模和变换方法之外,更提供了光照处理、反走样、混合、雾化、纹理映射及动画等功能。OpenGL被设计成一个独立于硬件的软件编程接口,适用于多种不同的计算环境,包括个人计算机、图形工作站、超级计算机及多机互连的网络环境。OpenGL应用开发的这种广泛适应性给从事三维图形开发的人员带来的好处是不言而喻的。同时,OpenGL业已成为广大图形开发人员的必备工具。OpenGL是近几年发展起来的一个性能卓越的三维图形平

10、台,OpenGL的显著优点是作为一个独立的工作平台,独立于硬件设备、窗口系统和操作系统,用它编写的软件可以在UNIX、Windows95、Windows98NT等系统间实现移植,并能在网络环境下以客户服务器模式工作,专业图形处理、科学计算等高端应用领域的标准图形库。开发者可以在多种硬件平台及操作系统下很方便地利用OpenGL图形库,创建出具有照片质量的、独立于窗口系统、操作系统和硬件平台的三维彩色图形和动画。本课题提出了在MFC(Microsoft Foundation Class) 的框架下来实现MFC和OpenGL函数库结合绘制图形的方法,这种方法有效简化了应用程序与操作系统之间的连接,也

11、符合面向对象的程序设计思想,提高了接口的通用性。1 系统概述1.1 课题研究的背景及意义近年来,随着计算机图形学和计算机技术的发展,计算机可视化技术不断普及,创建虚拟世界也不断掀起热潮,而建立具有真实感的三维场景是建设虚拟世界的重要一步。为了适应未来信息的需要,必须提高人与信息社会的接口能力,提高人们对信息的理解能力。人们不再只要求能够通过人的视觉、听觉、触觉,参与到处理信息环境中去,而获得身临其境的体验。建立一个多维的信息空间,感性认识和理性认识相结合的综合集成环境,而虚拟现实技术将是支撑这个信息空间的关键技术。80年代末、90年代初国际和国内形成对虚拟现实的热潮,为人们带来了一个绚丽多彩的

12、虚拟的计算机视觉世界。 虚拟现实技术(Virtual Reality ,简称VR)是诞生于90年代初的新技术,近年来在技术研究领域十分活跃,它汇集了计算机图形学、多媒体技术、人工智能、人机接口技术、传感器技术等多项关键技术:它是以计算机技术为核心,综合使用了各项最新技术,融合视、听、触觉为一体的模拟现实的三维空间再现技术。图形图像制作技术发展很快,在产品设计、动画、场景漫游等领域都有广泛的应用。本文主要说明了在VC+6.0环境下如何使用OpenGL生成简单的三维图形,并对其进行消锯齿处理。在吸取了计算机图形学、计算机科学、光学等多领域先进理论成果的基础上,系统地论述了基于OpenGL下场景的研

13、究和实现及其相关理论和技术。OpenGL作为一种图形与硬件的接口,与其他图形程序开发工具相比较,它提供了众多图形函数,直观的编程环境简化了三维图形程序。随着3D游戏越来越多的被开发,更多的游戏开发人员选择OpenGL作为开发工具,以简化操作。目前OpenGL已成为三维图形的开发标准。课题采用Windows下VC+的开发平台,以面向对象的编程C+为编程语言,通过调用OpenGL函数,实现三维图形的绘制。其中,通过调用OpenGl函数库实现三维环境的处理,渲染出具有真实感的图形。通过在这次毕业设计,首先对计算机图形学有了新的认识,计算机图形学涵盖的范围很广,其次对计算机图形学研究的一个领域虚拟现实

14、的特点和应用前景作了进一步的介绍。认识到虚拟现实技术在我们现实生活中的作用日益凸现,尤其在实现建筑仿真与漫游系统方面非常突出。最后,通过研究计算机图形学的相关技术和OpenGL图形软件包的编程原理和编程机制,实现了系统的功能。1.2 目前国内外相关研究和发展趋向1.2.1 可视化是计算机程序设计的发展趋势我们生活在一个充满三维物体的三维世界中,为了使计算机能精确地再现这些物体,我们必须能在三维空间描绘这些物体。我们又生活在一个充满信息的世界中,能否尽快地理解并运用这些信息将直接影响事业的成败,所以我们需要用一种最直接的形式来表示这些信息。最近几年计算机图形学的发展使得三维表现技术得以形成,这些

15、三维表现技术使我们能够再现三维世界中的物体,能够用三维形体来表示复杂的信息,这种技术就是可视化 ( Visualization ) 技术。可视化技术使人能够在三维图形世界中直接对具有形体的信息进行操作,和计算机直接交流。这种技术已经把人和机器的力量以一种直觉而自然的方式加以统一,这种革命性的变化无疑将极大地提高人们的工作效率。可视化技术赋予人们一种仿真的、三维的并且具有实时交互的能力,这样人们可以在三维图形世界中用以前不可想象的手段来获取信息或发挥自己创造性的思维。机械工程师可以从二维平面图中得以解放直接进入三维世界,从而很快得到自己设计的三维机械零件模型。医生可以从病人的三维扫描图象分析病人

16、的病灶。军事指挥员可以面对用三维图形技术生成的战场地形,指挥具有真实感的三维飞机、军舰、坦克向目标开进并分析战斗方案的效果。更令人惊奇的是目前正在发展的虚拟现实技术,它能使人们进入一个三维的、多媒体的虚拟世界,人们可以游历远古时代的城堡,也可以遨游浩翰的太空。所有这些都依赖于计算机图形学、计算机可视化技术的发展。人们对计算机可视化技术的研究已经历了一个很长的历程,而且形成了许多可视化工具,其中SGI公司推出的GL三维图形库表现突出,易于使用而且功能强大。利用GL开发出来的三维应用软件颇受许多专业技术人员的喜爱,这些三维应用软件已涉及建筑、产品设计、医学、地球科学、流体力学等领域。随着计算机技术

17、的继续发展,GL已经进一步发展成为OpenGL,OpenGL已被认为是高性能图形和交互式视景处理的标准,目前包括ATT公司UNIX软件实验室、IBM公司、DEC公司、SUN公司、HP公司、Microsoft公司和SGI公司在内的几家在计算机市场占领导地位的大公司都采用了OpenGL图形标准。值得一提的是,由于Microsoft公司在Windows NT中提供OpenGL图形标准,OpenGL将在微机中广泛应用,尤其是OpenGL三维图形加速卡和微机图形工作站的推出,人们可以在微机上实现三维图形应用,如CAD设计、仿真模拟、三维游戏等,从而更有机会、更方便地使用OpenGL及其应用软件来建立自己

18、的三维图形世界。因此,虚拟现实技术便应运而生。虚拟现实(简称VR),又称灵境技术,是以沉浸性、交互性和构想性为基本特征的计算机高级人机界面。他综合利用了计算机图形学、仿真技术、多媒体技术、人工智能技术、计算机网络技术、并行处理技术和多传感器技术,模拟人的视觉、听觉、触觉等感觉器官功能,使人能够沉浸在计算机生成的虚拟境界中,并能够通过语言、手势等自然的方式与之进行实时交互,创建了一种适人化的多维信息空间。使用者不仅能够通过虚拟现实系统感受到在客观物理世界中所经历的“身临其境”的逼真性,而且能够突破空间、时间以及其他客观限制,感受到真实世界中无法亲身经历的体验。1.2.2 OpenGL提供直观的三

19、维图形开发环境OpenGL实际上是一种图形与硬件的接口。它包括了120个图形函数,开发者可以用这些函数来建立三维模型和进行三维实时交互。与其他图形程序设计接口不同,OpenGL提供了十分清晰明了的图形函数,因此初学的程序设计员也能利用OpenGL的图形处理能力和1670万种色彩的调色板很快地设计出三维图形以及三维交互软件。OpenGL强有力的图形函数不要求开发者把三维物体模型的数据写成固定的数据格式,这样开发者不但可以直接使用自己的数据,而且可以利用其他不同格式的数据源。这种灵活性极大地节省了开发者的时间,提高了软件开发效益。长期以来,从事三维图形开发的技术人员都不得不在自己的程序中编写矩阵变

20、换、外部设备访问等函数,这样为调制这些与自己的软件开发目标关系并不十分密切的函数费脑筋,而OpenGL正是提供一种直观的编程环境,它提供的一系列函数大大地简化了三维图形程序。例如: . OpenGL提供一系列的三维图形单元供开发者调用 . OpenGL提供一系列的图形变换函数 . OpenGL提供一系列的外部设备访问函数,使开发者可以方便地访问鼠标、键盘、空间球、数据手套等这种直观的三维图形开发环境体现了OpenGL的技术优势,这也是许多三维图形开发者热衷于OpenGL的缘由所在。1.2.3 OpenGL成为目前三维图形开发标准在计算机发展初期,人们就开始从事计算机图形的开发。直到计算机硬软件

21、和计算机图形学高度发达的九十年代,人们发现复杂的数据以视觉的形式表现时是最易理解的,因而三维图形得以迅猛发展,于是各种三维图形工具软件包相继推出,如PHIGS、PEX、RenderMan等。这些三维图形工具软件包有些侧重于使用方便,有些侧重于渲染效果或与应用软件的连接,但没有一种三维工具软件包在交互式三维图形建模能力、外部设备管理以及编程方便程度上能够OpenGL相比拟。OpenGL经过对GL的进一步发展,实现二维和三维的高级图形技术,在性能上表现得异常优越,它包括建模、变换、光线处理、色彩处理、动画以及更先进的能力,如纹理影射、物体运动模糊等。OpenGL的这些能力为实现逼真的三维渲染效果、

22、建立交互的三维景观提供了优秀的软件工具。OpenGL在硬件、窗口、操作系统方面是相互独立的。许多计算机公司已经把OpenGL集成到各种窗口和操作系统中,其中操作系统包括UNIX、Windows NT、DOS等,窗口系统有X窗口、Windows等。为了实现一个完整功能的图形处理系统,设计一个与OpenGL相关的系统结构为:其最底层是图形硬件,第二层为操作系统,第三层为窗口系统,第四层为OpenGL,第五层为应用软件。OpenGL是网络透明的,在客户服务器(Client-Server)体系结构中,OpenGL允许本地和远程绘图。所以在网络系统中,OpenGL在X窗口、Windows或其它窗口系统下

23、都可以以一个独立的图形窗口出现。OpenGL作为一个性能优越的图形应用程序设计界面(API)而适合于广泛的计算环境,从个人计算机到工作站和超级计算机,OpenGL都能实现高性能的三维图形功能。由于许多在计算机界具有领导地位的计算机公司纷纷采用OpenGL作为三维图形应用程序设计界面,OpenGL应用程序具有广泛的移植性。因此,OpenGL已成为目前的三维图形开发标准,是从事三维图形开发工作的技术人员所必须掌握的开发工具。1.3 课题研究的内容和技能要求作为一门新兴学科,可视化技术所研究的内容集中在使抽象的数据呈现出客观世界的缤纷五彩与绚丽多姿。类繁多的信息源产生的大量数据,远远超出了人脑分析解

24、释这些数据的能力。由于缺乏大量数据的有效分析手段,大约有95%的计算被浪费,这严重阻碍了科学研究的进展。为此,美国计算机成像专业委员会提出了解决方法可视化。可视化技术作为解释大量数据最有效的手段而率先被科学与工程计算领域采用,并发展为当前热门的研究领域科学可视化。可视化把数据转换成图形,给予人们深刻与意想不到的洞察力,在很多领域使科学家的研究方式发生了根本变化。可视化技术的应用大至高速飞行模拟,小至分子结构的演示,无处不在。在互联网时代,可视化与网络技术结合使远程可视化服务成为现实,可视区域网络因此应运而生。它是SGI公司在2002年3月提出的新理念。它的核心技术是可视化服务器硬件和软件。科学

25、可视化的主要过程是建模和渲染。建模是把数据映射成物体的几何图元。渲染是把几何图元描绘成图形或图像。渲染是绘制真实感图形的主要技术。严格地说,渲染就是根据基于光学原理的光照模型计算物体可见面投影到观察者眼中的光亮度大小和色彩的组成,并把它转换成适合图形显示设备的颜色值,从而确定投影画面上每一像素的颜色和光照效果,最终生成具有真实感的图形。真实感图形是通过物体表面的颜色和明暗色调来表现的,它和物体表面的材料性质、表面向视线方向辐射的光能有关,计算复杂,计算量很大。因此工业界投入很多力量来开发渲染技术。由于本课题所研究的内容只是基于探计基于OpenGL的三维图形绘制,以及消锯齿处理,所以所要求的技能

26、仅是一门熟练编程语言,如C+,并且,能够使用OpenGL所提供的函数接口,进行简单的图形绘制,并完成反走样算法,实现消锯齿。另外就是能使用一个开发工具,如本课题所采用的VC+。技能要求并不是太复杂,一般的初学者都能够完成。1.4 课题开发环境介绍1.4.1环境需求Visual C+是微软公司开发的一个IDE(集成开发环境),换句话说,就是使用c+的一个开发平台,是微软公司在其Windows操作系统下进行应用程序开发的最重要的产品,是系统级应用开发工具,是运用面向对象思想进行软件项目开发的得力工具。它使得软件开发能够在源码级、类级、控件级等多个级别上重用,不仅加快了软件开发效率,而且提高了软件的

27、可重用性和顽健性。VC基于C,C+语言,主要由是MFC组成,是与系统联系非常紧密的编程工具,它兼有高级,和低级语言的双重性,功能强大,灵活,执行效率高,几乎可说VC在 Windows平台无所不能。VC作为一个主流的开发平台一直深受编程爱好者的喜爱,但是很多人却对它的入门感到难于上青天,究其原因主要是大家对他错误的认识造成的,严格的来说VC+不是门语言,虽然它和C+之间有密切的关系,如果形象点比喻的话,可以把C+看作为一种“工业标准”,而VC+则是某种操作系统平台下的“厂商标准”,而“厂商标准”是在遵循“工业标准”的前提下扩展而来的。VC+应用程序的开发主要有两种模式,一种是WIN API方式,

28、另一种则是MFC方式,传统的WIN API开发方式比较繁琐,而MFC则是对WIN API再次封装,所以MFC相对于WIN API开发更具备效率优势。系统在Windows XP7系统下均可运行,计算机只需安装VC+,并在相应文档中添加OpenGL函数库相关头文件及动态链接文件即可。1.4.2 C+语言及其特点C+它是一种使用非常广泛的计算机编程语言。是一种静态数据类型检查的,支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、制作图标等等泛型程序设计等多种程序设计风格。C+语言是一种优秀的面向对象程序设计语言,它在C语言的基础上发展而来,但它比C语言更容易为人们

29、学习和掌握。C+语言既保留了C语言的有效性、灵活性、便于移植等全部精华和特点,又添加了面向对象编程的支持,具有强大的编程功能,可方便地构造出模拟现实问题的实体和操作;编写出的程序具有结构清晰、易于扩充等优良特性,适合于各种应用软件、系统软件的程序设计。用C+编写的程序可读性好,生成的代码质量高,运行效率仅比汇编语言慢10%20%。C+以其独特的语言机制在计算机科学的各个领域中得到了广泛的应用。面向对象的设计思想是在原来结构化程序设计方法基础上的一个质的飞跃,C+完美地体现了面向对象的各种特性,主要有以下特点:1、语句简练、语法结构清晰、紧凑,使用方便、灵活。2、程序结构简单、书写格式自由。3、

30、数据类型丰富、齐全。标准C供了整数、实数、字符、字符串等基本数据类型,还提供数组、指针、结构体等构造数据类型。C+还增加了类这一特殊数据类型的定义机制。4、运算符丰富、齐全,运算能力强。C提供的运算符分为常规运算和与硬件有关的运算两部分: 常规运算符算术运算符、逻辑运算符、关系运算符等,这类运算符各种语言一般都具备; 与硬件有关的运算符位运算符、地址运算符等,这些运算符是C所独有的,体现出汇编语言的某些特征。5、语法限制不太严格,程序自由度大。6、C编译系统生成的目标代码质量高,程序执行效率高。程序可移植性强。语言的通用性较强。C+包含了整个C,因此也继承了C的全部特征和优点,同时添加了对 O

31、OP的完全支持。7、C+语言引入了类与对象机制,包括类的定于,类的继承与派生,类的多态性等。8、C+语言一方面自定义结构类型进行扩充,另一方面也支持新的类构造。1.4.3 OpenGL及其特点OpenGL是用于开发简捷的交互式二维和三维图形应用程序的最佳环境,任何高性能的图形应用程序,从3D动画、CAD辅助设计到可视化访真,都可以利用OpenGL高质量、高性能的特点。OpenGL自1992年出现以来,逐渐发展完善,已成为一个唯一开放的,独立于应用平台的图形标准,一个典型的OpenGL应用程序可以在任何平台上运行-只需要使用目标系统的OpenGL库重新编译一下。 OpenGL非常接近硬件,是一个

32、图形与硬件的接口,包括了100多个图形函数用来建立三维模型和进行三维实时交互。OpenGL强有力的图形函数不要求开发人员把三维物体模型的数据写成固定的数据格式,也不要求开发人员编写矩阵变换、外部设备访问等函数,大大地简化了编写三维图形的程序。例如:1、OpenGL提供一系列的三维图形单元(图元)供开发者调用。2、OpenGL提供一系列的图形变换函数。 3、OpenGL提供一系列的外部设备访问函数,使开发者可以方便地访问鼠标键盘、空间球、数据手套等外部设备。由于微软在Windows中包含了OpenGL,所以OpenGL可以与Visual C+紧密接合,简单快捷地实现有关计算和图形算法,并保证算法的正确性和可靠性。简单地说,OpenGL具有建模、变换、色彩处理、光线处理、纹理影射、图像处理、动画及物体运动模糊等功能: 1、建模:OpenGL图形库除了提供基本的点、线、多边形的绘制函数外,还提供了复杂的三维物体,如球、锥、多面体、

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2