Dustin Carlino
03b6f39763
Flatten the raw_map initial module now
2022-02-19 17:48:39 +00:00
Dustin Carlino
14bea3a4be
Split out a raw_map crate from map_model. RawMap is the thing we turn
...
OSM and other raw input into and store, before later converting to a
Map.
Why?
- build-time performance: while iterating on geometry problems, map_editor in release mode took 33s to build before, 11s now that the crate is split
- better layering: operations on a RawMap are becoming increasingly distinct from later transformations on the bigger map model
- this helps tease apart the dependencies of the intersection polygon algorithm for #846
- this will make it simpler to cutover to osm2lanes for https://github.com/a-b-street/osm2lanes/issues/71
There's further reorganization in raw_map and map_model that'll follow,
but the main work is done here.
2022-02-19 17:39:28 +00:00
Dustin Carlino
7859304690
Draw road outlines in the map_editor; it makes it easier to work on geometry fixes
2022-02-19 15:32:13 +00:00
Dustin Carlino
f7f8f3fe54
Remove the dependency on map_gui from map_editor, letting it compile much faster. This unfortunately requires copying the CameraState code; I couldn't find an appropriate place to move that
2022-02-19 15:23:39 +00:00
Dustin Carlino
f14554f6b7
Lift URLManager from map_gui to widgetry
2022-02-19 15:14:53 +00:00
Dustin Carlino
aa48def2ba
Lift FileLoader and friends from map_gui to widgetry
...
(Very tricky dependency shuffling...)
2022-02-19 15:07:07 +00:00
Dustin Carlino
3b21bf6e87
Lift PopupMsg to widgetry
2022-02-19 14:38:26 +00:00
Dustin Carlino
244e82122c
Detect negative departure time in scenario JSON. #861
2022-02-18 16:30:48 +00:00
Dustin Carlino
54634e564a
Import São Miguel Paulista
2022-02-18 16:19:09 +00:00
Dustin Carlino
ad5425ea3c
Maybe I'll even remember to upload the regenerated data
2022-02-17 20:24:20 +00:00
Dustin Carlino
6a5366292f
Make editing maps with transit stops a little more resilient. #372
...
Transit stop IDs previously were tied to LaneIDs, but those can easily
change with edits to the number of lanes on a road. We still may need to
re-snap transit stops (if the driving position or sidewalk changes), but
this prevents one more common type of problem.
This requires regenerating everything, since it's a binary schema
change...
2022-02-17 20:18:24 +00:00
Dustin Carlino
0dc8972187
Fix editing maps that have public transit. #372
...
Back in #819 , I broke things by creating the sidewalk+transit graph
before transit routes had been set up. This causes immediate crashing
when editing the 2 maps with transit (Arboretum and SF).
2022-02-17 19:35:46 +00:00
Dustin Carlino
c750493f38
Avoid crashes with PolyLine shifting. #860
2022-02-17 14:19:38 +00:00
Dustin Carlino
4d9074571b
Regenerate 4 London maps. They wound up with parking lots and other
...
objects outside the study area boundary, because I changed the boundary
but forgot to first re-clip the .osm file. #794
2022-02-17 10:18:05 +00:00
Dustin Carlino
49f3ad6a8d
Remove some old London study areas, now that most boroughs are imported instead. #794 , #577
2022-02-17 10:10:41 +00:00
Dustin Carlino
611ab9fce1
new release
2022-02-13 17:00:34 +00:00
Dustin Carlino
4779e8e26f
Draw one-way arrows. #856 [rebuild] [release]
2022-02-13 09:02:09 +00:00
Dustin Carlino
062215a6f8
Make neighborhood entry/exit arrows visible on top of the fade. #856
2022-02-12 17:12:31 +00:00
Dustin Carlino
b969dbffe1
Save LTN binary proposals on web, invoking the sacred base64 dance to
...
work with browser local storage. #856
... and redraw filters after loading a proposal, which I broke a few
days ago
2022-02-10 17:38:08 +00:00
Dustin Carlino
205c17a2f0
Remove the command to do Raw->Map conversion in parallel, now that I've got pueue working. That command has major caveats with a few cities anyway. #326
2022-02-10 16:12:03 +00:00
Dustin Carlino
741040840a
Use pueue to import cities in parallel as separate processes. #326
...
We need to name elevation directories differently to avoid conflicts
2022-02-10 16:02:43 +00:00
Dustin Carlino
9054666a0b
Use RDP simplification to road center-lines when we glue them together after collapsing degenerate intersections. This is a followup to #833 .
...
And clean up some other things that RDP does better.
Fallout from regenerating everything:
- Enfield borough crashed, so removed it
- All UK scenarios are now much bigger, due to the changes in #853 being
picked up
- Poundbury gridlocks now due to that
2022-02-10 14:40:11 +00:00
Dustin Carlino
51e363b39b
Bring in some Bristol OSM fixes that unbreak a particularly ridiculous junction, so the LTN tool does better
2022-02-10 11:01:40 +00:00
Dustin Carlino
8c20298c69
...And forgot to upload data for previous
2022-02-09 22:23:48 +00:00
Dustin Carlino
2cca84c19b
Import most London boroughs. #794
...
I used the simplified boundaries from
https://skgrange.github.io/data.html . 4 boroughs failed early in
conversion, need to investigate separately. Plenty of weird clipping
issues with the Thames.
2022-02-09 22:12:16 +00:00
Dustin Carlino
d5f7756d5f
Import another part of Melbourne
2022-02-09 16:39:05 +00:00
Dustin Carlino
3729cba0c7
Always draw modal filters for the whole map, even in per-neighborhood views. For example, in the pathfinding view, now the 'before' route can cross existing filters anywhere, so it's kind of necessary to actually see them
2022-02-09 16:28:46 +00:00
Dustin Carlino
3de1ab3d9d
Detect existing modal filters in OSM and represent them more directly. #851
2022-02-09 15:59:04 +00:00
Dustin Carlino
7fdfdd5e10
Import Melbourne
2022-02-08 09:45:03 +00:00
Dustin Carlino
c1a58e683b
Use a 'back button' style a few places in the LTN tool, from UX session with Robin
2022-02-08 09:17:28 +00:00
Dustin Carlino
1c93af8850
new release
2022-02-06 17:41:19 +00:00
Dustin Carlino
2280a1088b
Tiny UI change to trigger that Sunday [rebuild] [release]
2022-02-06 09:27:51 +00:00
Dustin Carlino
69d2fdd39b
Standardizing app header and handling in the LTN tool. The select boundary UI was also missing button handlers...
2022-02-04 10:33:09 +00:00
Dustin Carlino
b06129da58
Add a way to temporarily flag off the slower blockfinding from #841 while working on maps that don't have the problem.
2022-02-04 10:07:54 +00:00
Dustin Carlino
bac81d25b8
Fix standard app buttons from LTN impact tool that weren't wired up
2022-02-04 10:00:26 +00:00
Dustin Carlino
ba84d564b8
Simplify the .zip release directory structure, getting rid of a nested directory that was originally meant to encourage people to use the script that captures logs. [rebuild]
...
This fixes a bug where switching from one of the other apps (LTN, 15m,
Santa) to the simulation crashes, because find_exe doesn't look in the
special subdirectory for game.
2022-02-04 09:49:47 +00:00
Dustin Carlino
b62954ef30
Add procgen houses for Levenshulme, since parts of the map are just missing buildings.
...
Regenerate the scenario in S3 now. Comparison with traffic counts barely
changed, so this didn't make much of a difference, but it can't hurt.
2022-02-03 14:40:57 +00:00
Dustin Carlino
9323b4dc37
Count throughput at border intersections #848
2022-02-03 14:29:50 +00:00
Dustin Carlino
ba5bf26072
Overhasty push on the last commit
2022-02-03 14:22:03 +00:00
Dustin Carlino
f22590ae0c
Refactor MapBorders, used to snap trips starting/ending off-map to a
...
border. Try weighting by road classification. #848
No behavioral change for anything except UK scenarios. Still not
regenerating those.
2022-02-03 14:20:03 +00:00
Dustin Carlino
b93850406f
Revive efforts on the generic desire line -> scenario pipeline. Include desire lines for zones that don't intersect the map boundary at all, with very simple border intersection snapping.
...
Note this changes all UK scenarios, but I'm not going to regenerate any
of them and put in S3 until I'm getting decent results at least in
Manchester.
2022-02-02 16:28:49 +00:00
Dustin Carlino
b9872f6a46
Quickly compare Levenshulme sensor data to generated scenarios, from the console (I guess the UI isn't as useful as I expected yet)
2022-02-02 14:55:53 +00:00
Dustin Carlino
487e1ba870
Move traffic counting code into synthpop. In the short-term, I want to quickly check a generated demand model against sensor data. Eventually some kind of calibration may live in this crate. Regardless, counts aren't just a UI concept.
2022-02-02 14:24:02 +00:00
Dustin Carlino
7509d0fa11
Don't draw border intersection outlines when they're filtered
2022-02-02 10:03:50 +00:00
Dustin Carlino
a7ded378e1
Apply the auto-LTN heuristics to the whole map with one click
2022-02-02 10:01:36 +00:00
Dustin Carlino
d6dc9de221
Add a mode to show quietness / rat runs for all neighborhoods at once
2022-02-02 09:51:01 +00:00
Dustin Carlino
635f508540
At really low zoom levels, draw modal filters using the scale-invariant
...
circles. Otherwise they're just impossible to see. Since they're the
most important thing to show in the LTN tool, seems worth it.
This helps proceed on #851
2022-02-02 09:20:10 +00:00
Dustin Carlino
067fdb8649
Parse GeoJSON data as ExtraShapes, to debug UK zones
2022-02-01 15:40:23 +00:00
Dustin Carlino
428451478c
Conveniently open OSM objects from LTN tool. #851
2022-02-01 14:58:03 +00:00
Dustin Carlino
c5d022d7be
Prevent traffic count tool from crashing when one dataset is mostly not filled out
2022-02-01 10:52:57 +00:00