Determine Whether Polygons are Self-Intersecting
Determine whether polygons found in a PolySet are self-intersecting.
isIntersecting (polys, numericResult = FALSE)
polys |
PolySet to use. |
numericResult |
Boolean value; if |
When numericResult = TRUE
, this function counts intersections
as the algorithm processes them. It counts certain types (i.e., those
involving vertices and those where an edge retraces over an edge) more
than once.
The function does not give special consideration to holes. It returns
a value for each unique (PID
, SID
), regardless of
whether a contour represents a hole.
PolyData with columns PID
, SID
(may be missing),
and intersecting
. If numericResult
is TRUE
,
intersecting
contains the number of intersections. Otherwise,
it contains a Boolean value.
Nicholas M. Boers, Associate Professor – Computer Science
MacEwan University, Edmonton AB
Last modified Rd: 2013-04-10
local(envir=.PBSmapEnv,expr={ #--- load the data (if using R) if (!is.null(version$language) && (version$language=="R")) data(nepacLL,envir=.PBSmapEnv) #--- calculate then print the polygons that are self-intersecting p <- isIntersecting(nepacLL, numericResult = FALSE) print(p[p$intersecting,]) })
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.