2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 谷歌地图坐标转换为百度地图坐标

谷歌地图坐标转换为百度地图坐标

时间:2022-11-30 07:12:54

相关推荐

谷歌地图坐标转换为百度地图坐标

在开发地图前要先了解好WGS84、GCJ02、BD09相互之间的原理。例如谷歌地图在国外是不需要进行转换,但是谷歌转为百度地图需要从WGS84转为BD09。

第一步先判断是否为国外坐标:

function out_of_china(lng, lat) {

var lat = +lat;

var lng = +lng;

// 纬度3.86到53.55,经度73.66~135.05

return !(lng > 73.66 && lng < 135.05 && lat > 3.86 && lat < 53.55);

}

第二步则使用代码进行转换:

var x_PI = 3.14159265358979324 * 3000.0 / 180.0;

var PI = 3.1415926535897932384626;

var a = 6378245.0;

var ee = 0.00669342162296594323;

function wgs84tobd09(lng, lat) {

if(out_of_china(lng, lat)){

return [lng, lat]

}else{

var lat = +lat;

var lng = +lng;

var z = Math.sqrt(lng * lng + lat * lat) + 0.00002 * Math.sin(lat * x_PI);

var theta = Math.atan2(lat, lng) + 0.000003 * Math.cos(lng * x_PI);

var bd_lng = z * Math.cos(theta) + 0.0065;

var bd_lat = z * Math.sin(theta) + 0.006;

return [bd_lng, bd_lat]

}

}

本文章只对谷歌坐标转为百度地图坐标。因为我数据库存的是谷歌地图的坐标系。如果你数据库存的是百度地图坐标的话,则需要自己参考一下网上资料。反正理解了都不难。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。