ホームページ  >  記事  >  バックエンド開発  >  C# 既知の経度と緯度を持つ 2 点間の距離関数を計算します。

C# 既知の経度と緯度を持つ 2 点間の距離関数を計算します。

黄舟
黄舟オリジナル
2017-02-28 11:12:342346ブラウズ


C# 経度と緯度が既知の 2 点間の距離関数を計算する

public Task<double> GetDistance(double lat1, double lon1, double lat2, double lon2)
        {
            int R = 6371;


            double rLat1 = ToRadian(lat1);
            double rLat2 = ToRadian(lat2);


            double dLat = rLat2 - rLat1;
            double dLon = ToRadian(lon2 - lon1);


            double a = Math.Pow(Math.Sin(dLat / 2), 2) +
                Math.Pow(Math.Sin(dLon / 2), 2) *
                Math.Cos(rLat1) * Math.Cos(rLat2);


            double b = 2 * Math.Atan2(Math.Sqrt(a), Math.Sqrt(1 - a));


            return Task.FromResult((R * b));
        }

上記は C# 経度と緯度が既知の 2 点間の距離関数を計算するの内容です。関連する内容については、PHP に注目してください。中国語のウェブサイト (www.php.cn)!


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。