首頁 > 後端開發 > C++ > C#中如何精確計算兩個經緯度座標之間的距離?

C#中如何精確計算兩個經緯度座標之間的距離?

Barbara Streisand
發布: 2025-01-03 02:49:38
原創
190 人瀏覽過

How Can I Accurately Calculate the Distance Between Two Latitude and Longitude Coordinates in C#?

使用GeoCooperative 類別計算緯度和經度之間的距離

在確定兩個地理座標之間的距離時,計算的準確性至關重要。在給定場景中,使用自訂公式獲得的距離值與其他應用程式提供的距離值之間的差異可能歸因於計算方法中的潛在錯誤。

C# 中提供的程式碼似乎使用了常用的基於球面幾何的距離計算公式。但是,它缺乏專為地理計算而設計的庫中提供的專門距離計算演算法的精度。

為了獲得準確且一致的結果,建議使用 .NET Framework 4 或更高版本中的 GeoCooperative 類別。此類別提供了一個內建的 GetDistanceTo 方法,能夠精確計算兩個地理座標物件之間的距離。

var sCoord = new GeoCoordinate(sLatitude, sLongitude);
var eCoord = new GeoCoordinate(eLatitude, eLongitude);

return sCoord.GetDistanceTo(eCoord);
登入後複製

此方法提供以公尺為單位的距離,如果需要,可以輕鬆將其轉換為英里。若要存取 GeoCoordinate 類,請確保在專案中引用 System.Device 命名空間。透過使用 GetDistanceTo 方法,您可以提高距離計算的準確性和可靠性。

以上是C#中如何精確計算兩個經緯度座標之間的距離?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板