Approximate distances between two points or across the horizontal and vertical centerlines of a bounding box.
Arguments
- x
object that can be coerced to a bounding box with
bb, or a pair of coordintes (vector of two). In the former case, the distance across the horizontal and vertical centerlines of the bounding box are approximated. In the latter case,yis also required; the distance between pointsxandyis approximated.- y
a pair of coordintes, vector of two. Only required when
xis also a pair of coordintes.- projection
projection code, needed in case
xis a bounding box or whenxandyare pairs of coordinates.- target
target unit, one of:
"m","km","mi", and"ft".
Value
If y is specifyed, a list of two: unit and dist. Else, a list of three: unit, hdist (horizontal distance) and vdist (vertical distance).
Examples
if (FALSE) { # \dontrun{
if (require(tmap)) {
data(NLD_prov)
# North-South and East-West distances of the Netherlands
approx_distances(NLD_prov)
# Distance between Maastricht and Groningen
p_maastricht <- geocode_OSM("Maastricht")$coords
p_groningen <- geocode_OSM("Groningen")$coords
approx_distances(p_maastricht, p_groningen, projection = 4326, target = "km")
# Check distances in several projections
sapply(c(3035, 28992, 4326), function(projection) {
p_maastricht <- geocode_OSM("Maastricht", projection = projection)$coords
p_groningen <- geocode_OSM("Groningen", projection = projection)$coords
approx_distances(p_maastricht, p_groningen, projection = projection)
})
}
} # }