Distância entre dois pontos / coordenadas

Latitude e Longitude na fórmula deve ser radianos, ejemplo: Lat1 = Lat * PI1 / 180
6378.137 é o diâmetro da terra em quilômetros (WGS84 datum). Use: 3963.191 de milhas.
PI = 3.14159265358979323846
Lat1 = Lat1 * PI / 180
Lon1 = Lon1 * PI / 180
Lat2 = Lat2 * PI / 180
Lon2 = Lon2 * PI / 180
D = 6378.137 * ACos( Cos( Lat1 ) * Cos( Lat2 ) * Cos( Lon2 - Lon1 ) + Sin( Lat1 ) * Sin( Lat2 ) )
Se a sua linguagem de programação ou aplicativo não tem função Acos, talvez tenha Atn, use a seguinte fórmula em vez de calcular via função matemática ArcTan.
Latitude e Longitude são fornecidos em formato decimal, não precisam ser convertidos para radianos.
D = 6378.137 * Atn( Sqr( ( 1 - ( Sin( Lat1 / 57.29577951 ) * Sin( Lat2 / 57.29577951 ) + Cos( Lat1 / 57.29577951 ) * Cos( Lat2 / 57.29577951 ) * Cos( Lon2 / 57.29577951 - Lon1 / 57.29577951 ) ) ^2 ) ) / (Sin ( Lat1 / 57.29577951 ) * Sin( Lat2 / 57.29577951 ) + Cos( Lat1 / 57.29577951 ) * Cos( Lat2 / 57.29577951 ) * Cos( Lon2 / 57.29577951 - Lon1 / 57.29577951 ) ) )
Code samples:
Java
ASP
C+
C#
Perl
PHP
Complementos
Divisões administrativas
Países
Nomes de países
Moedas
Idiomas
Formato códigos postais
Fusos horários
Fórmulas, exemplos
Distância entre pontos
Lugares próximos
Ponto geográfico de um Poligono de Código Postal