For Raster* objects: Replace NA values in the first Raster object (x) with the values of the second (y), and so forth for additional Rasters. If x has multiple layers, the subsequent Raster objects should have the same number of layers, or have a single layer only (which will be recycled).

For SpatialPolygons* objects: Areas of x that overlap with y are replaced by (or intersected with) y.

# S4 method for RasterLayer,RasterLayer
cover(x, y, ..., filename='')

# S4 method for RasterStackBrick,Raster
cover(x, y, ..., filename='')

# S4 method for SpatialPolygons,SpatialPolygons
cover(x, y, ..., identity=FALSE)



Raster* or SpatialPolygons* object


Same as x


character. Output filename (optional)


Same as x. If x is a Raster* object, also additional arguments as for writeRaster


logical. If TRUE overlapping areas are intersected rather than replaced


RasterLayer or RasterBrick object, or SpatialPolygons object


# raster objects
r1 <- raster(ncols=36, nrows=18)
values(r1) <- 1:ncell(r1)
r2 <- setValues(r1, runif(ncell(r1)))
r2[r2 < 0.5] <- NA
r3 <- cover(r2, r1)

p <- shapefile(system.file("external/lux.shp", package="raster"))
b <- as(extent(6, 6.4, 49.75, 50), 'SpatialPolygons')
crs(b) <- crs(p)
b <- SpatialPolygonsDataFrame(b, data.frame(ID_1=9))
cv1 <- cover(p, b)
cv2 <- cover(p, b, identity=TRUE)