Locate polygons on the current plot (using the locator
function).
locatePolys (pdata, n = 512, type = "o", …)
PolyData (optional) with
columns PID
and SID
(optional), with two more
optional columns n
and type
.
maximum number of points to locate.
one of "n"
, "p"
, "l"
, or
"o"
. If "p"
or "o"
, then the points are
plotted; if "l"
or "o"
, then the points are joined by
lines.
PolySet with projection
attribute equal to the map's
projection. The function does not set the zone
attribute.
This function allows its user to define polygons with mouse clicks on
the current plot via the locator
function. The
arguments n
and type
are the usual parameters for the
locator
function, but the user can specify them for each
individual (PID
, SID
) in a pdata
object.
If a pdata
object exists, the function ignores columns other
than PID
, SID
, n
, and type
. If pdata
includes n
, then an outer boundary has n > 0
and an
inner boundary has n < 0
.
On exit from locator
, suppose the user defined m
vertices for a given polygon. For that polygon, the X
and
Y
columns will contain NA
s where POS =
(
m+1):n
for outer-boundaries and POS =
(|n|-
m):1
for inner-boundaries. The
na.omit
function can remove rows with NA
s.
If a pdata
object does not exist, the output contains only one
polygon with a PID
equal to 1. One inner-boundary polygon
(POS
goes from n
to 1
) can be generated by
supplying a negative n
.
If type = "o"
or type = "l"
, the function draws a line
connecting the last and first vertices.
addPolys
,
appendPolys
,
clipPolys
,
closePolys
,
findCells
,
findPolys
,
fixPOS
,
joinPolys
,
plotMap
,
plotPolys
,
thickenPolys
,
thinPolys
.
# NOT RUN {
#--- define one polygon with up to 5 vertices on the current plot
# }
# NOT RUN {
polys <- locatePolys(n = 5)
# }
Run the code above in your browser using DataLab