R: functions for spherical geometry, using s2 package

s2 {sf} | R Documentation

## functions for spherical geometry, using s2 package

### Description

functions for spherical geometry, using the s2 package based on the google s2geometry.io library

### Usage

    sf_use_s2(use_s2)

    ## S3 method for class 'wk_wkb'
    st_as_sfc(x, ..., crs = st_crs(4326))

    ## S3 method for class 's2_geography'
    st_as_sfc(
      x,
      ...,
      crs = st_crs(4326),
      endian = match(.Platform$endian, c("big", "little")) - 1L
    )

    ## S3 method for class 's2_geography'
    st_as_sf(x, ..., crs = st_crs(4326))

    st_as_s2(x, ...)

    ## S3 method for class 'sf'
    st_as_s2(x, ...)

    ## S3 method for class 'sfc'
    st_as_s2(x, ..., oriented = FALSE)

### Arguments

`use_s2` | logical; if `TRUE`, use the s2 spherical geometry package for geographical coordinate operations
`x` | object of class `sf`, `sfc` or `sfg`
`...` | passed on
`crs` | coordinate reference system; object of class `crs`
`endian` | integer; 0 or 1: defaults to the endian of the native machine
`oriented` | logical; if `FALSE`, polygons that cover more than half of the globe are inverted; if `TRUE`, no reversal takes place and it is assumed that the inside of the polygon is to the left of the polygon's path.

### Details

`st_as_s2` converts an `sf` POLYGON object into a form readable by `s2`.

### Value

`sf_use_s2` returns the value of this variable before (re)setting it, invisibly if `use_s2` is not missing.

### Examples

    m = rbind(c(-1,-1), c(1,-1), c(1,1), c(-1,1), c(-1,-1))
    m1 = rbind(c(-1,-1), c(1,-1), c(1,1), c(-1,1), c(-1,0), c(-1,-1))
    m0 = m[5:1,]
    mp = st_multipolygon(list(
    list(m, 0.8 * m0, 0.01 * m1 + 0.9),
    list(0.7* m, 0.6*m0),
    list(0.5 * m0),
    list(m+2),
    list(m+4,(.9*m0)+4)
    ))
    sf = st_sfc(mp, mp, crs = 'EPSG:4326')
    s2 = st_as_s2(sf)

[Package sf version 0.9-7 Index]