Android / Java – Como calcular distância entre dois pontos GPS

Android-Apps-GPS-Location-Tmobile-G1

Segue o método responsável pelo calculo, basta passar as duas coordenadas, latitude e longitude origem e destino. O retorno será em metros.

private double calculaDistancia(double lat1, double lng1, double lat2, double lng2) {
	//double earthRadius = 3958.75;//miles
	double earthRadius = 6371;//kilometers
	double dLat = Math.toRadians(lat2 - lat1);
	double dLng = Math.toRadians(lng2 - lng1);
	double sindLat = Math.sin(dLat / 2);
	double sindLng = Math.sin(dLng / 2);
	double a = Math.pow(sindLat, 2) + Math.pow(sindLng, 2)
			* Math.cos(Math.toRadians(lat1))
			* Math.cos(Math.toRadians(lat2));
	double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
	double dist = earthRadius * c;

	return dist * 1000; //em metros
}

Help DEV – Analista desenvolvedor Java / Android

http://helpdev.com.br/zarelli

5 thoughts on “Android / Java – Como calcular distância entre dois pontos GPS

Deixe uma resposta

O seu endereço de email não será publicado Campos obrigatórios são marcados *

Você pode usar estas tags e atributos de HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>