| distance {swfscMisc} | R Documentation |
Calculates the distance between two coordinates using the Law of Cosines, Haversine, or Vincenty methods.
distance(lat1, lon1, lat2, lon2, radius = convert.distance(6371, "km", "nm"),
units = c("nm", "km", "mi"), ellipsoid = datum(), iter.limit = 20,
method = c("lawofcosines", "haversine", "vincenty"))
lat1, lon1, lat2, lon2 |
The latitude and longitude of the first and second points in decimal degrees. |
radius |
radius of sphere. |
units |
units of distance. Can be "km" (kilometers), "nm" (nautical miles), or "mi" (statute miles), or any partial match thereof (case sensitive). |
ellipsoid |
ellipsoid model parameters as returned from a
call to |
iter.limit |
An integer value defining the limit of iterations for Vincenty method. |
method |
Character defining the distance method to use. Can be "lawofcosines", "haversine", "vincenty", or any partial match thereof (case sensitive). |
Eric Archer eric.archer@noaa.gov
Code adapted from JavaScript by Chris Veness
http://www.movable-type.co.uk/scripts/latlong.html
Vincenty, T. 1975. Direct and inverse solutions of geodesics on the
ellipsoid with application of nested equations. Survey Review 22(176):88-93
http://www.ngs.noaa.gov/PUBS_LIB/inverse.pdf.
# What is the distance from San Diego, CA to Honolulu, HI? distance(32.87, -117.25, 21.35, -157.98, method = "lawofcosines") distance(32.87, -117.25, 21.35, -157.98, method = "haversine") distance(32.87, -117.25, 21.35, -157.98, method = "vincenty")