隨筆-348  評論-598  文章-0  trackbacks-0
          用于GPS換算世界上任意兩點間距離
                  /// <summary>
                  
          /// 計算地球上任意兩點距離
                  
          /// </summary>
                  
          /// <param name="long1"></param>
                  
          /// <param name="lat1"></param>
                  
          /// <param name="long2"></param>
                  
          /// <param name="lat2"></param>
                  
          /// <returns>返回長度單位是米</returns>
                  private static double Distance(double long1, double lat1, double long2, double lat2)
                  {
                      
          double a, b, R;
                      R 
          = 6378137//地球半徑
                      lat1 = lat1 * Math.PI / 180.0;
                      lat2 
          = lat2 * Math.PI / 180.0;
                      a 
          = lat1 - lat2;
                      b 
          = (long1 - long2) * Math.PI / 180.0;
                      
          double d;
                      
          double sa2, sb2;
                      sa2 
          = Math.Sin(a / 2.0);
                      sb2 
          = Math.Sin(b / 2.0);
                      d 
          = 2 * R * Math.Asin(Math.Sqrt(sa2 * sa2 + Math.Cos(lat1) * Math.Cos(lat2) * sb2 * sb2));
                      
          return d;
                  }


          ---------------------------------------------------------
          專注移動開發

          Android, Windows Mobile, iPhone, J2ME, BlackBerry, Symbian
          posted on 2010-05-01 14:16 TiGERTiAN 閱讀(3047) 評論(1)  編輯  收藏 所屬分類: DotNet

          評論:
          # re: 用于GPS換算世界上任意兩點間距離C#實現 2013-01-04 13:48 | wangjunwei
          試了下 不靠譜啊!  回復  更多評論
            
          主站蜘蛛池模板: 石阡县| 大理市| 碌曲县| 凭祥市| 灌南县| 武隆县| 永泰县| 武强县| 阳谷县| 普陀区| 琼海市| 兴业县| 措美县| 玉林市| 隆林| 改则县| 沙湾县| 合作市| 中阳县| 丰原市| 凤山县| 祁东县| 友谊县| 精河县| 江口县| 龙岩市| 山东| 昌乐县| 札达县| 交口县| 咸丰县| 长治县| 乃东县| 门头沟区| 大邑县| 灵武市| 高阳县| 嘉定区| 淳安县| 浦城县| 丽水市|