From 7ab9f1e43abf3fac66e4d9ba2a7336d7e353f691 Mon Sep 17 00:00:00 2001 From: Vishal Date: Mon, 23 Sep 2024 16:51:04 +0200 Subject: [PATCH] update: add demo OSM network download wrapper --- README.md | 7 +++++++ src/helpers/downloadNetwork.py | 2 +- src/helpers/run_download.sh | 9 +++++++++ 3 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 src/helpers/run_download.sh diff --git a/README.md b/README.md index d946bca..509181a 100644 --- a/README.md +++ b/README.md @@ -182,6 +182,13 @@ The framework has been tested on **SUMO 1.13.0** and **Python 3.8** on both Ubun python runSim.py munich ``` +## Other SUMO-related tasks (optional): +### Network download: + ```sh + cd src/helpers + sh run_download.sh + ``` + ## Citation If you use these codes in your work, kindly cite the following preprint: diff --git a/src/helpers/downloadNetwork.py b/src/helpers/downloadNetwork.py index c544a60..44099a8 100755 --- a/src/helpers/downloadNetwork.py +++ b/src/helpers/downloadNetwork.py @@ -60,7 +60,7 @@ def download_raw_network_data(RAW_NETWORK, bbox): response = requests.post( "https://overpass-api.de/api/interpreter", headers=headers, data=data ) - with open("../data/" + RAW_NETWORK, "w") as f: + with open(RAW_NETWORK, "w") as f: f.write(response.text) diff --git a/src/helpers/run_download.sh b/src/helpers/run_download.sh new file mode 100644 index 0000000..b519610 --- /dev/null +++ b/src/helpers/run_download.sh @@ -0,0 +1,9 @@ +export RAW_NETWORK=demo_raw_network.osm +export CLEAN_NETWORK=demo_clean_network.osm +export FINAL_NETWORK=demo_network.net.xml + +export BBOX=47.6985415483953190,11.8014099151749789,47.9689446658581744,12.2510342616238823 + +python3 downloadNetwork.py +osmfilter $RAW_NETWORK --keep="highway" --drop="highway=footway =service =steps =bridleway =construction =path =proposed =raceway =track =barrier =living_street =raceway =corridor" > $CLEAN_NETWORK # =unclassified =residential =cycleway =pedestrian +netconvert --osm-files $CLEAN_NETWORK --remove-edges.isolated --ramps.guess --roundabouts.guess --edges.join --join-lanes --tls.guess.joining --junctions.join --junctions.join-dist 50 --no-turnarounds.except-turnlane --geometry.avoid-overlap --ramps.no-split --geometry.remove --tls.discard-simple --tls.guess-signals --tls.join --no-internal-links -o $FINAL_NETWORK