mirror of
https://github.com/a-b-street/abstreet.git
synced 2024-12-19 04:12:12 +03:00
39f5d50fcd
City names are now disambiguated by a two-letter country code. This commit handles almost everything needed to make this transition. Main next steps are fixing up map edits automatically and making the city picker UI understand the extra level of hierarchy. A little bit of fallout: lakeslice gridlocks again; this regression is actually from the recent traffic signal changes, but I'm just now regenerating everything. Will fix soon.
35 lines
1.1 KiB
Markdown
35 lines
1.1 KiB
Markdown
# SUMO interoperability
|
|
|
|
The purpose of this crate is to explore possible interactions between A/B Street
|
|
and [SUMO](https://www.eclipse.org/sumo/). Some of the ideas:
|
|
|
|
- Convert SUMO networks to ABST maps, to make use of SUMO's traffic signal
|
|
heuristics and junction joining
|
|
- Convert SUMO demand to ABST scenarios, to leverage all of the existing
|
|
[demand generation](https://sumo.dlr.de/docs/Demand/Introduction_to_demand_modelling_in_SUMO.html)
|
|
techniques
|
|
- Prototype a new SUMO frontend by gluing ABST UI code to
|
|
[TraCI](https://sumo.dlr.de/docs/TraCI.html)
|
|
|
|
## Usage
|
|
|
|
A quick SUMO primer. To convert an OSM file into a SUMO network:
|
|
|
|
`netconvert --osm-files data/input/us/seattle/osm/montlake.osm --output.street-names --keep-edges.components 1 -o montlake.net.xml`
|
|
|
|
To generate random trips and compute the routes for them:
|
|
|
|
`/usr/share/sumo/tools/randomTrips.py -n montlake.net.xml -r routes.xml`
|
|
|
|
To simulate these in SUMO:
|
|
|
|
`sumo-gui -r routes.xml -n montlake.net.xml`
|
|
|
|
To convert the network into an ABST map:
|
|
|
|
`cargo run --bin sumo montlake.net.xml`
|
|
|
|
To view it in ABST:
|
|
|
|
`cargo run --bin game -- --dev data/system/zz/sumo/maps/montlake.bin`
|