GPS帮助类
  ZthAPZf2KLLA 2023年11月02日 38 0
核心代码
public class GpsHelper
 {
     private const double EARTH_RADIUS = 6378137;
     /// <summary>
     /// 计算两点位置的距离,返回两点的距离,单位 米
     /// 该公式为GOOGLE提供,误差小于0.2米
     /// </summary>
     /// <param name="lat1">第一点纬度</param>
     /// <param name="lng1">第一点经度</param>
     /// <param name="lat2">第二点纬度</param>
     /// <param name="lng2">第二点经度</param>
     /// <returns></returns>
     public static double GetDistance(double lat1, double lng1, double lat2, double lng2)
     {
         double radLat1 = Rad(lat1);
         double radLng1 = Rad(lng1);
         double radLat2 = Rad(lat2);
         double radLng2 = Rad(lng2);
         double a = radLat1 - radLat2;
         double b = radLng1 - radLng2;
         double result = 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))) * EARTH_RADIUS;
         return result;
     }

     /// <summary>
     /// 经纬度转化成弧度
     /// </summary>
     /// <param name="d"></param>
     /// <returns></returns>
     private static double Rad(double d)
     {
         return (double)d * Math.PI / 180d;
     }
 }

技术的发展日新月异,随着时间推移,无法保证本博客所有内容的正确性。如有误导,请大家见谅,欢迎评论区指正!

开源库地址,欢迎Star点亮:

GitHub:https://github.com/ITMingliang

Gitee:   https://gitee.com/mingliang_it

GitLab: https://gitlab.com/ITMingliang


建群声明: 本着技术在于分享,方便大家交流学习的初心,特此建立【编程内功修炼交流群】,为大家答疑解惑。热烈欢迎各位爱交流学习的程序员进群,也希望进群的大佬能不吝分享自己遇到的技术问题和学习心得!进群方式:扫码关注公众号,后台回复【进群】。

GPS帮助类_git

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  1BnnW8rtw7M9   2023年12月22日   120   0   0 算法i++i++mathMath算法
ZthAPZf2KLLA