高德地图更换天地图底图(坐标转换)—使用高德API(WMTS)

本文记录了如何处理高德地图无法绘制村镇边界的问题,通过引入天地图并进行坐标转换。首先,使用gcoord.js将高德地图的火星坐标转换为wgs84经纬度,再转化为墨卡托4490坐标。接着,利用天地图API和高德地图WMTS服务更换底图,详细阐述了参数配置和接口调用方法。

踩坑日记:因高德地图无法对村镇进行边界图的绘制,故引入天地图作为补充以解决问题

一、首先是对坐标进行转换,因为高德地图是火星坐标,而天地图是wgs84墨卡托4490,所以必须进行如下转换

①先把高德地图经纬度转换为wgs84经纬度,这个库是gcoord.js,使用方法自行百度

var binzhou84 = gcoord.transform (
            [117.96484387440898, 37.38205313024871],
            gcoord.GCJ02,
            gcoord.WGS84,

②然后使用一个固定函数将wgs84经纬度转化为墨卡托4490,然后将返回的墨卡托4490对象,使用高德地图初始化时赋值给center

function lonlat2mercator(a,b) {
            var mercator = {
              x: 0,
              y: 0
            };
              var x = a * 20037508.34 / 180;
              var y = Math.log(Math.tan((90 + b) * Math.PI / 360)) / (Math.PI / 180);
              y = y * 20037508.34 / 180;
              mercator.x = x;
              mercator.y = y;
              return mercator;
          }

二、其次是使用高德地图API(WMTS)进行底图的更换

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值