姚鹏君(北京东方新星石化工程股份有限公司)
摘要:本文讲述基于B/S架构的WEB三维地理信息系统的解决方案。重点讲述了WEB可视化技术,是如何在网络环境下搭建一种三维地理信息系统的,以及讲述了Skyline系列软件中的TerraExplorerPro的建模过程和TerraGate的发布过程。
关键词:Skyline三维地理信息B/S架构
0引言
随着计算机技术、计算机图形学、三维数据获取技术、和虚拟现实技术的迅速发展,三维GIS逐步从理论的范畴走向了实际的操作应用。由于三维GIS具有多维信息展现、处理和分析的特点,致使这种技术广泛应用于国土、水利、环保、海洋、测绘、农林、数字城市、应急、交通、通信、能源、金融等国民经济的各个领域。这些领域的广泛应用为三维GIS勾勒出美好的前景。
1Skyline软件概况
从20世纪90年代中期开始,Skyline的软件系统一直在基于网络的三维可视化软件中居于领先地位。应用软件、工具包和服务的集成平台将复杂的地理空间信息以简单的三维图像的形式表现出来,这种技术能广泛应用于各种网络之上,包括局域网和万维网。为了实现真正的三维可视化,美国Skyline公司与相关的地理信息系统组织视构进行协作,研发了高效专业的SkylineTerraSuite三维地理信息系统软件。
2建模技术
Skyline系列软件中的TerraBuilder可以把影像、高程和矢量数据融合成一个高精度带有地理坐标信息的地形数据文件即*.MPT文件,关于TerraBuilder的具体操作过程不在此做详细论述。利用TerraExplorerPro,通过纹理拍摄、图片处理和贴图建立一些如房屋等简单的模型。而一些比较复杂的模型,比如城市中的标志性建筑、各个行业中的大型装置设备等,需要在3DMAX等一些三维模型制作软件中创建。以3DMAX为例,按实物的实际大小创建模型,注意要把实物的某个特殊坐标点定于3DMAX中的原点上。模型建完之后可以利用这个点把模型按照坐标正确的放于地形模型之上。在3DMAX中完成的模型数据需要导成TerraExplorerPro可以辨认的*.X文件,这就需要在3DMAX中安装PandaDirectXMaxExporter插件。TerraExplorerPro把三维模型数据和地形数据融合成一个具有高三维仿真的最终文件.FLY文件。数据文件最后经过TerraExplorerPro打包压缩处理完成
3基于B/S架构的WEB可视化技术
基于WEB可视化技术,是在网络环境下搭建的一种三维地理信息系统。可以向互联网用户逼真的展示房屋、街道、城市以及矿山、炼油厂等三维景观,给人一种身临其境的感觉。并且给用户的进一步分析与决策提供了有靠依据。
3.1B/S架构B/S架构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现。B/S结构利用不断成熟和普及的浏览器技术实现原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。
3.2系统实现软件的开发采用的是面向对象编程方法,使用的是基于COM组件的开发技术。使用的编程环境.net,以及脚本语言JavaScript和VbScript包含于HTML中,共同实现其系统功能。SkyLine的二次开发文档为我们提供了许多的API接口,这便于编程人员很方便的使用其接口实现所需的功能,而不必知道接口函数封装实现功能的过程。利用这些接口的组合就足以满足普通功能的实现。系统严格按照软件工程的思想和技术进行需求分析、系统设计、编码、测试和维护,工程的自始至终各个环节都有详细的文档资料。三维地理信息系统数据量大,模型数据多,造成了计算机内存开销不足,不能正确的显示,或者电脑速度运行很慢,甚至出现死机现象,这是系统开发人员需要急需解决的重点问题。为了解决这个问题,Skyline为我们提供了一些实用的方法。第一、在模型制作的过程中,要严格按照模型的制作标准。TerraExplorerPro模型中要注意图片处理,图片越小越好。在3DMAX等其他模型制作软件中,模型做得尽量小,毕竟总的系统是个海量数据系统,而且要通过互联网传输。第二、是在上文提出的完成后的FLY文件一定要经过TerraExplorerPro生成对象层次细节选项打包压缩,数据中的.X模型数据压缩成.XPC和.XPL等级文件。第三、加载模型的时候要把模型的可视化距离设置好,模型大的数据默认可视化距离设置远些,模型小的数据可视化距离设置近点,这样加载内存的时候会有层次感。最根本的解决方法是用SkyLine的流方式进行加载数据,阅览到哪里就加载哪里的数据模型,大大缩短了加载数据的时间,这样也提高了海量矢量数据的调用时间。Skyline还可以从Oracle、SqlServer、ArcSDE、WFS等一些数据库中加载矢量数据。
4系统发布
基于B/S架构的WEB可视化技术程序适合用于WINDOWSSERVER平台,用IIS发布开发的WEB程序,FLY文件也用IIS发布。
地形数据MPT文件是用Skyline系列软件中的TerraGate来发布的。TerraGate是一个强大的网络数据发布技术,它可以实时的以流模式的形式发布三维地形数据。TerraGate的设计是处理对基于Skyline3D可视化技术的客户端请求的服务器软件。通过TerraGate工具,你可以向TerraExplorer客户端用户发送流的三维地形数据。
该服务器软件能在互联网上通过可变带宽来无缝接入,而不会受到网络连接的反应时间或中断的影响。只要最初的景象以低分辨率的形式被接收到,用户不必等待显示全部的数据帧就能够接入3D环境。这项突破技术能够以一种更平滑和令用户更满意地方式来无缝显示3D影像。该软件的服务器-客户端模式已经进行了优化,无论是在高带宽或者低带宽的情况下,都能够处理数以千计的并发用户同时接入数据在无论是高或低带宽的情况下,同时这些数据量实际上也不会受到多少的限制,这些功能保证了每个用户都可以无中断地浏览。重要的是,该软件使用技术具备极强的无限扩展性,允许实际中位于不同位置的多个服务器可以同时处理海量的3D数据,同时它们可以自动地分配共担整个负荷。在TerraGate的设置中要注意其端口不可以与WEB发布端口重复。WEB程序加载FLY文件,FLY文件加载MPT地形数据,WEB程序和FLY文件都是用IIS发布,MPT文件由TerraGate发布,它们通过其内部的关联,很好的联合在一起,实现了三维地理信息系统网络可视化。
总结:将传统的二维地理信息扩展到三维空间,并通过当前互联网技术,与用户共享其三维地理信息的成果。与其他主流的3DGIS软件的比较Skyline具有更强的嵌入式能力,在叠加矢量数据和支持三维模型对象加载方面Skyline成为了主导者。同时Skyline也提供了大量的地形环境分析工具(比如视域分析,只要进行对角点的确定就能在fly上生成等高线轮廓图)和面积、距离、高程测量工具,并且这些功能在二次开发过程中很容易实现。通过项目实践发现这种三维系统不仅仅发挥在可视化展示上面,其更大的作用在于对数据的分析,为领导者的决策提供有利的依据。
参考文献:
[1]梁吉欣,左小清.Skyline在Web三维GIS中的应用研究.昆明理工大学学报《理工版》第34卷第2期.
[2]洪安龙,许大璐,梁剑芳.基于Skyline的三维地理信息系统应用的实践.