魏世轩
(1.重庆市勘测院,重庆 401121; 2.重庆市地理国情监测工程技术研究中心,重庆 401121)
伴随着计算机、互联网的发展,传统二维WebGIS技术已趋于成熟,基于其开发的数据展示与查询系统也多种多样,精彩纷呈。目前,市面上比较常用的二维WebGIS类库有Esri公司开发的ArcGIS API for JavaScrip、开源的OpenLayers等。但随着三维技术的发展,其更好地虚拟描述现实世界的功能,更好的可视化展示效果,激发了人们对基于三维WebGIS开发地理信息系统的需求,并且三维环境下能展示的数据远远多余二维环境,比如地形数据、三维实景模型等,且三维WebGIS的可拓展性和应用前景也优于二维WebGIS[1]。本文研究如何基于Cesium建设三维模式的空间数据展示与查询系统(图1),并对其中的关键技术进行阐述。

图1 系统主界面
目前,市面上较流行的三维WebGIS类库有ArcGIS API for JavaScript 4.x系列、Cesium等。ArcGIS API for JavaScript 4.x系列为Esri公司基于WebGL与HTML5技术开发,但其调用的三维场景资源数据格式小众,需借助ArcGIS Pro发布,且为付费软件。Cesium是AGI公司开发的一款面向三维地球和地图的世界级的JavaScript开源产品,具有成本低、开发简单、支持多种地图格式等特性[2],用户可快速搭建一款零插件的虚拟地球Web应用,可免费用于商业和非商业用途。
Cesium支持调用WMS、WMTS、TMS、Bing Maps、ArcGIS等多种地图服务图层,也可以用简单的图片作为地图源。同时,Cesium也支持许多数据格式,如JSON、GeoJSON、XML等。在三维球体上能方便地创建点、线、面、体等实体,加载地形数据、3D Tiles格式的三维实景模型数据等[3]。
本文设计研发的空间数据展示与查询系统运行于局域网环境下,需搭建私有的系统运行基础底图,包括覆盖全球的低分辨率影像、覆盖全重庆的影像、覆盖全重庆的路网地名数据、覆盖全重庆的地形数据、界线数据等。……