Subway Preprocessor and Validator
Find a file
2017-10-04 15:58:58 +03:00
stop_areas Initial commit 2017-10-04 15:58:58 +03:00
.gitignore Initial commit 2017-10-04 15:58:58 +03:00
download_all_subways.sh Initial commit 2017-10-04 15:58:58 +03:00
filter_all_subways.sh Initial commit 2017-10-04 15:58:58 +03:00
LICENSE Initial commit 2017-10-04 15:58:58 +03:00
mapsme_subways.py Initial commit 2017-10-04 15:58:58 +03:00
README.md Initial commit 2017-10-04 15:58:58 +03:00
subway_structure.py Initial commit 2017-10-04 15:58:58 +03:00
v2h_templates.py Initial commit 2017-10-04 15:58:58 +03:00
validation_to_html.py Initial commit 2017-10-04 15:58:58 +03:00

Subway Preprocessor

Here you see a list of scripts that can be used for preprocessing all the metro systems in the world from OpenStreetMap. subway_structure.py produces a list of disjunct systems that can be used for routing and for displaying of metro maps.

How To Validate

  • Download or update a planet file in o5m format (using osmconvert and osmupdate).
  • Use filter_all_subways.sh to extract a portion of data for all subways.
  • Run mapsme_subways.py -x filtered_data.osm to build metro structures and receive a validation log.
  • Run validation_to_html.py on that log to create readable HTML tables.

Adding Stop Areas To OSM

To quickly add stop_area relations for the entire city, use the make_stop_areas.py script from the stop_area directory. Give it a bounding box or a .json file download from Overpass API. It would produce an JOSM XML file that you should manually check in JOSM. After that just upload it.

Author and License

All scripts were written by Ilya Zverev for MAPS.ME. Published under Apache Licence 2.0.