Получение расстояния между двумя точками на основе широты/долготыPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Получение расстояния между двумя точками на основе широты/долготы

Сообщение Anonymous »

Я попытался внедрить формулу в поиске расстояний на основе широты и долготы . Крапаклет хорошо подходит для двух точек, которые я тестирую:

Но мой код не работает.
.

Код: Выделить всё

from math import sin, cos, sqrt, atan2

R = 6373.0

lat1 = 52.2296756
lon1 = 21.0122287
lat2 = 52.406374
lon2 = 16.9251681

dlon = lon2 - lon1
dlat = lat2 - lat1
a = (sin(dlat/2))**2 + cos(lat1) * cos(lat2) * (sin(dlon/2))**2
c = 2 * atan2(sqrt(a), sqrt(1-a))
distance = R * c

print "Result", distance
print "Should be", 278.546
возвращает расстояние 5447.05546147 . Почему?

Подробнее здесь: https://stackoverflow.com/questions/194 ... -longitude
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»