通过两个点的经纬度计算距离
来源:互联网 发布:fifo会计算法 编辑:程序博客网 时间:2024/06/05 03:39
http://www.cnblogs.com/yilee/
从google maps的脚本里扒了段代码,通过通过两个点的经纬度计算距离,没准啥时会用上。
private const double EARTH_RADIUS = 6378.137;
private static double rad(double d)
{
return d * Math.PI / 180.0;
}
public static double GetDistance(double lat1, double lng1, double lat2,double lng2)
{
double radLat1 = rad(lat1);
double radLat2 = rad(lat2);
double a = radLat1 - radLat2;
double b = rad(lng1) - rad(lng2);
double s = 2 * Math.Asin(Math.Sqrt(Math.Pow(Math.Sin(a/2),2) +
Math.Cos(radLat1)*Math.Cos(radLat2)*Math.Pow(Math.Sin(b/2),2)));
s = s * EARTH_RADIUS;
s = Math.Round(s * 10000) / 10000;
return s;
}
private static double rad(double d)
{
return d * Math.PI / 180.0;
}
public static double GetDistance(double lat1, double lng1, double lat2,double lng2)
{
double radLat1 = rad(lat1);
double radLat2 = rad(lat2);
double a = radLat1 - radLat2;
double b = rad(lng1) - rad(lng2);
double s = 2 * Math.Asin(Math.Sqrt(Math.Pow(Math.Sin(a/2),2) +
Math.Cos(radLat1)*Math.Cos(radLat2)*Math.Pow(Math.Sin(b/2),2)));
s = s * EARTH_RADIUS;
s = Math.Round(s * 10000) / 10000;
return s;
}
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离
- asp.net(c#)通过两个点的经纬度计算距离
- 通过两个点的经纬度计算距离[转]
- Android_通过两个点的经纬度计算距离
- 通过经纬度坐标计算两个点之间的距离
- 计算两个经纬度点间的距离
- 通过经纬度计算两个之间的距离
- ExecutorService线程池
- js对象类型检查(续)
- hdu1028
- N个正整数联接成最小整数
- 辛亥百年纪念 - 产品组件系列04
- 通过两个点的经纬度计算距离
- mysql基本命令
- 屏蔽FLEX右键菜单以及实现自定义的FLEX右键功能
- 汉字编码问题(转)
- Linux Shell学习笔记2
- 解决org.apache.axis2.AxisFault: unknown 错误
- poj1458 dp Common Subsequence
- 忘记了zend studio for eclipse 怎么调试了
- JAVA单例设计模式的理解