| locate_site {rivnet} | R Documentation |
Locate site in a river
Description
Finds location of a site (with coordinates X, Y) within a river object.
Usage
locate_site(X, Y=NULL, river, euclidean = TRUE, showPlot = FALSE,
xlim = NULL, ylim = NULL)
Arguments
X |
Either a list or a numeric value. If |
Y |
Latitudinal coordinate of the site. If |
river |
|
euclidean |
Logical. Should the location of the site in the |
showPlot |
Logical. Should a close-up of the relocated site be shown? |
xlim, ylim |
Ranges of x- and y-axis limits for the plot. Only active if |
Details
This function identifies the node in the river network (at the RN and AG levels) that is closest to
an arbitrary site of coordinates X, Y. Only a single site can be processed per function call.
Desired coordinates X, Y can be found in an interactive way by clicking on the river map and using
function locator.
Nodes at the RN level thus found can be defined as new breakpoints for reaches (see aggregate_OCN
and argument breakpoints).
Value
A list with objects:
FDode |
index at the FD level of the node that is closest to ( |
distance |
The distance between |
RNode |
index at the RN level of the relocated site. |
AGode |
index at the AG level of the relocated site. |
par |
List of graphical parameters as produced by a call to |
See Also
Examples
fp <- system.file("extdata/wigger.tif", package = "rivnet")
r <- extract_river(outlet = c(637478, 237413),
DEM = fp)
r <- aggregate_river(r)
X <- 641329; Y <- 227414
out1 <- locate_site(X, Y, r, showPlot = TRUE) # as the crow flies
out2 <- locate_site(X, Y, r, showPlot = TRUE, euclidean = FALSE) # follow downstream path
# par(out2$par) # reset graphical parameters before adding new features to the current plot
# define X, Y by clicking on the map
if (interactive()) {
fp <- system.file("extdata/wigger.tif", package = "rivnet")
r <- extract_river(outlet = c(637478, 237413),
DEM = fp)
r <- aggregate_river(r)
plot(r)
point <- locator(1) # click on the map to define point
locate_site(point$X, point$Y, r)
# alternative: specify X as a list and pass river as second argument
locate_site(point, r)
}