WebGIS-Leaflet应用(一)地图初始化之多种底图加载

Leaflet支持加载不同类型地图,如天地图、高德地图、百度地图等等在线地图服务,在线加载各大厂商地图服务网上已有很多例子,不在此重复。本文主要讲解离线地图发布及加载。

在线地图源

1、可用于加载天地图、高德地图、谷歌地图及部分卫星图。

2、借助超图iclient 9D 加载天地图、百度地图。

3、百度地图数据源 借鉴。

离线地图

地图发布(SuperMap iServer 收费 GeoServer 开源)

以GeoServer为例

1、安装GeoServer,参考

2、通过GeoServer发布tif数据,参考

3、登录服务器web管理页面,点击Layer Preview,找到自己发布的服务,点击OpenLayers

4、通过调试工具的Network可知,我的服务器图层访问地址是http://localhost:8999/geoserver/linrt/wms,类型为WMS服务

5、根据Leaflet API可知,支持加载wms服务,js如下

var map = new L.map("allmap", {
        zoom: 17,
        center: [22.6170,113.050],
        boxZoom: true,
        crs: L.CRS.EPSG4326
    });
    var nexrad = L.tileLayer.wms("http://localhost:8999/geoserver/linrt/wms", {
        layers: linrt:jm,
        format: image/jpeg,
        transparent: true,
        uppercase:true
    }).addTo(map);

通过阅读请求内的url,填写对应的参数,重点 layers参数

6、发布成功

小问题(目前发布的服务无法做到当前地图自适应视野,需要优化,待续)

经验分享 程序员 微信小程序 职场和发展