作者:兜妈是我 | 来源:互联网 | 2023-08-08 21:19
坐标拾取(百度)http:api.map.baidu.comlbsapigetpointindex.html坐标拾取(腾讯)http:lbs.qq.comtoolg
坐标拾取(百度)
http://api.map.baidu.com/lbsapi/getpoint/index.html
坐标拾取(腾讯)
http://lbs.qq.com/tool/getpoint/
4LFBZ-2Y3WU-PF7VA-4U5JF-3HLK6-7EBJW
计算两坐标之间距离如下
function getDistance($lat_a, $lng_a, $lat_b, $lng_b) {
//R是地球半径(米)
$R = 6366000;
$pk = doubleval(180 / 3.14169);
$a1 = doubleval($lat_a / $pk);
$a2 = doubleval($lng_a / $pk);
$b1 = doubleval($lat_b / $pk);
$b2 = doubleval($lng_b / $pk);
$t1 = doubleval(cos($a1) * cos($a2) * cos($b1) * cos($b2));
$t2 = doubleval(cos($a1) * sin($a2) * cos($b1) * sin($b2));
$t3 = doubleval(sin($a1) * sin($b1));
$tt = doubleval(acos($t1 + $t2 + $t3));
return round($R * $tt);
}
JS实现
var radLat1 = rad(latitude);
var radLat2 = rad(sta_latitude);
var a = radLat1 - radLat2;
var b = rad(longitude) - rad(sta_longitude);
var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
s = s * 6378.137;
// EARTH_RADIUS;
s = Math.round(s * 10000) / 10000;
微信wx.getLocation返回的坐标为GPS定位
GPS定位 转化为腾讯地图坐标
http://apis.map.qq.com/ws/coord/v1/translate?locatiOns=39.2006,117.1257&type=1&key=XXXXXXX
与目标坐标对比
http://apis.map.qq.com/ws/distance/v1/?mode=driving&from=39.201787,117.132116&to=39.200280,117.133071&key=XXXXXXX