Convert polygonal "sfg" to "gpc.poly"
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.
sfg2gpc(object)
| object | a  | 
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.
Package rgeos (or gpclib) is required for the formal class
definition of a "gpc.poly".
Sebastian Meyer
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)))
}Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.