/**
* 坐标计算
* date :Nove 11,2011--- 光棍节
* author:snuser
*/
/**
示例:
$lat = 0.1;
$lng = 116.085239;
$lat2 = 0.2;
$lng2 = 116.085239;
$data = Coordinate::getDisCoord($lng, $lat, 1000);
$distance = Coordinate::getDistance($lng, $lat, $lng2, $lat2);
*/
class Coordinate{
/**
* 地球半径 单位(m)
* 常量
*/
const EARTH_RADIUS = 6378137.0;
/**
* 得到某坐标发散后的距离的坐标
* @lng 经度 floor (11,7)
* @lat 纬度 floor (11,7)
* @distance 单位(m)
* return array
*/
static function getDisCoord($lng,$lat,$distance){
//纬度偏移
$dlat = 2*asin(sin($distance/(2*self::EARTH_RADIUS))/cos($lat));
$dlat = rad2deg(abs($dlat));
//经度偏移
$dlng = $distance/self::EARTH_RADIUS ;
$dlng = rad2deg( abs( $dlng ) );
return array(
'lat1'=>sprintf('%.7f', ($lat+$dlat)),
'lat2'=>sprintf('%.7f', ($lat-$dlat)),
'lng1'=>sprintf('%.7f', ($lng+$dlng)),
'lng2'=>sprintf('%.7f', ($lng-$dlng)),
);
}
/**
* 计算两点之间的球面距离
* return floot
*/
static function getDistance($lng0, $lat0, $lng1, $lat1){
$x = ($lng1-$lng0)*M_PI*self::EARTH_RADIUS*cos(($lat0+$lat1)/2*M_PI/180)/180;
$y = ($lat1-$lat0)*M_PI*self::EARTH_RADIUS/180;
$distance = self::hav($x, $y);
return $distance;
}
/**
* 开平方
* 根号下(x2+y2)
* @param unknown_type $x
* @param unknown_type $y
* @return unknown
*/
static function hav($x, $y){
return sqrt($x*$x+$y*$y);
}
}
分享到:
相关推荐
已知一个点的坐标和两点之间距离求另外一点坐标
天地图拾取坐标map.html
综上所述,实现“vue实现在图片中画矩形框,并得到对角坐标,设置map中area的样式”的功能,需要结合JavaScript的Canvas绘图、HTML5的Image Map以及Vue的数据绑定和事件处理机制。通过这些技术,可以为用户提供一个...
根据给定的信息,本文主要涉及的是如何通过编程方式实现基于已知一点的经纬度坐标来求解其他点的经纬度坐标。此问题涉及到地理信息系统的坐标转换原理和技术,特别是坐标系之间的转换。以下是对该问题及其解决方案的...
在Python中,我们可以使用numpy的`dot`函数来执行矩阵乘法,得到旋转后的坐标。 在描述中提到的"通过txt中记录的斜矩形框四个点的坐标求出新坐标",这意味着我们需要从文本文件中读取这四个点的坐标,然后进行旋转...
总之,这个压缩包提供的数据和ECharts结合,可以让你轻松构建出具有世界范围的城市分布图,这对于地理信息展示、数据分析或者教育应用都非常有用。在使用过程中,记得根据实际情况调整和优化配置,以达到最佳的可视...
在开发绘图软件时,坐标轴的范围和刻度设定是一项关键任务,它直接影响到图形的清晰度和用户的阅读体验。本压缩包提供了一系列的坐标轴范围刻度确定算法,这些算法旨在帮助开发者自适应地计算和设置合适的坐标范围及...
在给定的代码中,我们可以看到三个方法,分别用于将地理坐标转换为屏幕坐标,地图坐标(一种特殊类型的地理坐标)转换为页面布局坐标,以及页面布局坐标转换回地图坐标。这些方法在ArcGIS ADF(ArcGIS Desktop ...
标题“输入地址获取map坐标”涉及的是地理信息系统(GIS)中的一个重要概念,即通过特定的算法或工具将地理位置的地址转换为地图上的精确坐标。在本文中,我们主要探讨如何实现这一过程,以及可能涉及的技术和工具。...
一个点在A坐标系下的坐标和在B坐标系下的坐标已知,求A坐标系下的另外一点在B坐标系下的坐标 输入:1.已知点在A坐标系下的坐标 2.已指点在B坐标系下的坐标 3.未知点在A坐标系下的坐标 输出:未知点在B坐标系下的...
JS调用Google地图 js获得Google地图坐标 左键单机获得google地图坐标以及中心坐标 缩放度
接下来,我们将详细说明如何导出地图下载范围坐标,以及如何导入已导出的地图坐标和通过其他途径获得的地图坐标。 1. 导出地图下载范围坐标 导出坐标的步骤十分直接。首先,用户需要将鼠标选为“选择”模式,而非...
Teechart控件设置坐标轴范围.zip Teechart控件设置坐标轴范围.zip Teechart控件设置坐标轴范围.zip Teechart控件设置坐标轴范围.zip Teechart控件设置坐标轴范围.zip
而“坐标”和“爬虫”标签则暗示了这些数据可能是通过网络爬虫技术从公开的地理信息网站或者API中抓取并整理得到的。Python作为标签出现,意味着数据的处理和分析可能采用了Python编程语言,因为Python在数据处理和...
C#判断指定的坐标点(经纬度)是否在指定的区域内!地图坐标点判断(经纬度判断)
总的来说,`echarts地图广东地区坐标数据echarts+mapJson.zip`这个资源是用于在ECharts中绘制广东地区地图的基础,通过结合ECharts的API,我们可以实现地图的加载、数据的绑定和丰富的交互功能,从而在Web应用中高效...
标题提到的"echarts地图全国各个地区坐标数据echarts+mapJson.zip"是ECharts在绘制地图时所需的重要资源,这些数据通常包含了中国所有省份、城市、地区的经纬度坐标信息,使得ECharts能够精确地绘制出地图并进行数据...
使用GIS Arc Map将世界地图改成太平洋中心的坐标系设置 GIS(Geographic Information System,地理信息系统)是处理、分析和显示地理空间数据的计算机系统。在 GIS 中,坐标系是描述地球表面的参考系,而 Arc Map ...
在MATLAB中,坐标轴范围的设定是一项基本且重要的任务,尤其对于数据可视化而言。它允许我们精确控制图形中显示的数据部分,使我们能够更好地理解并解析数据的特征。本教程将详细介绍如何在MATLAB中设定坐标轴的范围...
* 谷歌地图采用的是WGS84地理坐标系(中国范围除外); * GCJ02坐标系:即火星坐标系,是由中国国家测绘局制订的地理信息系统的坐标系统。由WGS84坐标系经加密后的坐标系。 * 谷歌中国地图和搜搜中国地图采用的...