1. 程式人生 > >百度地圖API 拾取座標

百度地圖API 拾取座標

座標拾取(百度)

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