GEOSCoverageUnion is an optimized union algorithm for polygonal inputs that are correctly noded and do not overlap. It will not generate an error (return NULL) for inputs that do not satisfy this constraint.

gCoverageUnion(spgeom, byid=FALSE, id = NULL)

Arguments

spgeom

sp object as defined in package sp

byid

Logical determining if the function should be applied across subgeometries (TRUE) or the entire object (FALSE)

id

Character vector defining id labels for the resulting geometries, if unspecified returned geometries will be labeled based on their parent geometries' labels.

Author

Roger Bivand

See also

Examples

run <- FALSE
if (require(maptools)) run <- TRUE
if (run) {
    nc1 <- readShapePoly(system.file("shapes/sids.shp", package="maptools")[1],
        proj4string=CRS("+proj=longlat +datum=NAD27"))
}
#> Warning: shapelib support is provided by GDAL through the sf and terra packages among others
if (run) {
    print(system.time(oU <- gUnionCascaded(nc1)))
    if (version_GEOS0() >= "3.8.0") {
        print(system.time(oCU <- gCoverageUnion(nc1)))
    }
}
#>    user  system elapsed 
#>   0.019   0.000   0.019 
#>    user  system elapsed 
#>   0.006   0.000   0.006