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
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
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
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
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
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
067fdb8649
Parse GeoJSON data as ExtraShapes, to debug UK zones
2022-02-01 15:40:23 +00:00
Dustin Carlino
e5704f4a6d
Prevent many cases of blocks with overlapping geometry or that extend
...
too far, by not trying to trace near railways or cycle-only
bridges/tunnels. This is an imperfect heuristic, but it makes
significant progress in most maps.
2022-01-31 16:03:21 +00:00
Dustin Carlino
0058f99da2
Mechanical rename of TripEndpoint::Bldg to ::Building, mostly to kick off a [rebuild] [release]
2022-01-30 18:27:36 +00:00
Dustin Carlino
638e93c36a
Stop re-exporting stuff from synthpop in sim
2022-01-28 13:13:43 +00:00
Dustin Carlino
f171ddcb73
Get everything to build again...
2022-01-28 13:13:43 +00:00
Dustin Carlino
fefe8f5be2
Swap the traffic counts in the UI
2022-01-27 15:21:21 +00:00
Dustin Carlino
e542011614
More fluid UI for comparing traffic counts -- hotkeys
...
Had to change the API of on_click...
2022-01-27 15:13:24 +00:00
Dustin Carlino
edfd320908
A new generic UI to compare counts from two files.
...
Also moving some of the counts stuff to map_gui, accordingly
2022-01-27 14:26:36 +00:00
Dustin Carlino
be57975a91
Start to shape the LTN impact tool into something more general to plug a
...
demand model into routing and compare throughput before/after some
change.
Add in a bunch of filters for trips. (Most even work!)
2022-01-26 14:17:24 +00:00
Dustin Carlino
cabffc7f47
Similar refactor for ColorDiscrete. Anywhere separately managed a zoomed
...
and unzoomed batch should just migrate to this.
2022-01-26 11:35:40 +00:00
Dustin Carlino
5dfb8f26f0
Refactor ColorNetwork to use ToggleZoomed
2022-01-26 11:31:33 +00:00
Dustin Carlino
dfbd9785f3
While merging adjacent perimeters for the LTN tool, don't proceed if
...
intermediate results can't be turned into a polygon. It'll break
something later. #841
There's a particular bug where a perimeter can be turned into a polygon,
but after collapsing internal dead-ends, it can't.
If we don't do this, the LTN select boundary UI crashes, and reasoning
about block -> neighborhood mappings gets very hairy. I'd like to
address all the root causes of failing to make a polygon, but until
then...
TRADE-OFF: it _really_ slows down the select boundary UI.
2022-01-25 18:12:15 +00:00
Dustin Carlino
9192c6364b
Avoid crash in the blockfinder when merging partitions manually
2022-01-25 14:01:24 +00:00
Dustin Carlino
847ca07bc6
Add the quick-select feature to the blockfinder debugging too
2022-01-25 13:54:30 +00:00
Dustin Carlino
deb775b409
Debug block partitioning by color, to sanity check why some blocks are vanishing when merged
2022-01-25 13:39:40 +00:00
Dustin Carlino
e36337a91f
Use an enum for a more clear API to handle caching temporary
...
pathfinders. Should be no behavior changes yet
2022-01-23 09:37:45 +00:00
Dustin Carlino
e0965db22b
Switch LTN impact to World
2022-01-23 09:37:45 +00:00
Dustin Carlino
c6e26e5e20
Flesh out the LTN impact tool -- calculate impact after, add tooltips
2022-01-23 09:37:45 +00:00
Dustin Carlino
fc705318a9
Start a simple prediction of how vehicle traffic will be affected by an LTN scheme, based on a travel demand model. Super similar to Ungap's equivalent.
2022-01-23 09:37:45 +00:00
Dustin Carlino
2271924d2d
Fix build break from the refactor a moment ago
2022-01-21 14:19:53 +00:00
Dustin Carlino
9c1e04de0c
Refactor Ungap's trip file management, use it in the LTN tool. Now you
...
don't constantly lose the example routes you're trying out
2022-01-21 14:05:48 +00:00
Dustin Carlino
913c4874fe
Fix Ungap's label for unprotected turns -- depends on the driving side
2022-01-21 09:41:36 +00:00
Dustin Carlino
a6cd58346f
Move some misc stuff from game/common to map_gui, so LTN can use it
...
LTN crate builds, and appears to work!
2022-01-18 17:33:04 +00:00
Dustin Carlino
8dc2c68760
Move LTN code from game to its own crate. game crate builds, ltn doesn't
...
quite...
Changes along the way:
- take away the convenient jump to debug mode
2022-01-18 17:33:04 +00:00
Dustin Carlino
a22a38051f
Set up the boilerplate for splitting the LTN tool into its crate
2022-01-18 17:33:04 +00:00
Dustin Carlino
a14d6b3810
Better errors when core Line stuff breaks.
...
... and plumbing it everywhere
2022-01-18 10:26:33 +00:00
Dustin Carlino
bd340a1970
Switch from std::fs to fs_err. When files aren't found, the error message actually includes the path!
2022-01-17 17:30:51 +00:00
Dustin Carlino
cfddc5be1b
Properly clear LTN state when switching maps, even from different apps. [rebuild] [release]
2022-01-16 09:41:50 +00:00
Dustin Carlino
215ca3438d
Color neighborhoods based on quietness (same metric shown in the rat run tab)
2022-01-15 19:04:20 +00:00
Dustin Carlino
973f733d36
Preview cell connectivity from the browse neighborhoods screen
2022-01-15 18:23:13 +00:00
Dustin Carlino
6b79201d21
Fix an edge case for cell connectivity
2022-01-15 18:00:11 +00:00
Dustin Carlino
3a60a465e0
Remove blocks from the current neighborhood, possibly creating a new one
...
The code is quite a mess, but it works...
2022-01-15 17:52:38 +00:00
Dustin Carlino
78a32f28f7
Fix neighborhood colors after adjusting boundaries
2022-01-15 17:15:34 +00:00
Dustin Carlino
e2621c40f4
Speed up the select boundary UI by caching single blocks
2022-01-15 17:04:31 +00:00
Dustin Carlino
c18cc762bb
Finally make the select boundary UI properly update the partitioning as
...
we make changes! So far, just handling "stealing" a block from another
neighborhood. The other neighborhood can wind up being totally deleted.
2022-01-15 16:57:59 +00:00
Dustin Carlino
6376a74c7a
Initially draw the red outline in the LTN select boundary mode
2022-01-15 15:58:45 +00:00
Dustin Carlino
b5e540d588
Fix state management in the LTN tool. Previously, changing maps, then going back to home screen from browse was broken
2022-01-15 15:42:01 +00:00
Dustin Carlino
f82ee8e1fa
Show how many streets in a neighborhood allow through-traffic
2022-01-15 15:32:17 +00:00
Dustin Carlino
2a154bd679
Avoid crashign when drawing cells. Bridges and tunnels can leak out of
...
boundary polygons.
2022-01-14 17:03:19 +00:00
Dustin Carlino
3cf846f870
Include LTN cells in the geojson export. Very slow, but working,
...
implementation
2022-01-13 17:52:56 +00:00
Dustin Carlino
509217b024
Start a simple GeoJSON export for LTNs. Cells are missing.
2022-01-13 15:37:47 +00:00
Dustin Carlino
412e0d585d
Refactor cells -> grid, in preparation to generate cell outlines
2022-01-13 12:56:51 +00:00