spatstat (version 1.42-2)

as.linnet.psp: Convert Line Segment Pattern to Linear Network

Description

Converts a line segment pattern to a linear network.

Usage

## S3 method for class 'psp':
as.linnet(X, \dots, eps, sparse=FALSE)

Arguments

X
Line segment pattern (object of class "psp").
...
Ignored.
eps
Optional. Distance threshold. If two segment endpoints are closer than eps units apart, they will be treated as the same point, and will become a single vertex in the linear network.
sparse
Logical value indicating whether to use a sparse matrix representation, as explained in linnet.

Value

  • A linear network (object of class "linnet").

Details

This command converts any collection of line segments into a linear network by guessing the connectivity of the network, using the distance threshold eps.

If any segments in X cross over each other, they are first cut into pieces using selfcut.psp.

Then any pair of segment endpoints lying closer than eps units apart, is treated as a single vertex. The linear network is then constructed using linnet.

It would be wise to check the result by plotting the degree of each vertex, as shown in the Examples.

See Also

linnet, selfcut.psp, methods.linnet.

Examples

Run this code
# make some data
  A <- psp(0.09, 0.55, 0.79, 0.80, window=owin())
  B <- superimpose(A, as.psp(simplenet))

  # convert to a linear network
  D <- as.linnet(B)

  # check validity
  D
  plot(D)
  text(vertices(D), labels=vertexdegree(D))

Run the code above in your browser using DataCamp Workspace