Skip to contents

Create proximity band spatial units.

Usage

st_create_proximitybands(
  x,
  band_width = 10,
  segment_length = 2,
  merge_threshold = 1015,
  merge_type = "min_centroid_distance",
  contiguity = "rook",
  verbose = T
)

Arguments

x

a sf object with LINESTRING geometries representing a street network.

band_width

numeric; width of the band as measured from the centerline of the LINESTRING representing the street.

segment_length

numeric; Length of segments street linestrings are subdivided into. Default = 2.

merge_threshold

numeric; value represents the smallest acceptable size for a spatial unit. Contiguous units will be iteratively merged until this value is reached. To skip this process, set merge_threshold = NULL. See st_merge_spatialunits() for more details.

merge_type

string; Passed on to st_merge_spatialunits(). Criteria with which polygons are merged. Must be one of "min_centroid_distance", "min_shared_boundary", or "max_shared_boundary". Default = "min_centroid_distance". See st_merge_spatialunits() for more details.

contiguity

string; one of "queen" or "rook". Default = "rook".

verbose

logical; if FALSE no status messages will be output.

Value

A sf object with POLYGON geometries representing tessellated spatial units.

References

Araldi, A., & Fusco, G. (2019). From the street to the metropolitan region: Pedestrian perspective in urban fabric analysis. Environment and Planning B: Urban Analytics and City Science, 46(7), 1243–1263. https://doi.org/10.1177/2399808319832612

See also

st_merge_spatialunits, moter::motess()

Examples

proximity_bands <- st_create_proximitybands(x = bangalore_highways,
verbose = FALSE, merge_threshold = NULL)
#> Spherical geometry (s2) switched off
#> Error in dplyr::summarise(dplyr::group_by(voronoi_polygons, temp_id),     geometry = sf::st_union(geometry)):  In argument: `geometry = sf::st_union(geometry)`.
#>  In group 1: `temp_id = 1`.
#> Caused by error in `UseMethod()`:
#> ! no applicable method for 'st_union' applied to an object of class "NULL"
plot(proximity_bands)
#> Error in eval(expr, envir, enclos): object 'proximity_bands' not found