先将WGS84坐标转火星坐标再将火星坐标转百度坐标
本文参考:https://blog.youkuaiyun.com/yzyssg1/article/details/76120617
/**
* WGS84转GCj02
* 火星坐标系 (GCJ-02) 与百度坐标系 (BD-09) 的转换
* @param lng
* @param lat
* @returns {*[]}
*/
wgs84togcj02tobd09 (lng, lat) {
const xPI = 3.14159265358979324 * 3000.0 / 180.0
const PI = 3.1415926535897932384626
const a = 6378245.0
const ee = 0.00669342162296594323
// WGS84转GCj02
let dlat = this.transformlat(lng - 105.0, lat - 35.0)
let dlng = this.transformlng(lng - 105.0, lat - 35.0)
let radlat = lat / 180.0 * PI
let magic = Math.sin(radlat)
magic = 1 - ee * magic * magic
let sqrtmagic = Math.sqrt(magic)
dlat = (dlat * 180.0) / ((a * (1 - ee)) / (magic * sqrtmagic) * PI)
dlng = (dlng * 180.0) / (a / sqrtmagic * Math.cos(radlat) * PI)
let mglat = lat + dlat

最低0.47元/天 解锁文章
1687





