This function can be used to mask inputs from data. Masking here is
equivalent to raster::mask
(though fastMask
is used here)
or raster::intersect
.
maskInputs(x, studyArea, ...)# S3 method for Raster
maskInputs(x, studyArea, rasterToMatch,
maskWithRTM = FALSE, ...)
# S3 method for Spatial
maskInputs(x, studyArea, ...)
# S3 method for sf
maskInputs(x, studyArea, ...)
An object to do a geographic raster::mask/raster::intersect. See methods.
SpatialPolygons*
object used for masking and possibly cropping
if no rasterToMatch
is provided.
If not in same CRS, then it will be spTransform
ed to
CRS of x
before masking. Currently, this function will not reproject the
x
. Optional in postProcess
.
Passed to methods. None currently implemented.
Template Raster*
object used for cropping (so extent should be
the extent of desired outcome) and reprojecting (including changing the
resolution and projection).
See details in postProcess
.
Logical. If TRUE
, then the default,
# NOT RUN {
# Add a study area to Crop and Mask to
# Create a "study area"
library(sp)
library(raster)
ow <- setwd(tempdir())
# make a SpatialPolygon
coords1 <- structure(c(-123.98, -117.1, -80.2, -100, -123.98, 60.9, 67.73, 65.58, 51.79, 60.9),
.Dim = c(5L, 2L))
Sr1 <- Polygon(coords1)
Srs1 <- Polygons(list(Sr1), "s1")
shpEcozone <- SpatialPolygons(list(Srs1), 1L)
crs(shpEcozone) <- "+init=epsg:4326 +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0"
# make a "study area" that is subset of larger dataset
coords <- structure(c(-118.98, -116.1, -99.2, -106, -118.98, 59.9, 65.73, 63.58, 54.79, 59.9),
.Dim = c(5L, 2L))
Sr1 <- Polygon(coords)
Srs1 <- Polygons(list(Sr1), "s1")
StudyArea <- SpatialPolygons(list(Srs1), 1L)
crs(StudyArea) <- "+init=epsg:4326 +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0"
#'
#'
##########
shpEcozonePostProcessed <- postProcess(shpEcozone, studyArea = StudyArea)
#'
# Try manually, individual pieces
shpEcozoneReprojected <- projectInputs(shpEcozone, StudyArea)
shpEcozoneCropped <- cropInputs(shpEcozone, StudyArea)
shpEcozoneClean <- fixErrors(shpEcozone)
shpEcozoneMasked <- maskInputs(shpEcozone, StudyArea)
setwd(ow)
# }
Run the code above in your browser using DataLab