sfg2gpc {polyCub}R Documentation

Convert polygonal "sfg" to "gpc.poly"

Description

Package polyCub implements a converter from class "(MULTI)POLYGON" of package sf to "gpc.poly" of package rgeos (originally from gpclib) such that polyCub.exact.Gauss can be used with simple feature polygons.

Usage

sfg2gpc(object)

Arguments

object

a "POLYGON" or "MULTIPOLYGON" "sfg" object.

Value

The converted polygon of class "gpc.poly". If neither package rgeos nor gpclib are available, sfg2gpc will just return the pts slot of the "gpc.poly" (no formal class) with a warning.

Note

Package rgeos (or gpclib) is required for the formal class definition of a "gpc.poly".

Author(s)

Sebastian Meyer

See Also

xylist

Examples

if (require("rgeos") && require("sf")) {
    ## use example polygons from
    example(plotpolyf, ask = FALSE)

    letterR  # a simple "xylist"
    letterR.sfg <- st_polygon(lapply(letterR, function(xy)
        rbind(cbind(xy$x, xy$y), c(xy$x[1], xy$y[1]))))
    print(letterR.sfg)
    stopifnot(identical(letterR, xylist(letterR.sfg)))
    
    ## convert sf "POLYGON" to a "gpc.poly"
    letterR.gpc_from_sfg <- sfg2gpc(letterR.sfg)
    print(letterR.gpc_from_sfg)
    letterR.xylist_from_gpc <- xylist(letterR.gpc_from_sfg) # with hole info
    stopifnot(identical(letterR, lapply(letterR.xylist_from_gpc, "[", 1:2)))
}

[Package polyCub version 0.8.0 Index]