opq | R Documentation |
Build an Overpass query
opq(
bbox = NULL,
nodes_only = FALSE,
osm_types = c("node", "way", "relation"),
out = c("body", "tags", "meta", "skel", "tags center", "ids"),
datetime = NULL,
datetime2 = NULL,
adiff = FALSE,
timeout = 25,
memsize
)
bbox |
Either (i) four numeric values specifying the maximal and minimal
longitudes and latitudes, in the form |
nodes_only |
WARNING: this parameter is equivalent to
|
osm_types |
A character vector with several OSM types to query: |
out |
The level of verbosity of the overpass result: |
datetime |
If specified, a date and time to extract data from the OSM database as it was up to the specified date and time, as described at https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL#date. This must be in ISO8601 format ("YYYY-MM-DDThh:mm:ssZ"), where both the "T" and "Z" characters must be present. |
datetime2 |
If specified, return the difference in the OSM
database between |
adiff |
If |
timeout |
It may be necessary to increase this value for large queries, because the server may time out before all data are delivered. |
memsize |
The default memory size for the 'overpass' server in bytes; may need to be increased in order to handle large queries. |
The out
statement for tags
, tags center
and id
, do not return
geometries. Neither out = "meta"
nor adiff = TRUE
options are implemented
for all osmdata_*
functions yet. Use osmdata_xml or osmdata_data_frame
to get the result of these queries. See the documentation of the out statement
and augmented difference
for more details about these options.
An overpass_query
object
See
https://wiki.openstreetmap.org/wiki/Overpass_API#Resource_management_options_.28osm-script.29
for explanation of timeout
and memsize
(or maxsize
in overpass terms).
Note in particular the comment that queries with arbitrarily large memsize
are likely to be rejected.
Other queries:
add_osm_features()
,
add_osm_feature()
,
bbox_to_string()
,
getbb()
,
opq_around()
,
opq_csv()
,
opq_enclosing()
,
opq_osm_id()
,
opq_string()
,
overpass_status()
## Not run:
q <- getbb ("portsmouth", display_name_contains = "United States") %>%
opq () %>%
add_osm_feature ("amenity", "restaurant") %>%
add_osm_feature ("amenity", "pub")
osmdata_sf (q) # all objects that are restaurants AND pubs (there are none!)
q1 <- getbb ("portsmouth", display_name_contains = "United States") %>%
opq () %>%
add_osm_feature ("amenity", "restaurant")
q2 <- getbb ("portsmouth", display_name_contains = "United States") %>%
opq () %>%
add_osm_feature ("amenity", "pub")
c (osmdata_sf (q1), osmdata_sf (q2)) # all restaurants OR pubs
# Use nodes_only to retrieve single point data only, such as for central
# locations of cities.
opq <- opq (bbox, nodes_only = TRUE) %>%
add_osm_feature (key = "place", value = "city") %>%
osmdata_sf (quiet = FALSE)
# Filter by a search area
qa1 <- getbb ("Catalan Countries", format_out = "osm_type_id") %>%
opq (nodes_only = TRUE) %>%
add_osm_feature (key = "capital", value = "4")
opqa1 <- osmdata_sf (qa1)
# Filter by a multiple search areas
bb <- getbb ("Vilafranca", format_out = "data.frame")
qa2 <- bbox_to_string (bb [bb$osm_type != "node", ]) %>%
opq (nodes_only = TRUE) %>%
add_osm_feature (key = "place")
opqa2 <- osmdata_sf (qa2)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.