R: Class "SpatialPolygons"

SpatialPolygons-class {sp} | R Documentation

## Class "SpatialPolygons"

### Description

class to hold polygon topology (without attributes)

### Objects from the Class

Objects can be created by calls to the function SpatialPolygons

### Slots

`polygons`:

  Object of class `"list"`; list elements are all of class Polygons-class

`plotOrder`:

  Object of class `"integer"`; integer array giving the order in which objects should be plotted

`bbox`:

  Object of class `"matrix"`; see Spatial-class

`proj4string`:

  Object of class `"CRS"`; see CRS-class

### Extends

Class `"Spatial"`, directly.

### Methods

Methods defined with class "SpatialPolygons" in the signature:

[

  `signature(obj = "SpatialPolygons")`: select subset of (sets of) polygons; NAs are not permitted in the row index

plot

  `signature(x = "SpatialPolygons", y = "missing")`: plot polygons in SpatialPolygons object

summary

  `signature(object = "SpatialPolygons")`: summarize object

rbind

  `signature(object = "SpatialPolygons")`: rbind-like method

### plot method arguments

The `plot` method for spatial polygons takes the following arguments:

x

  a SpatialPolygons object

col

  a vector of colour values

border

  default `par("fg")`; the colour to draw the border

add

  default FALSE; if TRUE, add to existing plot

xlim, ylim

  default NULL; ranges for the plotted ‘x’ and ‘y’ values

xpd

  default NULL; controls clipping, see `par`

density

  default NULL; the density of shading lines, in lines per inch, see `polygon`

angle

  default 45; the slope of shading lines, given as an angle in degrees (counter-clockwise), see `polygon`

pbg

  default NULL, set to `par("bg")` by default “transparent”; the colour to paint holes

axes

  default FALSE; draw axes

lty

  default `par("lty")`; border line type

...

  other arguments passed through

setParUsrBB

  default FALSE; see `Spatial-class` for further details

usePolypath

  default NULL to set from option value; use `polypath` for hole-handling in plot

rule

  default NULL to set from option value; character value specifying the path fill mode, see `polypath`

The options for `usePolypath` and `rule` may be retrieved with `get_Polypath` (default TRUE on package load) and `get_PolypathRule` (default “winding” on package load), and set with `set_Polypath` and `set_PolypathRule`

The class definitions used for polygons in sp do not accord with those of the simple features specification of the Open Geospatial Consortium. The rgeos package, an interface to Geometry Engine – Open Source (GEOS), uses this specification, in which each hole (interior ring) must be associated with its containing exterior ring. In order to avoid introducing incompatible changes into the class definition of Polygons objects, a comment has been added as a single character string to each such object. Here we can trust the data source to assign the hole status correctly, and use the simple function `createSPComment` to add such comments to each Polygons member of the polygons slot of this SpatialPolygons object. Exterior rings are coded zero, while interior rings are coded with the 1-based index of the exterior ring to which they belong. SpatialPolygons objects created by reading using `readOGR` from rgdal have the comments set on input, as OGR also uses SFS.

Refer to Bivand et al. (2013), pages 47-48 and 132-133 for a further discussion.

### Note

`rbind` calls the function `SpatialPolygons`, where it is checked that all IDs are unique. If `rbind`-ing `SpatialPolygons` without unique IDs, it is possible to set the argument `makeUniqueIDs = TRUE`, although it is preferred to change these explicitly with `spChFIDs`.

### Author(s)

Roger Bivand

### References

Roger Bivand, Edzer Pebesma and Virgilio Gomez-Rubio, 2013. Applied spatial data analysis with R, Second edition. Springer, NY. https://asdar-book.org/

### See Also

`SpatialPolygons`

### Examples

    # simple example, from vignette("sp"):
    Sr1 = Polygon(cbind(c(2,4,4,1,2),c(2,3,5,4,2)))
    Sr2 = Polygon(cbind(c(5,4,2,5),c(2,3,2,2)))
    Sr3 = Polygon(cbind(c(4,4,5,10,4),c(5,3,2,5,5)))
    Sr4 = Polygon(cbind(c(5,6,6,5,5),c(4,4,3,3,4)), hole = TRUE)

    Srs1 = Polygons(list(Sr1), "s1")
    Srs2 = Polygons(list(Sr2), "s2")
    Srs3 = Polygons(list(Sr3, Sr4), "s3/4")
    SpP = SpatialPolygons(list(Srs1,Srs2,Srs3), 1:3)
    plot(SpP, col = 1:3, pbg="white")

    grd <- GridTopology(c(1,1), c(1,1), c(10,10))
    polys <- as(grd, "SpatialPolygons")
    plot(polys)
    text(coordinates(polys), labels=row.names(polys))

[Package sp version 1.4-5 Index]