




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、研究背景三维虚拟仿真技术是一种基于可计算信息的交互环境,即采用以计算机技术为核心的现代高科技手段生成逼真的视、听一体化的虚拟环境,用户借助必要的设备(鼠标、键盘等外部设备)与虚拟环境中的对象进行交互,从而产生亲临真实环境的感受和体验。近几年,随着计算机图形加速能力、浮点计算能力、实时分布处理能力、音效能力的大幅度提高以及传感器和显示器技术的飞速发展,触发了除国防训练、军事模拟以外的教育、医疗、娱乐、科技、制造、旅游、城市规划、建筑和商业等一系列领域中对三维仿真技术的应用。目前,我国在水利领域,越来越多地将三维仿真技术应用到水利工程建设和抗旱防汛等方面,实现了水利领域的信息化。对于水利来说,该领
2、域数据具有海量,多源,实时的特点,这些数据是防汛抗旱及水利工程建设管理的决策依据。可交互的实时反映现实变化的水利三维场景可以给决策者提供真实可靠及时的水文场景信息,以帮助其做出正确的判断和决策。因此对水利设旌(如水利灌区等)建立一个可交互的三维仿真系统十分必要。本论文结合水利部信息化试点项目“灌溉水资源和信息管理系统”,对三维仿真系统的交互性进行研究并加以应用。仿真系统不仅可以模拟水利设施的实际场景,而且还可以提供实时的水文数据,并在虚拟场景中对这些数据作出实时的表现,动态展现真实场景。三维仿真技术涉及到多种技术领域,包括图形学,数据库,三维建模型等,并且一般来说,仿真系统都比较大,涉及的内容
3、比较多,对三维仿真系统的维护人员提出交高的专业要求,非开发人员即使有一定的专业背景也不一定能做好维护工作。大多数情况下仿真系统的使用单位都没有这样专业背景的维护人员,如果要对仿真系统进行修改需要花费很大的成本,需请开发人员进行修改,费时费力。特别的是在水利领域,现实中的场景变化时常发生,对仿真系统的修改不可避免,故需要对系统维护提出了新的方法,即必须降低维护人员的专业要求,而且必须能够快速地进行维护。因此需要设计一种便于非专业用户操作三维场景的方式,即用户级场景重组方式:用户通过系统提供的功能选项能够自行方便的对场景进行操作。研究现状以往的灌区水资源调配仿真为静态的,即水资源调配结果是以数字量
4、或二维图的方式表示,缺乏整体性和直观感,而且只能反映景物的某一历史时段的状况,也就是说,只是历史某一时刻或时段的实景还原的演示,因此,决策支持的意义不大。利用三维仿真技术可以直观地描述数据所表征的物理对象的实时状况,便于工程建设和管理的决策。此外通常三维水利场景只是能显示水利数据(如水位信息等),但是场景本身固定不变,本课题不仅要能使三维系统实时的获取数据库信息,同时还可以反馈到场景中,使场景根据数据信息及时变化。这样使片者将获得更加直观的感受,如身临其境。目前对景物重组机制的研究多是在系统开发过程中一些系统实现的方法,针对的是专业的开发人员,对面向用户的场景重组研究还很缺乏。本课题将设计一个
5、用户级场景重组方式,以此方式构建的场景是可用户改动的,便于后期的维护。如果现实场景发生了变化,用户可以自己很方便的改变场景,不需要专业人员到场修改。这种随时可改变场景的用户级场景重组方法不仅可以应用在水利方面,而且可以在其他领域如数字校园,数字小区等也有广泛的应用前景。课题研究目标和主要内容研究目标结合水利部信息化试点项目“灌溉水资源和信息管理系统”课题,研究三维仿真系统的可交互性技术,构建一个灌区的三维仿真场景,实现景区漫游,场景可以实时的读取数据库中的水文数据并在画面中显示数据,同时根据数据的变化实时地改变场景(如水位的高低等),为决策者提供准确及时的水文信息。针对水利场景的多变性,设计一
6、种便于用户操作场景景物的方式,即用户级场景重组,提供一个友好的用户界面,使得用户可以自己方便地构建场景和修改场景,包括增加新景物,删除景物,移动景物坐标,缩放景物等。主要内容通过对可交互性的研究,设计一个可交互的三维水利仿真场景,该场景可以实时的读取数据库中的水利数据并根据数据的变化来改变场景(水位)。并且还将设计一个可用户级重组的三维场景,该场景可以导入由建立的场景模型,并实现交互性操作:包括添加景物模型;用鼠标点击场景中的景物,通过属性界面来显示该物体状态信息,并可对该物体进行放人缩小,移动坐标,删除等操作。主要内容包括:()三维场景的绘制。绘制灌区的三维场景,包括河道,河流,房屋,树木,
7、天空,大地等。()实时数据的读取和图形改变。系统从数据库实时的读取水位数据,并及时更改水位图形。()文件导入。当用户需要添加景物时,可直接导入文件,获得模型文件,在实时运行状态下直接添加模型进入场景,提高系统的可维护性能。()场景管理。系统将使用场景图的概念来组织管理图形引擎里面可渲染的物体,为用户在空间中查找和搜索物体提供了高速优化,并且为渲染提供了相应的搜索,排序以及删除功能。()实体模块的管理与操作。包括存储各个物体模型的数据:对景物实体执行一系列的操作,如显示实体信息,移动坐标,放大缩小,删除等;场景数据读取与表现等。()目标拾取。直接用鼠标来点击场景中的一些景物,选中景物,对景物的操
8、作,实现可交互性。论文结构安排本文共分章,各章的研究内容安排如下:第一章绪论。介绍课题背景,研究目标和主要内容。第二章 三维仿真系统分析。首先对课题相关的背景进行综述,介绍了系统的结构,以及开发环境。第三章三维场景构建。对三维仿真系统的场景构建进行研究,详细介绍了场景构建的实现方法。第四章三维场景可交互性设计。对场景中的交互功能提出解决方法,重点给出了灌区场景交互和用户级场景重组的设计与实现方法。第五章灌区可交互的三维仿真系统实现,对实现了的系统功能进行介绍。第六章总结与展望,对课题进行总结和对应用的前景展望。第二章三维仿真系统分析系统的需求分析作为“灌溉水资
9、源和信息管理系统”的一部分,三维仿真系统主要是针对灌区周边环境和灌区水情等进行仿真。由于灌区水情的变化十分频繁,需要能在三维场景中实时的通过数据显示以及图形变换来反映变化了的水文信息。因此,仿真系统的目标之一是提供给使用者(水利用户)一个可交互的灌区三维仿真场景,真实的展示灌区的面貌,更重要的是能够将实时采集到的水利数据,在系统中及时展现,使用户从感观上体验到现场的状况。由于水利设施的变换比较频繁,水利设施变换了,相虑的仿真系统中的三维场景也需要随之改动,而三维场景的改变一般都需要系统设计开发人员来做,普通的用户更改场景十分困难,这给系统的维护和实际应用带来了很大的不便,不仅成本高,而且也很难
10、满足现场及时更改的需求。因此,本课题的另一个目标是要实现一种可用户级场景重组方式,以这种方式构造的场景用户是可操作的,即用户不需要开发人员帮助的情况下自己方便快捷地修改场景,如添加,删除,移动,放大缩小景物等。可以看出,要实现满足上述需求的三维仿真系统,需进行两方面的研究,一是对三维场景中模型的研究,即如何构建场景;二是对场景中景物的组织技术研究,即如何实现和提高交互性,如何重组景物等。三维场景构造技术构造可视化系统的建模技术大致可以分为两类:几何建模和行为建模。几何建模处理物体的几何和形状的表示,研究图形数据结构等基本问题;行为建模处理物体运动和行为的描述。近年来,国内外在虚拟环境构建领域都
11、进行了大量的研究工作,并取得了很大的进展。其中不规则物体的绘制因物体外形上的特殊性以及绘制上的挑战性,在虚拟现实技术和计算机图形学中一直受到极大的关注。在模拟不规则物体领域目前已经有了一些比较有效的算法和理论。等人通过定义实体纹理的方法来模拟气体的运动;,从各种方法模拟的结果来看,效果比较好的是分形算法和粒子系统理论。然而由于分形算法需进行大量的迭代过程,因此它不宜在对实时性要求很高的虚拟现实系统中采用:而用粒子系统建立不规则物体模型,与其他方法相比具有一定优势,可以用较少的计算代价获得真实感较强的仿真效果。粒子系统(粒子系统是一种过程模型,即利用各种计算过程生成模型中各个体素的建模技术,年,
12、首次提出了粒子系统【】)方法被认为是迄今为止模拟不规则模糊物体最为成功的一种图形生成算法。正因为粒子系统的这些优点,使其在自然现象的模拟中被广泛地采用。国内外学者利用粒子系统的方法分别实现了许多自然现象的模拟,包括火焰、雨雪、烟花、烟雾、扬尘以及瀑布和云彩等视觉效果。万华根、金,等研究人员则利用物理模型和粒子系统模拟了喷泉水流效果】,其方法是基于物理模型并通过求解物理方程的方法来实现喷泉的水流效果,虽然实现起来非常复杂,但粒子系统所具有的独特的优点如灵活性、过程化却使得模拟效果常逼真。使用波叠加技术是最简单的一种水波纹理生成算法。该技术第二章三维仿真系统分析的一个突出优点是非常容易实现水的波动
13、,但只能模拟小振幅的水波。而、和徐迎庆等研究人员则提出采用物理模型实现对大振幅水波的模拟。另一方面,在构建三维虚拟场景时常常使用纹理映射技术米表现物体的表面特征,尽管二维纹理映射技术在真实感图形生成中获得了极大的成功,但仍存在一些问题,主要有:在曲面上曲率变化较大的区域可能发生纹理的非均匀变形,导致不真实的视觉效果:在非平凡拓扑的景物表面很难保证相邻曲面片间纹理的连续性。为了克服二维纹理映射技术的不足,提出了用一种简单的规则三维纹理函数来模拟木纹的纹理效果;等人则利用简化的随机模型来模拟地貌表面的纹理。三维场景组织技术场景的组织技术的研究主要是对三维图形引擎的研究。引擎【,是借用机器工业的同名
14、术语,表明在整个系统中的核心地位。也可以称之为“支持应用的底层函数库”或者说是对特定应用的一种抽象。三维图形引擎需要解决场景构造、对象处理、场景渲染、事件处理、碰撞检测等问题。三维引擎最具代表性的则是游戏引擎。起先,国外对三维游戏引擎的研究主要集中在几个大公司,如, ,等大公司,它们研究开发三维引擎,如系列和系列等代表着三维游戏引擎最新技术和发展。年以后,随着游戏引擎的发展,相继有多个开源游戏引擎的组织成立,并且开发了几款优秀的开源的游戏引擎,如、等。图形引擎在国外虚拟现实中的应用研究也很早。美国北卡罗来纳大学()的计算机系是研究最早最著名的大学。它们主要研究分子建模、航空驾驶、外科
15、手术仿真、建筑仿真等。由教授领导的小组研制成功了第一个用于建筑设计的虚拟建筑漫游系统【,用户可以在虚拟的计算机系大楼里面漫游。北京航空航天大学虚拟现实与可视化新技术研究室开发了虚拟北航校园项目【】,并设计实现了虚拟环境漫游引擎。在配置图形加速卡的微机平台上,漫游引擎驱动了一个由万个三角形构成的北航校园模型,其交互仿真率保持在帧秒以上。为了验证漫游引擎的通用性,还先后将漫游引擎用于房地产项目虚拟恒昌花园及虚拟珠穆琅玛峰等漫游应用中。到目前为止没有适用于任何场景的组织方式,所以都是以工厂方式进行组织,然后根据不同的场景采用不同的场景组织方式,再进行绘制。从水利三维场景可交互性角度来看,目前水利场景
16、的三维仿真较多,但是大多是固定的场景,只起到仿真功能不具备交互性,更不用说实时的反馈水文信息了。本文所要做的是能够实时的获取水文数据并反馈到场景中去。这样的交互性对用户的判断提供了更直观的依据。对于用户级场景重组来说,目前的研究比较少,是一个新的领域,如何向用户提供一个可操作的三维场景是一个难题,需要使场景是面向非专业用户的,为他们提供修改场景的便捷途径。系统功能分析本节根据项目的需求,对系统的主要功能进行分析并提出设计方案,分别从三维场景的构建,交互性方面来设计。三维场景构建三维场景的构建包括:地形,河道,水面,树木,天空,建筑等。 三维场景的构建方式如图所
17、示。图。三维场景的构建图图中地形河道数据是使用数学方法绘制,水位数据通过数据库获取,再经过系统处理后对现有图形进行改变。还有一些场景景物如树木,地表覆盖等是使用贴图来实现。三维场景的交互性三维场景的交互性主要包括:水利数据的交互,用户级场景重组。 水利数据的交互水利数据通过现场的实时监控、数据采集而获得,采集到的数据经网络传输到信息处理系统的数据库中。仿真系统从数据库中获取实时数据,并根据数据的变化在三维场景中“展现”。水利数据的实时交互处理过程如图所示。图水利数据处理图实时监控:在河流水位标的附近设置监控设备,随时监控水位的变化。数据采集:对河流水位的视频图
18、像进行识别处理,获得水位的数据信息。数据传送:通过网络传送至数据库。数据存储:数据库接收并存储数据。数据读取和场景显示:三维系统从数据库中读取水位数据信息并变更场景。用户级场景重组用户级场景重组如图所示。对于用户级场景重组来说,主要考虑以下问题:异构文件()的导入:由于要方便用户修改场景,需要使用户自己能添加景物模型进入场景,这里添加的模型是文件,当用户自己获得或者自己制作模型(使用软件)便可通过程序提供的接口像添加文档文件一样将模型方便的加入到运行中的三维场景中,所以需要设计读取文件的功能,在设计此功能时候要注意的是,要首先分析类文件的数据存储格式,以合适的方式将需要的数据读取至系统中,并能
19、将这些数据按照系统固有的方式存储,以便重新绘制图形和后续的操作。目标拾取:一般的三维仿真使用前后左右键来实现漫游,鼠标在屏幕上点击没有任何作用和反应。对于可交互系统来说,需要我们用鼠标来点击场景中的一些景物,并且这些景物能表现出被选中状态,这个是实现用户级场景重组的关键操作,只有在场景中成功的用鼠标点击中景物,才可进行以后的一系列对所选景物的操作。鼠标的拾取实现目前而言没有统一的十分有效果的方法,本文将在第三章节对现有的拾取技术进行阐述,并提出适合本课题的实现方法。图用户级景物重组模式图场景管理:系统将使用场景图( )的概念来组织管理图形引擎里面可渲染的物体,为用户在空间
20、中查找和搜索物体提供了高速优化,并且为渲染提供了相应的搜索,排序以及删除功能。实体操作:主要功能有:()存储各个物体模型的数据,如顶点数据(包括位置、法线、纹理坐标等)、材质贴图数据和相应实体的数据信息。()对景物实体执行一系列的操作,如显示实体信息,移动坐标,放大缩小,删除等。这些操作和场景管理模块密不可分,都是基于场景节点的操作而不是场景内容本身,用户操作场景节点时,场景内容和所挂节点一同移动,旋转或缩放。()场景数据读取与表现,系统定期的从数据库中读取并更新水文数据信息,这些数据在景物的属性栏里显示(点击物体可以打开该物体的属性栏,里面有物体的属性,如坐标,名称,数据信息等)场景的可维护
21、性:如果现实场景发生变化,用户可以根据变化来修改虚拟场景,这种修改功能是基于上述目标拾取,实体的操作,以及异构文件的导入等功能的。 如果要添加一个景物,可以通过导入一个文件来实现,新加的模型会出现在场景中,可以对其实现实体的操作:移动到合适的坐标,缩放旋转等,这些操作可以使新加的模型准确无误的放置到用户希望的位置。这样用户只要获得文件就可很方便的在将模型添加到场景中去。如果用户要删除一些场景,通过拾取目标后,使用删除操作即可。开发环境三维系统的开发环境主要包括:三维引擎,数据库,软件平台,开发语言,建模工具。()三维引擎:都是强大的三维图形开发工具,可以使用其
22、强人的函数库构建各种图形,其中适合绘制绘制复杂的物体如河流等,故系统使用构建灌区的仿真场景,而可以封装底层绘制方式使得使用者更集中注意于上层的设计,故使用设计用户级场景重组。此外往往需要构建一些复杂的模型,直接利用如第二章三维仿真系统分析的图元绘制命令或曲线曲面绘制命令构建复杂模型非常麻烦和低效,在实际应用中,使用专业化的建模软件如和,然后使用开发语言如将文件读入仿真系统中,这样一方面可以利用专业建模软件舣的优势,快速有效的建立复杂的模型;另一方面利用的编程接口对建立的模型进行实时绘制和交互控制,实现场景景物的模块化,可以加快系统开发进程。()数据库:目前使用较广泛的有 ,和其中能在
23、所有主流平台上运行,具有良好的可伸缩性和并行性,性能最高的按,但价格昂贵;也能在所有主流平台上运行,性能与 相似,具有并行性,但是需要增加额外的硬件来充当服务器;能在所有主流平台上运行,但是主要用于处理海餐数据。相比之下,使用方便,能在上运行,性能稳定,适合中小规模企业使用,也能处理海量数据,故在本系统使用 。()软件平台:本课题选择的软件开发平台是操作系统。操作系统是目前个人计算机上最流行的操作系统之一。该操作系统具有硬件设备无关性和友好的图形界面。特别是良好的图形界面对于三维仿真的实现是非常合适的。()开发语言:系统的开发选择,因为是面向对象的高
24、级语言,适合于模块化的建立数据结构,而且它的语法比较灵活,编译后的可执行程序的运行速度非常快,仅次于汇编语言的编译速度,所以对于图形处理这种对速度要求非常高的程序来说粥;别合适。()建模工具:系统选用作为建模工具。之所以这样考虑,主要是因为是个人电脑上最常用的三维模型开发平台,其次是它通用于各种不同的三维对象的绘制,像其它一些建模工具如主要适合于大型的汽车、飞机厂建立复杂的数模,而主要适合于中小企业快速建立较为简单的数模。同时的文件的数据存储格式己经公开,这样就可以很方便地将的建模后数据文件转化为仿真系统中专用的数据文件,便于对三维模型的操纵。第三章三维场景构建对水利灌区的仿真,三维仿真场景的
25、构建是基础。本章主要介绍灌区三维仿真系统中场景的构建,包括场景的结构、地形仿真、河道构造、三维贴图景物、天空和树木的构造、场景管理器等。场景结构三维仿真系统场景结构如图所示。图系统场景结构图三维实体建模可以分为实体建模(模型)、地形建模、天空建模和水流河道建模。地形与天空是整个场景的基础模型,与场景中的其它对象都有联系,所以需要将它们与实体建模分开,而水流建模则需要程序来绘制,也需要单独分成一个模块。场景管理器模块包括基础环境创建、场景节点图,资源实体,场景查询等,此模块对场景对象进行管理,并提供查询对象属性等功能。下面将介绍其中主要场景的构建方法:地形仿真地形的绘制需要先获取灌区的地形数据,
26、获取方式如下:()航空摄影测量(航拍法)。这种方法一直是地形图测绘和更新最有效也是最主要的手段。航拍法是利用两相邻象素对,在全数字自动摄影测量系统支持下,通过输入地面控制点,经过相对定向和绝对定向及景象自动相关匹配,生成数据。通过其获取的影像是高精度大范围生产最有价值的数据源。利用该数据源,可以快速获取或更新人面积的第一三章三维场景构建数据,从而满足对数据实时性的要求。但是这种方法对软硬件要求较高,且资料昂贵,非测绘部门一般不用此法。()等高线地形图【】。对大多数地区和国家米说一般都有着包含等高线的高质量新版地形图,这些地形图为地形建模提供了丰富廉价的数据源,同时,配合使用野外实测(如:全站仪
27、及等)方法来为弥补仅使用地形图获取数据可能存在的实时性较差的不足,这样获取的数据将满足原始地形数据的各方面要求。在灌区三维仿真系统中使用了格网型,它是以固定采样间隔、按矩形或正方形网格排列的数据形式,每一个格网结点与其它相邻格网点之间的拓扑关系都已经隐含在行列号当中。这时,根据该区域的原点坐标和格网间距,任意格网点的平面位置可由相应矩阵元素的行列号经过简单的运算而获得。冈此,格网数据除了每个格网结点处的高程值以外,只需要记录一个起算点的位置坐标和格网间距。采用这种结构不仅结构简单,占用存储空间少,而且还可以借助于其它简单的栅格数据处理方法进行进一步的数据压缩处理,如行链式编码,游程度编码,块式
28、编码等。灌区的兴建通常需要占用较大的区域,对地形及地物等要素的表现不要求十分精确,考虑到灌区虚拟现实系统的整体性价比,我们选用包含等高线的高质量地形图作为数据来源。如图所示。图地形等高线图景物的材质是仿真系统真实感的重要元素,景物的纹理图片(如地表图片)可以通过现场拍摄获得,如图所示。图地表照片在现场采集到的数据需要经过处理才能应用到仿真系统中,纹理图片可咀通过图像处理软件础处理,如可以调整图片的分辨宰(分辨率过高的图片在系统中会引起性能下降嚣响漫游教果)。等高地形图需要进行处理,首先使用等高线离散化法生成具有一定水平间距的格网数据。离散化法采用从随机到橱格的转换方法形成格同。由图等高地形圈生
29、成的数据如图,所示。图等高地形图生成的数据图在特等高线离散化时由于没有考虑等高线自身的特性,生成的格曙有可能会出现一些异常情况,比如一些格搿值会偏离实际地形情况可以使用规则内插方法加密原始数据点,得到可供使用的数据。由于实际的地形是很复杂的,整个地形不可能用一个多项式来拟台,一般不用整体函鼓内插,而采用局部函数内插(即分块内插)分块内插是把参考空闯分成若干分块,对菩分块使用不同的函数。这时的问题是要考虑各相邻分块函数之间的连续性问题。分块的大小根据地虢复杂程度和参考点的分布密度决定。一般相邻分块间要求有适当宽度的重叠,以保证相邻分块问挠平滑、连续地拼接。基于正方形格网的剖分法取线性内插是分析与
30、应用中最常用的方法。第三章!维场景枸建双线性多项式内插是使用最靠近插值点的四个已知数据点组成个四边形,确定一个双线性多项式来内插待插点的高程。基于格用内插广泛栗用这种方法,如果教据参考点里正方形格阿分布。则可以直接使用如下的双线性内插公式:其中,表示点的高程值,、为格阿的四个点,为格嗣的边长(玉力为内插点在格阿内的坐标。将地域数据从高程文件中读八地域敛组中,只读八分量,分量和分量,由于分量和分量具有连续性所以在循环时可以直接填进教组因为表示为拊),只有当循环到和时,才能将读八。将地面设想成 ,个块组成。某一个块的边长为目按顺序(从左到右,从上到下)将块的高度和表示块的点坐
31、标读入地域教组中。地形教据只匏描述地面的基本形状,地面的材质需要通过贴瞄的方式来实现。现场采集到地面纹理如图所示。圈 草地仿真河道构造实现灌区河道仿真时需要知道河道的位置,咀便实现中对河道和地形网格交点附近做精致的细化。而在实际实现中涮量出河道每一个点的坐标几乎是不现实。一般情况是先测量出河道的有限个点然后通过这些有限点构遗出一条曲线用构造出来的曲线表示整条河道。由于灌区河道属于人二开凿的建筑物。在设计河道时会充分考虑水流动力学的因素,不会出现河道急尉弯曲的现象,而且一般都会满足一阶导数连续。因此,在选定测量点的时候,可在河道笔直处少测点,在河道走向发生较大弯曲处多测点。
32、尤其注意在发生弯曲处的翦后不远位置都要有测量点,这样便于更好的保证利用三次样条函数插值的曲线更加接近于实际中河道的曲线。由于灌区地形只是一般的表征对象,对地形场景的模拟细节度要求不高其需做示意性的仿真即可,因此地形同格点的阿距可以取得比较大。但是河道曲线是灌区场景最重要的表征对象,需要对河道曲线做精细的描述。在西河道曲线的时候需要根据误差要求对网格地行进行有选择的再次剖分,从而才能精细的描述河道曲线。河漉景物的造型有睡部分组成:河道与水流河道侧面的绘制:通过贴圉的方式实现。水的效果主要有承的流动效果和水的波动效果。水的流动效果主要是采用纹理位置的偏移来实现的。模拟的河流如图
33、0;所示。圈 河流仿真贴图共景物包括两种:二雏贴田景物和三维贴图景物。二维与三维景物的区别在于浸瓣时被看的面是一十还是多个。二雏景物一般是一十面即只能看到一个平面三维景物剜可以看到多个面二维贴圈景物由于只有一十平面,在技木相对简单,与一般的纹理贴圈操作一样,确定需要进行贴图的四个顶点坐标和纹理,建立纹理映射即可。在进行纹理贴图前需要加载纹理图片天空构造三维贴图景物相对比较复杂,为了保证景物的逼真,避行纹理贴凹的田片需要经过特殊的处理,实现图片纹理的平滑过渡利用图像处理软件对图片的边界平滑处理。处理后的天空图片如图所示圈天空的个圈片无空的绘制是通过纹理贴囤的方式
34、宴现的。是采用的方法,首先绘制一十多边形末南大学程砸士学位论女然后进于亍纹理贴圈。用五个四边形组成一个天空盘(前,后左,右和顶)。这个盎于必须把仿真系统中的所有区域包古进来即包音地形图上的区域。将这五张图片拼接在一起的效果如图 所示图天空仿真树术构造树的外形是一个不规则的几何体通过教学计算实现,计算量根大,影响系统性能和漫游效果因此不采用此种方法。利用模型软件制作的实体模型太大,加载到系统中,同样会影响系统性能,同样不能采用。然而树木类景物是一个三维景物,漫游时可以看到树木多个侧面,进一步分析可知,树木的各个侧面具有相似性。因此树木的侧面可以通过一张图片来表示,因此可以通过将一张图片
35、根据视角旋转来实现(确保始终看到图片的正面)。图是一个树术的图片。图树木贴圈树的实现是通过在一十矩形平面上贴一个树木的图片,并让树的背景呈透明状态。与天第三章二维场景构建空贴图不同的是,树的贴图需要透明显示。因此,透明需要要求树的图片应该是位的御图片。即每一个像素古有啪成分。表示材质像素的透明度,该值越大,透田度越小;该值越小则透明度越大。我们可以通过对图像的十别片元分配不同的值,来创建非矩形光栅图像的效果。将每个。不可见”的片元(围片中除了树的空白地方)的值设置为,每一个不透晴片元(图片中的树)的值设置为旋转的角度在模型变换矩阵中获得,由圈可知图片的背景一定舍遮挡后面的景物,因此需要对图片进
36、行融台处理消豫围片的背景后得到仿真如图所示:图树木仿真场景管理器使用场景管理器对系统里碾可渲染的物体提供了在空问中查拽和搜索的优化,并且针对渲染需要,提供了相应的捧序以厦删除功能。创建场景对象使用场景管理器来管理场景各数据信息,创建场景中所使用的对象,可根据自动地对物体进行相应的优化处理。场景管理器提供对场景中物体整个生命周期的管理,提供了刨建、获得、销毁以及销毁本类型全部实例的方法,任何从场景管理器得到的对象磐须由同一个场景管理嚣销毁。场景节点系绩使用场景节点来定义场景圈的结构。这些场景节点虬层次的结构组织:一十场景节点可以有一十父节点和任意数量的子节点,可以对场景图中的节点进行绑定或者摘除
37、操作,只要把不希望渲染部分的根节点从场景图中摘除下来,这个部分就不会被渲染了,此外场景节点必须通过刨建它们的场景管理署来镝毁。场景节点圈有一个总的父节点:场景的根节点()场景中难一没有父节点的场景节点。对于场景图来说,根节点的显式作用可以用来挂接所有场景中存在的其他节点,隐式作用是场景图用它来挂接静态物体和整个世界地图。场景中新建立的节点必须作为子节点挂接在已经存在的二青点上面。第一个放入场景的节点,必须挂到根节点上面,然后再不断挂接扩充,直至形成一个所需要的场景树状结构图。图中展示了场景图的层次结构:图场景层次结构图在创建了一个场景节点之后,新节点上面没有挂接任何内容。当需要的时候,应该自己
38、创建内容并向需要操作的节点挂接。场景内容独立于场景节点,可以当把场景内容从场景节点中分离出来实并不会引起场景内容的销毁或者删除,但不能把一个场景内容同时挂接到两个以及两个以上的场景节点上面,也不能让一个场景节点同时挂接到两个父节点上面在三维仿真系统中对象有三个主要的空间操作(移动、旋转、缩放),它们的操作目标都是场景节点,而不是场景内容,即用户操作场景节点,场景内容跟随着所挂接节点一同移动、旋转和缩放。场景查询使用场景管理器另外一个很重要作用就是可用来进行场景空间查询(从场景中得到查询的反馈信息),其中包括:光线查询、球体查询、边界盒查询、边界平面查询以及相交查询。其中光线奄询返同与给定光线(
39、空间中两点组成的虚拟线)相交的物体信息;球体查询返回给定球体(通过球中点和半径确定的空间区域)中所有包含的物体信息;边界盒查询返回给定轴向包围盒(通过两个三维向量作为对角点产生的与空间轴平行的长方体空间)中所包含的物体信息;边界平面查询返回与给定的无限延伸的平面相交物体。第三章三维场景构建资源实体在仿真系统中有相当多的场景内容是根据存储在磁盘的信息来创建的,把它们称为以资源为基础的活动物体,其中最常见的是模型本身。使用场景管理器调用相应的资源管理器来读入数据,因为这些资源仍然被系统相应的资源管理器进行管理。可以直接通过场景管理器来构建模型实体,场景管理器通过资源管理器分别载入模型及材质等,并把
40、它们组合起来处理。在成功创建了模型实体之后,它并没有被挂接到任何场景节点之上,而是为了让它进入渲染队列并进行相应的挂接工作。第四章三维场景可交互性设计灌区三维仿真系统的交互性主要包括灌区场景的交互和用户级场景重组两大部分。灌区场景交互灌区场景的交互主要包括,水位数据的采集、传输和存储,水位数据的实时获取(从数据库)和实时反馈(数字显示,图形改变)。流程图如图所示。图水位数据交互流程水位数据的采集水利数据的采集是由现场数字视频监控识别系统完成。首先利用摄像头获取水文信息视频,然后从视频流中实时提取水文图像并保存,紧接着进行图像预处理,图像特征提取,最后对目标特征图像刻度线进行变化,识别出刻度条数
41、,从而得到水位信息。具体做法如下:前端摄像机拍摄到的水文信息视频经过图像采集卡转化为视频流,由于一般摄像机拍摄到的视频流都是( )格式。可以算是操作系统上最基本的、也是最常用的一种媒体文件格式。通过对的文件格式的了解,以及微软提供的针对的处理函数,我们很容易的从视频流中提取出每一帧图像。由于水利领域对水位测量的实时性要求是每十分钟一次水位数据,因此我们只需每隔十分钟从视频流中提取一帧图像即可。为了避免非常态干扰,保证测量精度,可以提取多帧图像,取其平均值作为某一时段的水位测量值。从视频流中截取的图像结果如图所示:图水位灰度化后的图像通过对图像进行一些必要的预处理(图像灰度
42、转化、图像有效区域提取),得到目标特征图像刻度线如目“所示再通过对这些捌度线进行啦变化识别出刻度线,可以快速涮量出宴时信息(铡量杆的长度减去露出水面的捌虚教条煎)。得到如图所示的水位熹度线。图水位刻度线上述方法不仅可以被用来获取实测水位,也可以用来获取闸位数据,并且精度高、费用低,不需要太多的辅助设旌。当然通过视频方式获取水位或嚼位数据在实用化过程中的晟东南大学:程硕上学位论文大问题就是视频采集需要足够强的光线,如遇阴雨雾天气或夜晚等情况,就要增加光照设备,以便采集到能够识别的视频图像。另外,考虑到水面反射光线的情况,可通过在水尺周围的水面上放置一块固定的木板来避免水面反射光线。水位数据传输与
43、存储一旦有了实时的水位、闸位数据以后,就可以通过实时的数据对灌区场景进行还原。但是一般检测点离远端数据库有一定的空间距离,不可能通过简单的有线传输方式将水位、闸位数据发送到远端数据库。因此,如何将现场采集来的数据发送到远端数据库是一个难题。目前采用的方法是,通过把图像识别软件写入单片机,然后在单片机上安装移动卡。当图像识别软件识别出水位信息后转化为数字信息,再通过覆盖广阔的移动网络将水位、闸位数据发送到数据库,这样就实现了一套完整的数据采集系统。数据读取和实景再现灌区实景还原的实时性主要体现在数据获取与数据变化的同步上,软件实现时利用提供的时间触发器每间隔一段时间重新连接数据库,获取最新的水位
44、、闸位数据。系统读取数据后,通过这些数据改变水面贴图的位置(上下),使得贴图上下移动,从而实现了视觉上的水位升高和降低,在系统中再现变化的现实场景。用户级场景重组用户级场景重组提供给用户方便修改场景的方法,实现的关键技术是目标拾取和文件的导入,以及对导入的模型做一系列的操作如:放大、缩小、移动、旋转、添加、删除等。目标拾取常用方法如果想在三维场景中对各种景物模型进行一系列操作,首先需要做的是使用鼠标点击景物,这就是目标拾取问题。解决拾取问题目前没有形成一个特别有效的方法,常用的方法有的选择模式啪和射线法嵋¨。()的选择模式大多数图形显示设备在工作时候都以同定的频率进行重绘和刷新,该过
45、程要求显示硬件获取颜色缓存中的内容,并用这些值来决定屏幕上的图形窗口的颜色。对于应用程序来说,屏幕的刷新过程是不可控制的,二者也是不同步的。所以用户程序在为颜色缓存创建新值的同时,显示过程取出这些值并加以显示。用于显示的值并不单单是由特定角度确定的正方形的值,而是多次执行显示回调函数后形成的一些颜色值的组合。虽然无法将这两个过程同步,但可以使用两个颜色缓存前台缓存和后台缓存,即双缓存技术。前台缓存是显示硬件所显示的内容,后台缓存是应用程序进行绘制的地方。的选择模式通过双缓存技术在后台重新绘制图像来实现,即当鼠标移动到目标第四章三维场景可交互性设计物体时候,设置一个以光标为中心的小矩形区域,在后
46、台缓存中对该区域中的场景进行一次额外的绘制,每一个被在后台缓存中重新绘制的图形都会产生一条称为“命中”()的消息,该消息存储于一个称为名称堆栈( )的缓存中,该堆栈中存储的是被重绘图形的名字(整数),当出现一次鼠标点击事件后,以光标为中心的小矩形区域内的图形的名字将会被压入堆栈,这样可以获得鼠标选取区域中的图形,由于该区域非常小(近似模拟光标点),所能重新绘制的图形大多是重叠的,再通过判断这些图形的值(即从观察者看过去的远近值),由于我们总是假定选取离我们最近的物体而不是其后面的物体,故可以判断所选的景物,从而实现了鼠标拾取功能。该方法思想比较简单,易于实现,但是要付出在后台缓存重新
47、绘制小矩形区域图形的代价,运行开销比较大。()射线法射线的顶点就是鼠标在屏幕的点击处,此线向屏幕纵深延伸,射线的视域体结构如图所示。图视域体结构图图中点,可以抽象的理解为一个摄像机的焦点,相当于观察者的眼睛。那个六面体区域称为视域体,所有位于该视域体外的物体将不会出现在图像中,这些之外的对象被裁剪掉了,和现实生活中一样,观察者看到的只是位于摄像机前方的物体,无论它们距离摄像机有多远。,鼠标在屏幕中的点击点就是射线的起点,射线是垂直于视域体的两个裁剪面的(面 和面),现在的问题是屏幕坐标是维的,而场景是维的,点击点只有和坐标,通过引入一个窗口坐标值可以确定这个点的三维坐标,设点击点的值
48、为。如图所示:末南大学程磺±学位论文图空间转换矩阵在囝所示的矩阵中近远裁剪面的左上角和右下角的坐标值为(,)和(,):参数,分别表示视点与近远裁剪面的距离。从而可以求得射线方向上与远裁剪面的另一个交点由此即可确定射线方程,该射线的方向矢量在观察空间中的表示为()再将射线点转换封世界坐标空问,得到其在世界坐标系中的坐标。最终的运算要在世界坐标空同中进行,所以要把矢量所用的点口和从观察空间转换为世界坐标空间。有了这条射线后,我们使用它穿越视域体也同时穿越了在视域体中的物体下面所要解秩的问厝是如何判断射线与这些物件相交,这里先讨论一种比较麻烦的但是比较精确的方法因为三维景物在系统中存储是以
49、无数的三角砸组成的,这些三角面的顶点坐标都存储在实体的数据结构中。如果射线与一个物体的一个三角面相交就可认定射线与此物体相交,可以把在视域体中的物体的备个三角面投影到近剪裁面上,这样就可把三维的问题转化为维问愿,设近裁剪面是一个二维平面点击点是这个面上的一个二维点,只要判断其是不是包古在投影到近裁剪面上的三角形中即可判断是不是相交。判断方法如图 所示。图三角形包含选取点图图中由,构成的三角形,设三角形,的面积为,:判断点是否在三角形中的方法是:如果,则表示点在三角形中。当然,在解决了射线与物体相交判断问题后,所要解决的还有如何处理射线穿过重叠物体,可以通过值,取值最小的(
50、即离观察者最近的)为所希望选的物体。这种方法与在后台缓存重新绘制场景的方法比起来运行开销很小,十分有效,精确度很高。射线与包围盒法对于本课题,从另一个角度来思考,单纯使用射线计算量比较大,使用数学函数也比较多,如果在不需要非常精确的场合下,可以考虑使一种改进方法,即不用射线穿越景物的三角面,而是穿越景物的包围盒。包围盒是指用一个项点确定大小足够的多面体来表示该物体,一般用一个长方体或球体来包闱该物体。换句话说,就是用一个最小的恰好能包围不规则物体的长方体来代替原物体来与射线做相交检测。基本思想是如果射线与该包围盒相交即认为与该物体相交。一些常见的包围盒有以一种:包围球。最简单的包围盒,当对象做旋转运动时,包围球不需要做任何更新。如果场景中对象需要做频繁的旋转运动时,包围球是很好的选择。然而并不是任何场合都适用此方法,由于模型的集合特征多种多样,很难用球型给每个对象建立合适的包围盒,即便建立了也不一定有较好的结果;同时包围球的紧密性往往较差,其技术的不合理应用将导致检测精度和速度的降低。包围
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025北京市海淀区第二实验小学教育集团招聘考前自测高频考点模拟试题附答案详解
- 2025年度湖北省纪委监委考试录用公务员专业测试模拟试卷带答案详解
- 2025江西南昌市东方航空配餐有限公司招聘劳务派遣人员1人考前自测高频考点模拟试题参考答案详解
- 2025金华金开招商招才服务集团有限公司招聘1人考前自测高频考点模拟试题及完整答案详解1套
- 2025江西南昌市劳动保障事务代理中心招聘劳务外包人员1人模拟试卷附答案详解
- 2025江苏无锡职业技术学院招聘专职辅导员4人模拟试卷及完整答案详解
- 2025华东理工大学材料科学与工程学院高分子材料人工智能研发创新团队招聘(上海)模拟试卷附答案详解(完整版)
- 2025年佳木斯同江市事业单位公开遴选管理人员和专业技术人员73人模拟试卷及一套答案详解
- 2025年福建省厦门市湖里保安集团有限公司招聘1人考前自测高频考点模拟试题附答案详解(完整版)
- 2025广东广州市荔湾区沙面街道环卫站招聘管理人员1人考前自测高频考点模拟试题及答案详解(各地真题)
- 银行安全用电知识培训课件
- 2025鄂尔多斯市国源矿业开发有限责任公司社会招聘75人笔试参考题库附带答案详解
- 合格兽药知识培训课件
- 国网甘肃电力招聘考试真题2024
- 医院住院综合大楼项目监理大纲
- 第8课《就英法联军远征中国致巴特勒上尉的信》公开课一等奖创新教学设计 统编版语文九年级上册
- 2025-2026学年人美版(北京)(2024)小学美术三年级上册教学计划及进度表
- 5.2凝聚价值追求 教案 -2025-2026学年统编版道德与法治九年级上册
- 2025年高考英语新课标Ⅱ卷点评及2026备考方向 课件
- 军事信息管理办法
- 第4课 科技力量大 第三课时(课件)2025-2026学年道德与法治三年级上册统编版
评论
0/150
提交评论