预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于虚拟现实技术的数字地球建模研究摘要:本文基于虚拟现实技术从应用的角度出发深入讨论在虚拟现实环境下数字地球基础模型的模拟建立问题构造出地球的三维对照体。关键词:数字三维对照模型中图分类号:TN711文献标识码:A文章编号:“数字国土”工程是“数字地球”的重要组成部分这一工程旨在通过国土资源调查资料的数字化解决我国目前存在的海量地学数据分散、保存方法落后、查询困难、利用率低等问题。本文将基于虚拟现实技术从应用的角度出发深入讨论在虚拟现实环境下数字地球基础模型的模拟建立问题构造出地球的三维对照体。一、建立地球模型的复杂性研究要构造一个地球的三维对照体必须建立地球模型。下面先讨论绘制一个球体的可能性和工作量。如图1.1所示左边是两个四棱锥组成的正8面体现在从这个正8面体推导出球的模型。通过正8面体内正方形的对角线将正8面体切成4块其中的角a为90度;如果称正8面体为球的话正8面体内正方形的四条边围成的就是赤道球半径R为正方形的对角线长的一半那么正8面体是一个4经度2纬度的球了。图1.1尝试建立球体模型的示意图Fig1.1Sketchmapoftryingtoestablishballmodel在切平面上寻找一个点C使得三角形ABC为等边三角形并且C到中心O的距离是R这样就形成图1.1右边的4经度4纬度的球。如果再寻找点DE使得三角形DACECB为等边三角形并且DE到中心O的距离是R按以上方法类似C的点越多切平面中的图形越接近圆。现在再增加赤道切平面上的点C'使得三角形AB'C'为等边三角形并且C'到中心O的距离是R。由上的方法正八面体就趋向于它的外接球了。所以只要知道球的半径层次数和分块数就可以构造出地球的模型。二、地球模型的建立地球模型位于系统所有图层的下面起到一个背景的作用。上节中构造一个球复杂性研究工作表明用程序绘制一个球体是非常麻烦的一件事情。而我们要开发的是一个地球的完整对照体地形的复杂程度可想而知。设想假如用相同的方式来创建拥有几万甚至几十万个顶点的物体时所花费的时间和努力都将是很可怕的。虽然有很多时候需要手动创建顶点和索引数据但更合适的方法就是从外部的资源加载已有的顶点数据比如从一个文件。以DirectX为例在ManagedDirectX里有一个可以封装并且加载顶点和索引数据的Mesh对象虽然Mesh主要用来封装复杂的模型但也可以用来储存任何类型的图形数据并且Mesh类也同样有一些用来提高渲染物体性能的方法。所有的Mesh对象都包含了一个顶点缓冲和一个索引缓存除此之外他还包含了一个属性缓冲(attributebuffer)。所以使用Mesh绝对是一个不错的方法而且有很多专业级的3D模型设计软件这些软件可以创建3D模型。由于在近处看地球的时候地球表面上地形层被显示出来地球模型被消隐远处看地球又不需要太细致的网格因此在地球模型建立的时候要在复杂度上作一些文章。模型太简单了地球不圆太复杂了地球消耗了太多的资源。本人的观点认为建立地球模型的界定尺度是看起来是地球就好。当然地球模型也同样需要经过简化之后再被加载到场景中去。三、地球模型与地形层如果已经建立地形层模型为什么还要在场景中加入地球模型呢?其实除了要构造一个地球的完全三维对照体之外地球模型在场景中还具有一些特殊的用处。首先要明确建立一个虚拟现实的数字地球显示多种信息比较好的办法是把各种信息叠加即使用分层的形式建立一个观测距离的临界值当视点与地球表面的距离到达某个阈值时候图层信息被显示出来。地球模型在数字地球原形系统中的地位很特殊。假设使用地球模型并且只有地形模型层的情况下本节将分三种情况讨论地球模型与地形层的关系。(1)视线垂直地球表面近距离观测当近距离观测地球表面信息的时候视见空间完全在地球表面的范围之内。地形图层信息被读出并被显示出来由于遮挡的原因地球模型被图层遮挡视见空间之外的地形也被剪裁掉只显示视见空间区域内的地形。(2)视线垂直地球表面远距离观测如果视角在地球之外地球的模型显示在视见空间之内。也就是说距离地球表面的距离远大于图层显示的临界值地形并没有被显示出来因此看到的就是一个地球的模型。但是考虑到人眼可视范围的限制人在观测点观察地球视线是发散的看到的是一个地球模型但从图形学的角度来说并不是一个完整的地球而是人视线与地球切线之间的表面部分。其余部分因为出于对效率考虑被剪裁掉了。(3)视线与地球表面成夹角情况下近距离观测在近距离观测地球表面的时候观测