Script para cálculo de distâncias na superfície terrestre utilizando coordenadas geográficas
Publicado por ssssssssss 17/01/2008
[ Hits: 16.382 ]
Esse script foi feito para calcular a distância entre dois pontos na superfície do globo terrestre.
Para utilizá-lo, passe como parâmetros a latitude e longitude do local de origem e destino, e será retornado a distância em quilômetors entre estes dois pontos.
A latitude e longitude devem ser passadas convertidas para segundos. Para fazer isso, basta seguir o comentário descrito no código.
Espero que ajude alguém.
/*Os valores da latitude e longitude tem de ser passados já convertidos para segundos.
para fazer isso basta fazer, por exemplo, para converter 23:50:01 em segundos: 23*60*60 + 50*60 + 01 = 85801 segundos.
*/
public double distancia (int latitudeOrigem, int longitudeOrigem, int latitudeDestino, int longitudeDestino){
double circTerra=40030; // Circunferência da Terra (em kilômetros)
double latitudeO = (double) latitudeOrigem / 3600;
double longitudeO = (double) longitudeOrigem / 3600;
double latitudeD = (double) latitudeDestino / 3600;
double longitudeD = (double) longitudeDestino / 3600;
double a = longitudeO - longitudeD;
double c = 90.0 - latitudeO;
double b = 90.0 - latitudeD;
double aCosA = (Math.acos(Math.cos(radiano(b)) * Math.cos(radiano(c)) + Math.sin(radiano(b)) * Math.sin(radiano(c)) * Math.cos(radiano(a))) * 180 / Math.PI);
return(aCosA * circTerra / 360);
}
Simples applet para determinar invertido do digitado
Calcular ritmo de corrida de rua
Código para validar CPF e CNPJ otimizado
Planilha de cálculo para multa judicial
Nenhum comentário foi encontrado.
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Discos que não instalam o sistema por erro MBR/GPT no Linux
Hospedagem de Mangás com Kavita e Docker para Acesso Remoto via Tailscale
Aplicar tema e ícones do Ubuntu Cinnamon no Arch Linux sem AUR
Instalação do driver Epson L3150 [RESOLVIDO] (5)
Continuando meus tópicos anteriores (7)









