Coerce "SpatialPolygons"
to "owin"
"SpatialPolygons"
to "owin"
Package polyCub
implements coerce
-methods (as(object, Class)
) to convert "SpatialPolygons"
(or "Polygons"
or "Polygon"
) of package list("sp")
to "owin"
of package list("spatstat.geom"). They are also available as as.owin.*
functions to support polyCub.midpoint
.
as.owin.SpatialPolygons(W, ...) as.owin.Polygons(W, ...) as.owin.Polygon(W, ...)
W
: an object of class "SpatialPolygons"
, "Polygons"
, or "Polygon"
....
: further arguments passed to owin
.if (require("spatstat.geom") && require("sp")) { diamond <- list(x = c(1,2,1,0), y = c(1,2,3,2)) # anti-clockwise diamond.owin <- owin(poly = diamond) diamond.sp <- Polygon(lapply(diamond, rev)) # clockwise stopifnot(identical(xylist(diamond.sp), list(diamond))) diamond.owin_from_sp <- as.owin(diamond.sp) stopifnot(all.equal(diamond.owin, diamond.owin_from_sp)) ## similarly works for Polygons and SpatialPolygons diamond.Ps <- as(diamond.sp, "Polygons") stopifnot(identical(diamond.owin, as.owin(diamond.Ps))) diamond.SpPs <- SpatialPolygons(list(diamond.Ps)) stopifnot(identical(xylist(diamond.SpPs), list(diamond))) stopifnot(identical(diamond.owin, as.owin(diamond.SpPs))) }
xylist
Sebastian Meyer