Learn R Programming

osmdata (version 0.3.0)

osm_lines: Extract all osm_lines from an osmdata_sf object

Description

If id is of a point object, osm_lines will return all lines containing that point. If id is of a line or polygon object, osm_lines will return all lines which intersect the given line or polygon.

Usage

osm_lines(dat, id)

Value

An sf Simple Features Collection of linestrings

Arguments

dat

An object of class osmdata_sf

id

OSM identification of one or more objects for which lines are to be extracted

See Also

Other search: osm_multilines(), osm_multipolygons(), osm_points(), osm_polygons()

Examples

Run this code
if (FALSE) {
dat <- opq ("hengelo nl") |>
    add_osm_feature (key = "highway") |>
    osmdata_sf ()
bus <- dat$osm_points [which (dat$osm_points$highway == "bus_stop"), ] |>
    rownames () # all OSM IDs of bus stops
osm_lines (dat, bus) # all highways containing bus stops

# All lines which intersect with Piccadilly Circus in London, UK
dat <- opq ("Fitzrovia London") |>
    add_osm_feature (key = "highway") |>
    osmdata_sf ()
i <- which (dat$osm_polygons$name == "Piccadilly Circus")
id <- rownames (dat$osm_polygons [i, ])
osm_lines (dat, id)
}

Run the code above in your browser using DataLab