PHP:向lat / lng对添加里程以获得新对

时间:2016-01-07 15:25:16

标签: php geolocation gis geospatial geo

向纬度/逻辑对添加距离(100英里)以及获取新的纬度/经度对的方向(北方等)的最简单方法是什么?

编辑添加:我一直在查看此页面上的示例,但似乎无法使用PHP工作:http://www.movable-type.co.uk/scripts/latlong.html

1 个答案:

答案 0 :(得分:0)

这是我的工作代码,在此示例中需要$ lat / $ lng并增加75英里EAST。

        $distance = 75;
        $bearing = deg2rad(90);
        $lat1 = deg2rad($lat);
        $lng1 = deg2rad($lng);
        echo $lat1 . ', ' . $lng1;
        echo '<br>';
        $lat2 = asin(sin($lat1)*cos($distance/ 3959) + cos($lat1)*sin($distance/ 3959)*cos($bearing));
        $lng2 = $lng1 + atan2(sin($bearing)*sin($distance/3959)*cos($lat1), cos($distance/3959)-sin($lat1)*sin($lat2));
        echo rad2deg($lat2) . ', ' . rad2deg($lng2);