Distância entre dois pontos geográficos (Haversine formula)

1,415 views
Skip to first unread message

leonardo

unread,
Nov 17, 2012, 9:38:06 PM11/17/12
to python...@googlegroups.com
Pessoal,

Preciso calcular a distância entre dois pontos geográficos. Encontrei estas implementações em python:

Mas isso me parece ir contra o principio DRY. Certamente, há api na web para isto, muito mais testada e comprovada.
Fucei a API do google maps, imaginando que há esta função, mas não encontrei nada: https://developers.google.com/maps/documentation/

Alguém já resolveu problema parecido utilizando alguma API ?

Abs, 

Luciano Ramalho

unread,
Nov 17, 2012, 9:42:19 PM11/17/12
to python...@googlegroups.com
2012/11/18 leonardo <leonard...@gmail.com>:
O princípio DRY se aplica somente ao *seu* código. A idéia é evitar
que, no seu código, uma determinada função ou algoritmo apareça várias
vezes.

No caso específico, não me parece que faça muito sentido invocar uma
API remota (tipo Google Maps) para fazer um cálculo que a sua
aplicação pode fazer facilmente. Em minha opinião, só vale a pena
acessar uma API remota quando ela vai te fornecer dados que de outra
forma você não teria acesso e não poderia calcular localmente.

[ ]s
Luciano



--
Luciano Ramalho / OFICINAS TURING
Twitter: @ramalhoorg

Autor e professor dos cursos:

* Objetos Pythonicos --> http://turing.com.br/oopy
* Python para quem sabe Python --> http://turing.com.br/ppqsp

Luiz Aoqui

unread,
Nov 17, 2012, 11:04:43 PM11/17/12
to python...@googlegroups.com
API eu não conheço, meu eu já usei a biblioteca geopy (http://code.google.com/p/geopy/) para isso. Aqui tem alguns exemplos de como usar: http://code.google.com/p/geopy/wiki/GettingStarted#Calculating_distances


2012/11/18 Luciano Ramalho <luc...@ramalho.org>

--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar

<*> Para visitar o site do grupo na web, acesse:
    http://groups.google.com/group/python-brasil

<*> Para sair deste grupo, envie um e-mail para:
    python-brasi...@googlegroups.com

Bruno Rocha

unread,
Nov 18, 2012, 12:26:23 AM11/18/12
to python...@googlegroups.com

Na minha experiencia vale mais a pena usar uma implementacao de Haversine direto no engine de banco de dados. Eu já usei com o MySQL e é muito mais rapido do que fazer na app.

Bruno Rocha
http://rochacbruno.com.br
mobile

Reply all
Reply to author
Forward
0 new messages