Compute the distance function of a point pattern on a linear network.
# S3 method for lpp
distfun(X, ..., k=1)
A point pattern on a linear network
(object of class "lpp"
).
An integer. The distance to the k
th nearest point
will be computed.
Extra arguments are ignored.
A function
with arguments x,y
and optional
arguments seg,tp
.
It also belongs to the class "linfun"
which has methods
for plot
, print
etc.
On a linear network f(s)
is the shortest-path distance from
The command distfun.lpp
is a method for the generic command
distfun
for the class "lpp"
of point patterns on a linear network.
If X
is a point pattern on a linear network,
f <- distfun(X)
returns a function
in the R language that represents the
distance function of X
. Evaluating the function f
in the form v <- f(x,y)
, where x
and y
are any numeric vectors of equal length containing coordinates of
spatial locations, yields the values of the distance function at these
locations. More efficiently f
can be called in the form
v <- f(x, y, seg, tp)
where seg
and tp
are the local
coordinates on the network. It can also be called as
v <- f(x)
where x
is a point pattern on the same linear
network.
The function f
obtained from f <- distfun(X)
also belongs to the class "linfun"
.
It can be printed and plotted immediately as shown in the Examples.
It can be
converted to a pixel image using as.linim
.
To identify which point is the nearest neighbour, see
nnfun.lpp
.
# NOT RUN {
data(letterR)
X <- runiflpp(3, simplenet)
f <- distfun(X)
f
plot(f)
# using a distfun as a covariate in a point process model:
Y <- runiflpp(4, simplenet)
fit <- lppm(Y ~D, covariates=list(D=f))
f(Y)
# }
Run the code above in your browser using DataLab