php求出当前坐标 3公里内4个角落的最大最小经纬度
2015-07-06 14:59
696 查看
$lng 、$lat 经纬度//
$half = 6371;
$distance = 3; //3公里
$dlng = 2 * asin(sin($distance / (2 * $half)) / cos(deg2rad($lat)));
$dlng = rad2deg($dlng);
$dlat = $distance / $half;
$dlat = rad2deg($dlat);
$fourpoint = 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)
);
$half = 6371;
$distance = 3; //3公里
$dlng = 2 * asin(sin($distance / (2 * $half)) / cos(deg2rad($lat)));
$dlng = rad2deg($dlng);
$dlat = $distance / $half;
$dlat = rad2deg($dlat);
$fourpoint = 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)
);
相关文章推荐
- yii CArrayDataProvider 和 CActiveDataProvider区别
- zend studio 做前端推荐安装的插件
- [PHP]Mysql的运用
- Thinkphp+easyui 简单分页
- workerman,一个高性能的PHP Socket 异步框架
- [PHP]对象数组和普通数组总结
- 学习 慕课网【 PHP工程师计划】
- 学习 慕课网 PHP工程师学习计划--我的笔记汇总
- mysql读写分离(PHP类)
- php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
- php实现搜索一维数组元素并删除二维数组对应元素的方法
- InputStream与OutputStream的区分
- php ldap验证
- PHP 从数据库中取出数据并存为Json数据
- 安卓手机与电脑无线传输文件(利用ftp服务)
- yii中常用路径
- php导出中文内容excel文件类实例
- SCTP协议的进一步理解
- 两个可用的ntp服务器地址
- php数据库部分(使用tp框架可以适当忽略)