使用緯度和經度計算兩點之間的距離
在您提供的程式碼中,您實作了一個公式來計算兩點之間的距離他們的緯度和經度。然而,它傳回的結果與預期值 278.546 不同。
出現這種差異是因為您的實現所基於的半正弦公式假設地球是一個完美的球體。事實上,地球是一個略扁的橢球體。為了進行更精確的計算,考慮地球的曲率和偏心率至關重要。
要準確測量橢球地球上兩點之間的距離,建議使用文森蒂距離公式。 GeoPy 在其距離模組中提供了此公式的實作。
<code class="python">import geopy.distance coords_1 = (52.2296756, 21.0122287) coords_2 = (52.406374, 16.9251681) distance = geopy.distance.geodesic(coords_1, coords_2).km print(distance) # Output: 279.352901604 kilometers</code>
透過使用 Vincenty 距離公式,您可以獲得兩點之間距離的更準確表示。這種精度的提高對於需要基於位置的精確計算的應用程式來說尤其重要。
以上是為什麼半正矢公式計算兩點之間的距離不準確?的詳細內容。更多資訊請關注PHP中文網其他相關文章!