struct. Whatever choices we make next about naming cities hierarchially
or not can be managed in just one place. #326
This is a pretty huge change, but the compiler gives reasonable
confidence it's correct. More bugs are likely to crop up in the next
step, when filenames start being namespaced by the city too.
Uploading files individually to Dropbox is flaky, and the unique URL per
file complicates data/MANIFEST.
While we're at it, start carving aside a directory structure for keeping
data for the last few releases.
[rebuild] to make sure github actions can download everything
intersection polygon in Krakow that has really bad geometry, and this
improves it. The extra check absolutely shouldn't be necessary, but of
course, all the core line intersection code is quite suspect! #161
Also gets rid of some annoying warnings about roads with missing names.
I could continue to skip the warning for more situations, but I think
this sort of data quality check could be done better in the OSM viewer.
showed this is faster than downloading the uncompressed files, but of
course it probably depends on network speed vs CPU. #326
Also cut over the updater to use gzipped files using flate, instead of
single-file .zip's. [rebuild]
imported, because they referenced way IDs from before the service road
import. That happened after a bad Cargo.lock merge undid the effects of
pinning to the latest seattle_traffic_signals.
only allow the leftmost source lane to turn to any destination lane. As
a future improvment, need to handle multiple explicitly tagged left turn
lanes, but this gets closer to reality, particularly helping some crazy
maneuvers along Mercer in downtown.
*or right
Also had to update lanes along Madison and fiddle a bit to keep
lakeslice running. Spotted some major traffic signal bottlenecks due to
stage generation falling back, will iterate on that separately.
raw string" stuff from the previous commit.
Add tests of a few interesting intersections. The results right now
aren't ideal, but this sets things up for fast iteraton.
lanes all lead to a single lane via left/right turn, and just keep the
left/rightmost lane.
Sanity checked at Rainier / S Massachusetts, and 23rd / S Massachusetts.
- Temporarily workaround snap_cycleways crash in Xi'an
- Fix interpretation of blank turn restrictions. https://www.openstreetmap.org/way/739621435 was missing a right turn, which was causing vehicles to do this crazy loop to go from Madison EB to Lake Wash SB.
- Ignore turn restrictions when they don't match the number of lanes. https://www.openstreetmap.org/way/428090702 and similar need some updating.
Regenerate all data, but give up on lakeslice running fully. Going to
sacrifice that one for a bit to get new roads imported.
We were drawing "pop-up" style buttons in several places, using
copy/pasted logic - which was simple enough when using a unicode glyph.
But we want to use a different glyph which isn't in our font. Further,
using an svg like this gives us finer grained control around the layout
around the button "handle" than we could get with just space characters.
clipping boundary. I don't remember why the more complicated thing came
about. This fixes a weird incoming border in SLU into an unreachable
intersection (which is more accurate) and doesn't seem to cause any
problems to normal or oneshot maps, with or without explicit clips.
it for the prolet robot model. Expose it in the trip info panel.
Total scenario size from 385MB to 412MB, but that's not so bad, and this
seems worth it.
uber-turns (sequences of turns through a few intersections) due to OSM
turn restrictions, we have to be a little careful how we sum up the cost
for the entire sequence, only rounding at the end.