leaflet地图坐标偏移问题记录

博客介绍了在使用Leaflet加载ChineseTmsProviders插件时遇到的地图坐标偏移问题,以及如何通过地图纠偏插件leaflet.mapCorrection.min.js来解决这个问题。内容包括插件的使用、不同地图坐标系的介绍,以及纠偏插件的测试效果对比。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

leaflet加载各厂地图插件ChineseTmsProviders

ChineseTmsProviders插件可以使leaflet地图通过加载瓦片地图的方式加载不同厂商地图的方式

/* 以vue为例
安装
	npm install leaflet.chinatmsproviders
main.js引入
*/
import 'leaflet.chinatmsproviders/src/leaflet.ChineseTmsProviders.js'

ChineseTmsProviders提供了对高德、百度、谷歌、天地图等的支持页面引入天地图和高德地图

/* 以下是引入了高德和天地图*/
var gaoDe = L.tileLayer.chinaProvider('GaoDe.Normal.Map'
Leaflet是一个轻量级的JavaScript库,用于创建交互式的在线地图。要在Leaflet上加载百度地图图层,并处理坐标偏移,你需要遵循以下步骤: 1. 首先,确保已经在项目中引入了Leaflet库和百度地图API。通常情况下,可以在HTML文件中通过CDN链接引入它们: ```html <link rel="stylesheet" href="https://unpkg.com/leaflet/dist/leaflet.css" /> <script src="https://cdn.jsdelivr.net/npm/leaflet@1.7.1/dist/leaflet.js"></script> <!-- 百度地图API --> <script src="https://api.map.baidu.com/api?v=4.0&ak=your_baidu_api_key"></script> ``` 记得替换`your_baidu_api_key`为你的实际百度地图API密钥。 2. 创建一个Leaflet地图实例,并设置其初始位置: ```javascript var map = L.map('map').setView([39.9042, 116.4074], 13); // 北京中心坐标作为默认视图 ``` 3. 使用百度地图提供的服务创建一个图层,然后将这个图层添加到Leaflet地图上。百度地图图层通常会返回一个`BMap.Map`对象,需要转换成适合 Leaflet使用的L.Marker或其他图层类型。这里假设有一个`loadBmapLayer()`函数负责协调这个过程: ```javascript function loadBmapLayer() { var bmap = new BMap.Map('bmapContainer'); // 定义一个div id为'bmapContainer' // 加载百度地图并设置中心点 bmap.centerAndZoom(new BMap.Point(39.9042, 116.4074), 13); // 转换百度地图的标记到Leaflet坐标系 var latlng = bmap.getCenter().transform('mercator'); // 将转换后的坐标添加到Leaflet地图 L.marker(latlng).addTo(map); } ``` 4. 调用`loadBmapLayer()`函数来初始化地图和百度地图图层: ```javascript loadBmapLayer(); ```
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值