R: Distance Map on Linear Network

distfun.lpp {spatstat} | R Documentation

## Distance Map on Linear Network

### Description

Compute the distance function of a point pattern on a linear network.

### Usage

      ## S3 method for class 'lpp'
    distfun(X, ..., k=1)

### Arguments

`X` | A point pattern on a linear network (object of class `"lpp"`).
`k` | An integer. The distance to the `k`th nearest point will be computed.
`...` | Extra arguments are ignored.

### Details

On a linear network L, the “geodesic distance function” of a set of points A in L is the mathematical function f such that, for any location s on L, the function value `f(s)` is the shortest-path distance from s to A.

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`.

### Value

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.

### Author(s)

Adrian Baddeley Adrian.Baddeley@curtin.edu.au, Rolf Turner r.turner@auckland.ac.nz and Ege Rubak rubak@math.aau.dk.

### See Also

`linfun`, `methods.linfun`.

To identify which point is the nearest neighbour, see `nnfun.lpp`.

### Examples

       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)

[Package spatstat version 1.54-0 Index]