| networkdistance {secrlinear} | R Documentation |
Network Distances
Description
Simple network computation of distance between points along linear landscape features (e.g. rivers).
Usage
networkdistance(xy1, xy2, geometry)
Arguments
xy1 |
2-column matrix or dataframe |
xy2 |
2-column matrix or dataframe |
geometry |
‘linearmask’ object |
Details
networkdistance computes the distance in metres between the
points in xy1 and the points in xy2. The geometry
is a linearmask; if it is missing then it takes the value of xy2,
which then of course must be a full linearmask. A network is taken from
the ‘graph’ attribute of geometry or (if necessary) constructed
from the linearmask ‘on the fly’, joining any points closer than
(spacingfactor x spacing(geometry)). Points in xy1
and xy2 are first snapped to the nearest point in
geometry. The computed distance is the sum of the graph's edge
weights along the shortest path joining two points.
The commonest use of networkdistance is to calculate distances
between detectors (traps) and points on a linear mask. In this case it
is sufficient to provide two arguments only, as xy2 serves as
both destination and geometry.
networkdistance meets the requirements for a user-defined
distance function (userdist) in secr. No parameter is estimated.
Use showpath to check network distances interactively.
Value
networkdistance –
given k detectors and m mask
points, a k x m matrix of distances.
If called with no arguments networkdistance returns a
zero-length character vector.
See Also
read.linearmask, showpath,
asgraph
Examples
x <- seq(0, 4*pi, length = 200)
xy <- data.frame(x = x*100, y = sin(x)*300)
mask <- read.linearmask(data = xy, spacing = 20)
trps <- make.line(mask, n = 15, startbuffer = 1000, by = 30)
## networkdistance; geometry in 'mask'
d <- networkdistance (trps, mask, mask)
dim(d)
head(d)