| 1234567891011121314151617181920212223242526272829 |
- #' Outline for the polygons
- #' @details Tsoonidele piirjoone leidmine. Funktsiooni abil leitakse kõikide polügoonide ühisosa.
- #' Augud polügoonide sees eemaldatakse
- #' @param spdf object with class "SpatialPolygonsDataFrame".
- #' @return SpatialPolygon Object with class "SpatialPolygon".
- #' @seealso \code{\link{isObjectSpatialPolygonsDataFrame}}, \code{\link{centroid2SpatialPolygonsDataFrame}},
- #' \code{\link{projection2WGS84}}, \code{\link{area2SpatialPolygonsDataFrame}},
- #' \code{\link{perimeter2SpatialPolygonsDataFrame}}, \code{\link{spPolygonsOutline}}
- #' @examples \dontrun{
- #' load(tr_tsoonid)
- #' tr_tsoonid.outline <- perimeter2SpatialPolygonsDataFrame(spdf = tr_tsoonid)
- #' tr_tsoonid.outline
- #'
- #' }
- #'
- #' @export
- #'
- spPolygonsOutline <- function(spdf) {
- # Remove intersections
- # if(!rgeos::gIsValid(spdf)) {spdf <- rgeos::gBuffer(spdf, byid=FALSE, width=.00000001)} # .000001
- # if(!rgeos::gIsValid(spdf)) {message("Remove intersections form spatial polygons."); return(NULL)}
- spdf <- rgeos::gBuffer(spdf, byid=FALSE, width=.00000001)
- outerRings = Filter(function(f){f@ringDir==1},spdf@polygons[[1]]@Polygons)
- outerBounds = sp::SpatialPolygons(list(sp::Polygons(outerRings,ID=1)))
- outerBounds@proj4string <- sp::CRS("+init=epsg:4326")
- # plot(outerBounds, col = "red", border = "green", lwd = .8)
- outerBounds
- }
|