Distance

Share:

Description

For a single RasterLayer (y is missing) this method computes the distance, for all cells that are NA, to the nearest cell that is not NA. The distance unit is in meters if the RasterLayer is not projected (+proj=longlat) and in map units (typically also meters) when it is projected.

If two RasterLayer objects are provided, the cell-value distances are computed. If two Spatial vector type objects are provided, the distances between pairs of geographic object are computed.

Usage

1
2
3
4
5
6
## S4 method for signature 'RasterLayer,missing'
distance(x, y, filename='', doEdge=TRUE, ...)
## S4 method for signature 'RasterLayer,RasterLayer'
distance(x, y, ...)
## S4 method for signature 'Spatial,Spatial'
distance(x, y, ...)

Arguments

x

RasterLayer object

y

missing, RasterLayer or Spatial object

filename

Character. Filename for the output RasterLayer (optional)

doEdge

Logical. If TRUE, the boundaries function is called first. This may be efficient in cases where you compute the distance to large blobs. Calling boundaries determines the edge cells that matter for distance computation

...

Additional arguments as for writeRaster

Value

RasterLayer

See Also

distanceFromPoints, gridDistance, pointDistance

See the gdistance package for more advanced distances, and the geosphere package for great-circle distances (and more) between points in longitude/latitude coordinates.

Examples

1
2
3
4
5
r <- raster(ncol=36,nrow=18)
r[] <- NA
r[500] <- 1
dist <- distance(r) 
#plot(dist / 1000)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.