Learn R Programming

spatstat.geom (version 2.2-0)

distmap.psp: Distance Map of Line Segment Pattern

Description

Computes the distance from each pixel to the nearest line segment in the given line segment pattern.

Usage

# S3 method for psp
distmap(X, …, extras=TRUE, clip=FALSE)

Arguments

X

A line segment pattern (object of class "psp").

Arguments passed to as.mask to control pixel resolution.

extras

Logical value specifying whether to compute the additional attributes "index" and "bdry" described in Details.

clip

Logical value specifying whether the resulting pixel image should be clipped to the window of X.

Value

A pixel image (object of class "im") whose greyscale values are the values of the distance map. The return value has attributes "index" and "bdry" which are also pixel images.

Details

The ``distance map'' of a line segment pattern \(X\) is the function \(f\) whose value f(u) is defined for any two-dimensional location \(u\) as the shortest distance from \(u\) to \(X\).

This function computes the distance map of the line segment pattern X and returns the distance map as a pixel image. The greyscale value at a pixel \(u\) equals the distance from \(u\) to the nearest line segment of the pattern X. Distances are computed using analytic geometry.

The result is a pixel image. If clip=TRUE (the default), the pixel values are defined only inside the original window of X, and are NA outside this window. If clip=FALSE, the pixel values are defined at every pixel in Frame(X). Computation is faster when clip=FALSE.

Additionally, if extras=TRUE, the return value has two attributes, "index" and "bdry", which are also pixel images. The grey values in "bdry" give the distance from each pixel to the bounding rectangle of the image. The grey values in "index" are integers identifying which line segment of X is closest. Computation is faster when extras=FALSE.

This is a method for the generic function distmap.

Note that this function gives the exact distance from the centre of each pixel to the nearest line segment. To compute the exact distance from the points in a point pattern to the nearest line segment, use distfun or one of the low-level functions nncross or project2segment.

See Also

distmap, distmap.owin, distmap.ppp, distfun, nncross, nearestsegment, project2segment.

Examples

Run this code
# NOT RUN {
    a <- psp(runif(20),runif(20),runif(20),runif(20), window=owin())
    Z <- distmap(a)
    plot(Z)
    plot(a, add=TRUE)
# }

Run the code above in your browser using DataLab