Heim  >  Artikel  >  Backend-Entwicklung  >  C# Berechnen Sie die Abstandsfunktion zwischen zwei Punkten mit bekanntem Längen- und Breitengrad

C# Berechnen Sie die Abstandsfunktion zwischen zwei Punkten mit bekanntem Längen- und Breitengrad

黄舟
黄舟Original
2017-02-28 11:12:342378Durchsuche


C# Berechnen Sie die Abstandsfunktion zwischen zwei Punkten mit bekanntem Längen- und Breitengrad.

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));
        }

Das Obige ist der Inhalt von C#. Berechnen Sie die Abstandsfunktion zwischen zwei Punkten mit bekanntem Längen- und Breitengrad Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn