基础地图数据一般指GIS制图数据或者是涵盖一定区域范围内的多种比例尺、地形、地貌、水系、居民地、交通、地名等基础地理信息,以及各行业应用的各类地理数据,包括影像、栅格、矢量、瓦片等形式的数据,大多为地图数据供应商或GIS制图平台生产的专业GIS数据。这些GIS数据具有特定的格式,如ArcGIS、MapGIS、SuperMap平台的GIS数据等。在Web上通常以数据服务的方式提供数据源,既可以是标准的OGC服务,也可以是自定义的GIS数据服务。
针对ArcGIS数据,OpenLayers封装了一个ArcGIS瓦片数据源,可以直接使用。因此本小节,通过一个实例实现了OSM地图、Bing地图、MapServer等数据的加载,如图5-14~图5-16所示。
图5-14 加载OSM地图
图5-15 加载Bing地图
图5-16 加载MapServer地图
主要步骤如下所示。
(1)新建一个basicData.html页面,并参照地图显示功能的方法定义OSM瓦片数据、Bing地图数据、MapServer地图数据。
(2)定义一个新的div层,用来存放不同的功能按钮,并编写不同的功能函数,将函数与按钮进行绑定。
(3)最后通过点击按钮来实现不同基础数据的加载。
样式核心代码如下:(www.xing528.com)
【说明】对存放功能的div层进行样式的设计,具体可参考本章第三节“图层控件”一小节的图层列表制作相关内容。
功能按钮制作核心代码:
【说明】在id为basicMapLoad的div层中定义一个label标签存放功能列表标题,利用3个button标签实现3种不同数据的加载。
实例化数据源核心代码:
【说明】实例化OSM数据、Bing地图、MapServer数据,具体可参考图层控件一节中的数据实例化内容。
与按钮绑定的函数代码:
【说明】通过map.removeLayer()和map.addLayer()函数实现地图数据的清除与新数据的加载。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。