高德地图、百度地图、腾讯地图坐标相互转换

您所在的位置:网站首页 经纬度转换为84坐标系 高德地图、百度地图、腾讯地图坐标相互转换

高德地图、百度地图、腾讯地图坐标相互转换

2024-07-10 04:54| 来源: 网络整理| 查看: 265

高德地图、百度地图、腾讯地图坐标相互转换

1.WGS-84原始坐标系,一般用国际GPS纪录仪记录下来的经纬度,通过GPS定位拿到的原始经纬度,Google和高德地图定位的的经纬度(国外)都是基于WGS-84坐标系的;但是在国内是不允许直接用WGS84坐标系标注的,必须经过加密后才能使用; 2.GCJ-02坐标系,又名“火星坐标系”,是我国国测局独创的坐标体系,由WGS-84加密而成,在国内,必须至少使用GCJ-02坐标系,或者使用在GCJ-02加密后再进行加密的坐标系,如百度坐标系。高德和Google在国内都是使用GCJ-02坐标系,可以说,GCJ-02是国内最广泛使用的坐标系; 3.百度坐标系:bd-09,百度坐标系是在GCJ-02坐标系的基础上再次加密偏移后形成的坐标系,只适用于百度地图。

将腾讯、高德地图经纬度转换为百度地图经纬度 //将腾讯、高德地图经纬度转换为百度地图经纬度 mapPointTxTurnBaiDu (dataLon, dataLat) { let bd_lat; let bd_lon; let x_pi = 3.14159265358979324; let x = dataLon, y = dataLat; let z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * x_pi); let theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * x_pi); bd_lon = z * Math.cos(theta) + 0.0065; bd_lat = z * Math.sin(theta) + 0.006; return { bd_lat, bd_lon }; }, selectAreaTreeVal (val) { let self = this self.houseLists.forEach(item => { const pointData = this.mapPointTxTurnBaiDu(item.lng, item.lat) item.lng = pointData.bd_lon item.lat = pointData.bd_lat let point = new self.BMap.Point(item.lng, item.lat) let marker = new self.BMap.Marker(point) // 创建标注 self.map.addOverlay(marker) }) }, 百度地图坐标转腾讯、高德地图坐标 //百度地图坐标转腾讯、高德地图坐标 transPosition(bd_lng, bd_lat) { var X_PI = Math.PI * 3000.0 / 180.0; var x = bd_lng - 0.0065; var y = bd_lat - 0.006; var z = Math.sqrt(x * x + y * y) - 0.00002 * Math.sin(y * X_PI); var theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * X_PI); var gg_lng = z * Math.cos(theta); var gg_lat = z * Math.sin(theta); return {lon: gg_lng, lat: gg_lat} }, selectAreaTreeVal (val) { let self = this self.houseLists.forEach(item => { const pointData = this.transPosition(item.lng, item.lat) item.lng = pointData.gg_lng item.lat = pointData.gg_lat let point = new self.AMap.Point(item.lng, item.lat) let marker = new self.AMap.Marker(point) // 创建标注 self.map.addOverlay(marker) }) },


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3