以下のこの関数を使用して、緯度と経度のペアの 2 つのセット間の距離を見つけます。うまくいくようですが、2つ質問があります。マイルではなくキロメートルで値を返します (私は米国にいます)。キロメートルの値は小数点以下 3 桁ずれているように見えますか? 返される値は次のようなものです: 34366.7661043296 これは、カリフォルニア州バレンシアからカリフォルニア州バーバンクまでの距離で、約 35 キロメートルです。なぜキロメートルで、さらに重要なことに、なぜ小数の問題なのですか? 36.50マイルのようなものを返せたら素晴らしいでしょう. どんな助けでも大歓迎です、事前に感謝します。
public static double GetDistance(double sLatitude, double sLongitude, double eLatitude, double eLongitude)
{
var sCoord = new GeoCoordinate(sLatitude, sLongitude);
var eCoord = new GeoCoordinate(eLatitude, eLongitude);
return sCoord.GetDistanceTo(eCoord);
}