Learn R Programming

osmextract (version 0.5.2)

read_poly: Read a .poly file.

Description

Read a .poly file.

Usage

read_poly(input, crs = "OGC:CRS84", ...)

Value

A sfc_MULTIPOLYGON/sfc object.

Arguments

input

Character vector representing a polygon object saved using the .poly format. Can be also a path to a file or a URL pointing to a valid .poly file.

crs

The Coordinate Reference System (CRS) of the input polygon.

...

Further arguments passed to readLines() (which is the function used to read external .poly files).

Details

The Polygon Filter File Format (.poly) is defined here. The code behind the function was inspired by the parse_poly function defined here.

Geofabrik stores the .poly files used to generate their extracts. Furthermore, a nice collection of exact-border poly files created from cities with an OSM Relation ID is available in this git repository on github: https://github.com/jameschevalier/cities.

The default value for the crs argument is "OGC:CRS84" instead of "4326" or "EPSG:4326" since, by definition, the coordinates are provided as "longitude, latitude" (but these differences should be relevant only when sf::st_axis_order() is TRUE).

Examples

Run this code
toy_poly <- c(
  "test_poly",
  "first_area",
  "0 0",
  "0 1",
  "1 1",
  "1 0",
  "0 0",
  "END",
  "END"
)
(out <- read_poly(toy_poly))
plot(out)

if (FALSE) {
italy_poly <- "https://download.geofabrik.de/europe/italy.poly"
plot(read_poly(italy_poly))}

Run the code above in your browser using DataLab