Skip to content

Instantly share code, notes, and snippets.

@sjpuas
Created December 7, 2012 15:41
Show Gist options
  • Save sjpuas/4234041 to your computer and use it in GitHub Desktop.
Save sjpuas/4234041 to your computer and use it in GitHub Desktop.
Calculate Diameter for 2 points(lon, lat )
private static final Double EARTH_RADIUS = 6371D; // KM
public static Double getDiametro(Double latFirst, Double lonFirst, Double latMiddle, Double lonMiddle) {
Double dLat = Math.toRadians(latMiddle - latFirst);
Double dLon = Math.toRadians(lonMiddle - lonFirst);
Double lat1 = Math.toRadians(latFirst);
Double lat2 = Math.toRadians(latMiddle);
Double a = Math.sin(dLat / 2) * Math.sin(dLat / 2) +
Math.sin(dLon / 2) * Math.sin(dLon / 2) * Math.cos(lat1) * Math.cos(lat2);
Double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
return EARTH_RADIUS * c;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment