zoukankan      html  css  js  c++  java
  • 计算两点经纬度之间的距离

          /// <summary>
          /// distance (in km) between two points specified by latitude/longitude
          /// The Haversine formula, http://www.movable-type.co.uk/scripts/latlong.html
          /// </summary>
          /// <param name="p1"></param>
          /// <param name="p2"></param>
          /// <returns></returns>
          public double GetDistance(PointLatLng p1, PointLatLng p2)
          {
             double dLat1InRad = p1.Lat * (Math.PI / 180);
             double dLong1InRad = p1.Lng * (Math.PI / 180);
             double dLat2InRad = p2.Lat * (Math.PI / 180);
             double dLong2InRad = p2.Lng * (Math.PI / 180);
             double dLongitude = dLong2InRad - dLong1InRad;
             double dLatitude = dLat2InRad - dLat1InRad;
             double a = Math.Pow(Math.Sin(dLatitude / 2), 2) + Math.Cos(dLat1InRad) * Math.Cos(dLat2InRad) * Math.Pow(Math.Sin(dLongitude / 2), 2);
             double c = 2 * Math.Atan2(Math.Sqrt(a), Math.Sqrt(1 - a));
             double dDistance = (Axis / 1000.0) * c;
             return dDistance;
          }

    http://www.movable-type.co.uk/scripts/latlong.html 有详细的说明
  • 相关阅读:
    检测是否安装了新包
    redux和mobx的比较
    ssh登录远程服务器
    法律
    如何解决二方包彼此依赖?
    创业
    【转】裸辞4个月,面试30家公司。
    添加群机器人
    RESTful状态码说明
    MongoDB简单介绍以及基本命令
  • 原文地址:https://www.cnblogs.com/cglNet/p/3141734.html
Copyright © 2011-2022 走看看