thinNetwork {spatstat.linnet} | R Documentation |
Remove Vertices or Segments from a Linear Network
Description
Delete some vertices and/or segments from a linear network or related object.
Usage
thinNetwork(X, retainvertices=NULL, retainedges=NULL)
Arguments
X |
A linear network (object of class |
retainvertices |
Optional. Subset index specifying which vertices should be retained (not deleted). |
retainedges |
Optional. Subset index specifying which edges (segments) should be retained (not deleted). |
Details
This function deletes some of the vertices and edges (segments) in the linear network.
The arguments retainvertices
and retainedges
can be
any kind of subset index: a vector of positive integers specifying which
vertices/edges should be retained; a vector of negative integers
specifying which vertices/edges should be deleted; or a logical vector
specifying whether each vertex/edge should be retained (TRUE
)
or deleted (FALSE
).
Vertices are indexed in the same sequence as in
vertices(as.linnet(X))
.
Segments are indexed in the same sequence as in
as.psp(as.linnet(X))
.
The argument retainedges
has higher precedence than
retainvertices
in the sense that:
If
retainedges
is given, then any vertex which is an endpoint of a retained edge will also be retained.-
If
retainvertices
is given andretainedges
is missing, then any segment joining two retained vertices will also be retained. -
Thus, when both
retainvertices
andretainedges
are given, it is possible that more vertices will be retained than those specified byretainvertices
.
After the network has been altered, other consequential changes will
occur, including renumbering of the segments and vertices.
If X
is a point pattern on a linear network, then data points
will be deleted if they lie on a deleted edge.
If X
is a pixel image on a linear network, then the image
will be restricted to the new sub-network.
Value
An object of the same kind as X
.
Author(s)
Adrian Baddeley Adrian.Baddeley@curtin.edu.au and Suman Rakshit.
See Also
linnet
to make a network;
connected.linnet
to extract connected components.
Examples
L <- simplenet
plot(L, main="thinNetwork(L, retainedges=c(-3, -5))")
text(midpoints.psp(as.psp(L)), labels=1:nsegments(L), pos=3)
Lsub <- thinNetwork(L, retainedges=c(-3, -5))
plot(Lsub, add=TRUE, col="blue", lwd=2)