R: sfc POLYGON

sfc_polygon {sfheaders} | R Documentation

## sfc POLYGON

### Description

constructs an sfc of POLYGON objects

### Usage

    sfc_polygon(
      obj = NULL,
      x = NULL,
      y = NULL,
      z = NULL,
      m = NULL,
      polygon_id = NULL,
      linestring_id = NULL,
      close = TRUE
    )

### Arguments

`obj` | sorted matrix or data.frame
`x` | x geometry column
`y` | y geometry column
`z` | z geometry column
`m` | m geometry column
`polygon_id` | column of ids for polygons
`linestring_id` | column of ids for lines (within polygons)
`close` | logical indicating whether polygons should be closed. If `TRUE`, all polygons will be checked and force closed if possible

### Value

`sfc` object of POLYGON geometries

### notes

sfheaders functions do not perform any validity checks on the geometries. Nor do they set Coordinate Reference Systems, EPSG, PROJ4 or precision attributes.

The data.frame and matrices you send into the sfheader functions must be ordered.

### Examples

    m <- matrix(c(0,0,0,0,1,1), ncol = 2 )
    sfc_polygon( m )

    m <- matrix(c(0,0,0,0,0,1,0,1,1,1,2,2,1,2,3,1,3,2), ncol = 3, byrow = TRUE)
    sfc_polygon( obj = m )
    sfc_polygon( obj = m, polygon_id = 1 )
    sfc_polygon( obj = m, linestring_id = 1 )

    sfc_polygon( obj = m, linestring_id = 1, polygon_id = 1 )

    sfc_polygon( obj = m, x = 2, y = 3 )
    sfc_polygon( obj = m, x = 1, y = 2, z = 3 )
    sfc_polygon( obj = m, x = 2, y = 3, linestring_id = 1, polygon_id = 1 )

    df <- data.frame(
      ml_id = c(1,1,1,1,1,1,1,1,1,2,2,2,2,2,2)
      , l_id = c(1,1,1,2,2,2,3,3,3,1,1,1,2,2,2)
      , x = rnorm(15)
      , y = rnorm(15)
      , z = rnorm(15)
      , m = rnorm(15)
    )

    sfc_polygon( obj = df, x = "x", y = "y")
    sfc_polygon( obj = df, x = "x", y = "y", z = "z")
    sfc_polygon( obj = df, x = "x", y = "y", z = "z", m = "m")

    sfc_polygon( obj = df, x = 2, y = 3)
    sfc_polygon( obj = df, x = 2, y = 3, z = 4)
    sfc_polygon( obj = df, x = 2, y = 3, z = 4, m = 5)

    sfc_polygon( obj = df, polygon_id = "ml_id", linestring_id = "l_id" )
    sfc_polygon( obj = df, polygon_id = 1, linestring_id = 2 )

[Package sfheaders version 0.2.1 Index]