海量数据高速生成技术
系统内置一个功能完备的金字塔数据生成模块,支持从数据下载、瓦片数据处理到数据入库的地理数据高速生成和处理功能,为虚拟现实和虚拟仿真应用开发提供了高速数据处理能力。
用户可以根据金字塔模型数据结构,构建海量的地景数据库(包括DEM和DOM),基于构建的地景数据库,系统将根据应用需求对金字塔结构的“瓦片数据”进行处理,并拼接成一整幅影像地图,同时支持对入库的其他矢量数据进行读取调用、拼接定位,再把不同的数据要素进行分类拼接,调度、加载和显示。
金字塔结构瓦片数据拼接调度流程图
为保证虚拟现实和虚拟仿真应用开发中,海量地理空间数据的加载、调度、渲染生成,系统采用多种技术手段确保海量数据的快速生成和显示。
视域数据裁剪技术
视域数据裁剪技术主要通过控制计算机图形相机的前后裁剪面的范围来实现,即由视场角定义的上下左右四个面(类似照相机的视角)和由投影矩阵定义的远近剪切平面(类似照相机的景深),从而实现可见视域范围的视景内容的大小和深度。如图:
多细节层次(LOD)技术
LOD 技术是在不影响画面视觉效果的前提条件下,通过逐次简化景物的表面细节来减少场景的几何复杂性,从而提高绘制算法的效率,其所遵循的原则就是能够模拟“越远越模糊,越近越清楚”这一视觉现象,通常利用视角高度(Eyealt)与瓦片尺寸的比来判定是否当前显示的瓦片是否需要分解为更高分辨率的子瓦片。如图:
数据缓存控制技术
内存缓存也叫高速缓存,是已经加载了的数据,可直接用于场景显示。高速缓存的大小设有上下限,用以控制缓存的瓦片数量不致太少也不要太多,缓存数据的置换算法可以用最近最少使用算法(Least Recent Use, LRU),LRU的主要出发点就是,如果某个瓦片被访问了,则它可能马上还会被访问。
请求预测机制
采用数据缓存机制可以提高系统的性能,当地形场景连续运动时,应用程序提前预测系统即将需要的数据,并提前把这些数据读到缓存区,当应用程序真正需要这些数据时,便可以直接从缓存区读取,从而省去了从数据源读取这些数据的时间。在海量地形漫游时,数据调度和场景绘制需要同时进行,因此,可以设立一个独立的线程来进行数据预测调度。