php 计算坐标点方圆周围多少米的坐标算法

Posted 小白兔晒黑了

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 计算坐标点方圆周围多少米的坐标算法相关的知识,希望对你有一定的参考价值。

//地球半径 6371千米
    const EARTH_ROUNT = 6371;

    /**
     * @param  $distance 方圆多少千米 默认500米
     */
    private function _getAround($lng,$lat,$distance=0.5)
    {
        $dlng = 2 * asin(sin($distance / (2*self::EARTH_ROUNT) ) / cos(deg2rad($lat)) );
        $dlng = rad2deg($dlng);
        $dlat = $distance/self::EARTH_ROUNT;
        $dlat = rad2deg($dlat);

       $around = array(
  ‘left-top‘=>array(‘lat‘=>$lat+$dlat,‘lng‘=>$lng-$dlng),
  ‘right-top‘=>array(‘lat‘=>$lat+$dlat,‘lng‘=>$lng+$dlng),
  ‘left-bottom‘=>array(‘lat‘=>$lat-$dlat,‘lng‘=>$lng-$dlng),
  ‘right-bottom‘=>array(‘lat‘=>$lat-$dlat,‘lng‘=>$lng+$dlng)
    );
var_dump($around); } public function actionCheating() { $lng = ‘121.437799‘; $lat = ‘31.243208‘; $this->_getAround($lng,$lat); }

 

根据坐标查询验证的百度地图地址

http://api.map.baidu.com/lbsapi/getpoint/index.html

 

以上是关于php 计算坐标点方圆周围多少米的坐标算法的主要内容,如果未能解决你的问题,请参考以下文章

基于笛卡尔坐标点积的算法计算地理距离

如何计算两个GPS坐标点的距离?

怎么计算2个坐标点的距离?

光线投射算法(如何计算一个坐标点是不是在一个多边形内)

根据两点的经纬度坐标计算两个坐标点之间的直线距离

请问根据GPS坐标点怎么计算面积?