坐标系转换

最近在做一个活动,涉及多环境的定位,如app、微信、支付宝小程序等,分别采用各自环境的定位api获取用户当前位置的经纬度,根据经纬度获取距离该用户最近的门店。

  • app(本公司)采用的百度坐标系(BD09,百度坐标)
  • 微信采用的腾讯坐标系(WGS84,gps定位)
  • 支付宝采用高德坐标系(火星坐标系)

不同坐标系参照物不一样,之间存在误差 ,需要统一坐标系

获取最近的门店,是根据经纬度计算最短距离。该接口采用的是百度坐标系,所以使用上面定位到的经纬度需要统一转换成百度坐标系,百度提供了坐标转换接口,微信小程序也提供了坐标转换接口。

目前国内主要有以下三种坐标系:

  • WGS84:为一种大地坐标系,也是目前广泛使用的GPS全球卫星定位系统使用的坐标系。
  • GCJ02:又称火星坐标系,是由中国国家测绘局制订的地理信息系统的坐标系统。由WGS84坐标系经加密后的坐标系。
  • BD09:为百度坐标系,在GCJ02坐标系基础上再次加密。其中bd09ll表示百度经纬度坐标,bd09mc表示百度墨卡托米制坐标。

注意:非中国地区地图,服务坐标统一使用WGS84坐标。

 为什么要进行坐标系的转换?

猜你喜欢

转载自blog.csdn.net/CamilleZJ/article/details/120309444