R/table_getNearestDistance.R
table_getNearestDistance.Rd
Returns distances between target locations and the closest
location found in locationTbl
(if any). Target locations are specified
with longitude
and latitude
.
For each target location, only a single distance to the closest known location
is returned. If no known location is found within
distanceThreshold
, the distance associated with that target location
will be NA
. The length and order of resulting distances will match the
order of the incoming target locations.
table_getNearestDistance(
locationTbl = NULL,
longitude = NULL,
latitude = NULL,
distanceThreshold = NULL,
measure = c("geodesic", "haversine", "vincenty", "cheap")
)
Tibble of known locations.
Vector of target longitudes in decimal degrees E.
Vector of target latitudes in decimal degrees N.
Distance in meters.
One of "geodesic", "haversine", "vincenty" or "cheap" specifying desired method of geodesic distance calculation.
Vector of closest distances between target locations and known locations.
The measure "cheap"
may be used to speed things up depending on
the spatial scale being considered. Distances calculated with
measure = "cheap"
will vary by a few meters compared with those
calculated using measure = "geodesic"
.
See geodist
for details.
You may have a set of locations of interest for which you want to assess whether
any monitoring locations are nearby. In this case, the locations of interest
will provide longitude
and latitude
while locationTbl
will be the known location table associated with the monitoring locations.
The resulting vector of distances will tell you the distance, for each target location, to the nearst monitoring location.
library(MazamaLocationUtils)
locationTbl <- get(data("wa_monitors_500"))
# Wenatchee
lon <- -120.325278
lat <- 47.423333
# Too small a distanceThreshold will not find a match
table_getNearestDistance(locationTbl, lon, lat, distanceThreshold = 50)
#> [1] NA
# Expanding the distanceThreshold will find one
table_getNearestDistance(locationTbl, lon, lat, distanceThreshold = 5000)
#> [1] 1495.593