Identify geometries that are near to each other. Either get the index of all geometries within a certain distance, or the k nearest neighbors, or (with nearest) get the nearest points between two geometries.
# S4 method for SpatVector
nearby(x, y=NULL, distance=0, k=1, centroids=TRUE, symmetrical=TRUE, method="geo")# S4 method for SpatVector
nearest(x, y, pairs=FALSE, centroids=TRUE, lines=FALSE, method="geo")
matrix
SpatVector
SpatVector or NULL
numeric. Maximum distance. Expressed in meters for lon/lat data (the geodesic distance is computed using method), and in the units of the CRS for projected data.
positive integer. number of neighbors. Ignored if distance > 0
logical. Should the centroids of polygons be used?
logical. If TRUE, a near pair is only included once. That is, if geometry 1 is near to geometry 3, the implied nearness between 3 and 1 is not reported. Ignored if k neighbors are returned
character. One of "geo", "haversine", "cosine". With "geo" the most precise but slower method of Karney (2003) is used. The other two methods are faster but less precise
logical. If TRUE pairwise nearest points are returned (only relevant when using at least one SpatVector of lines or polygons
logical. If TRUE lines between the nearest points instead of (the nearest) points
distance, relate, adjacent
f <- system.file("ex/lux.shp", package="terra")
v <- vect(f)
nearby(v, distance=12000)
Run the code above in your browser using DataLab