PHP根据自己的经纬度计算5公里范围内的全部经纬度
/**
*计算某个经纬度的周围某段距离的正方形的四个点
*@param lng float 经度
*@param lat float 纬度
*@param distance float 该点所在圆的半径,该圆与此正方形内切,默认值为0.5千米
*@return array 正方形的四个点的经纬度坐标
*/
private function returnSquarePoint($lng, $lat,$distance = 5)
{
$earthdata=6371;//地球半径,平均半径为6371km
$dlng = 2 * asin(sin($distance / (2 * $earthdata)) / cos(deg2rad($lat)));
$dlng = rad2deg($dlng);
$dlat = $distance/$earthdata;
$dlat = rad2deg($dlat);
$arr=array(
'left_top'=>array('lat'=>$lat + $dlat,'lng'=>$lng-$dlng),
'right_top'=>array('lat'=>$lat + $dlat, 'lng'=>$lng + $dlng),
'left_bottom'
PHP根据自己的经纬度计算5公里范围内的全部经纬度
最新推荐文章于 2025-03-07 12:28:25 发布