Dustin Carlino
fccc98205c
Refactor: Store the input PathRequest inside the resulting Path. This
...
saves lots of callers from cloning the request and separately plumbing
around the requested start/end distance. Also a step towards exposing
more granular distance crossed in a path for #392 .
Still a few more places to simplify, but will do in a separate, smaller
change.
2020-12-16 12:55:57 -08:00
Dustin Carlino
2b4b92664e
Much needed refactor: map.pathfind() returns a Result, stating the failed request. Many call sites were cloning the request and doing this anyway.
2020-12-16 10:06:12 -08:00
Dustin Carlino
16392a461f
Refactor: GeomBatch::load_svg directly takes EventCtx or GfxCtx. The prerender struct should ultimately not be exposed outside of widgetry.
2020-12-15 11:44:58 -08:00
Dustin Carlino
02dd3613cd
Refactor: Rename txt.render_to_batch to txt.render_autocropped, and make
...
it take EventCtx or GfxCtx
2020-12-15 11:35:40 -08:00
Michael Kirk
375e0caeb8
integrate census scenario ( #426 )
...
#424
2020-12-14 20:27:57 -08:00
Michael Kirk
8b9b3ce2b1
census areas import ( #425 )
...
#424
2020-12-14 17:48:47 -08:00
Dustin Carlino
3c2c3cda5a
Output lane width as feet in the Streetmix export, not meters.
...
Also few unrelated tiny wording changes in the experiment
2020-12-14 16:13:32 -08:00
Dustin Carlino
607a8757dd
Use widgetry to handle quitting things, so we don't just blow up on the
...
web.
2020-12-11 13:18:20 -08:00
Michael Kirk
d0f093d95a
fix compile error ( #420 )
2020-12-10 15:47:00 -08:00
Dustin Carlino
77a37f897b
Wire together a UI to generate census-based scenarios
2020-12-10 09:35:50 -08:00
Dustin Carlino
dbbfe18076
Link to OSM objects from the area info panel, to help debug water polygons easily
2020-12-09 16:41:08 -08:00
Dustin Carlino
3d361074ab
Draw traffic signals changing over time in the experiment
2020-12-08 09:05:06 -08:00
Dustin Carlino
86814f6867
Make A/B Street's minimap specialize the generic widget, instead of duplicating code.
2020-12-07 15:40:35 -08:00
Dustin Carlino
f57fb8f2f6
Run the experiment on the web
2020-12-02 13:44:10 -08:00
Michael Kirk
727fe32fdd
little typo in summaries table
2020-12-02 10:51:46 -08:00
Dustin Carlino
57963126fa
Fold number of housing units into Building; ditch the extra file approach.
2020-12-01 12:43:19 -08:00
Dustin Carlino
2ebaf99e0d
A fresh attempt at finding the root causes of gridlock map-wide
2020-12-01 10:50:05 -08:00
Dustin Carlino
b5ea263fc1
Expose the blocked-by graph through the API, and add root-cause analysis
...
to the UI debugger. #392
2020-11-30 17:01:15 -08:00
Dustin Carlino
8501ec70f9
Make the blocked-by graph more exploreable. Remove older debug code that
...
did something similar. #392
2020-11-30 15:15:13 -08:00
Dustin Carlino
6dd14c8bed
Don't crash when jumping to nonexistent trip or when clicking
...
follow/unfollow for a trip without an agent.
2020-11-30 14:20:37 -08:00
Dustin Carlino
be3d1dc83b
Refactor github workflow, since most steps are OS-independent. Build all of the separate binaries. [rebuild] [release]
2020-11-29 16:01:18 -08:00
Dustin Carlino
2716c44bf7
Fix commuter patterns dashboard, which broke whenever we cleared the sim upon setup
2020-11-29 08:59:10 -08:00
Dustin Carlino
d6c179385e
Start in night mode, and adjust minimap coloring there
2020-11-28 10:19:21 -08:00
Dustin Carlino
58b6c66c2b
Consolidate console_log setup into abstutil, now that there are multiple binaries that should all have the behavior.
2020-11-26 14:40:05 -08:00
Dustin Carlino
ebcae62652
Slightly simplify how some states specify what map objects can be
...
selected and clicked on.
2020-11-26 13:42:31 -08:00
Dustin Carlino
65a4b578be
Experiment with separating concerns in some simple States.
...
This is closer to a callback style, which might be more familiar to
people coming from other frameworks.
It's a pretty mechanical refactor now, but the hope is that looking at a
bunch of on_mouseover() functions will reveal further refactors more
easily than a bunch of monolithic event() functions.
I don't think every State fits this pattern; things like SandboxMode
need to carefully orchestrate the order of things. Make simple things
easy and hard things possible.
2020-11-26 13:11:12 -08:00
Dustin Carlino
70b40a7148
Stop doing custom stuff to spawn scenarios in the tutorial. Integrate
...
with SandboxLoader, which handles loading prebaked results on the web
correctly. #407
2020-11-25 12:15:22 -08:00
Dustin Carlino
4b6df883fb
Organize challenges into a subdirectory, splitting out prebaking code
...
and bringing in cutscene, just to organize things a little better.
2020-11-25 11:31:37 -08:00
Dustin Carlino
b6ebee0dd8
Tiny refactor: Drawable::empty(ctx)
2020-11-25 11:19:26 -08:00
Dustin Carlino
903eab1bc4
Remove some old savestating optimizations from the simulation. The
...
optimizations avoided serializing Analytics and paths of to-be-created
agents, to reduce the file size. The logic to manage all of this isn't
worth the complexity anymore, because:
1) We don't queue up a bunch of spawn commands anymore; we defer
pathfinding until the last minute anyway.
2) We're not using savestates except for occasional manual debugging.
Previously, there was an idea to quickly preview prebaked traffic
mid-day. That idea was never fleshed out.
2020-11-24 15:38:20 -08:00
Dustin Carlino
314f01496e
Save/restore camera state per map in all map_gui apps too.
2020-11-24 11:53:50 -08:00
Dustin Carlino
16b561a408
Move game/helpers into game/common. And fix github rustdoc workflow
2020-11-23 23:39:55 -08:00
Dustin Carlino
db736ceab5
Collapse some of the module indirections in the game crate.
2020-11-23 17:58:32 -08:00
Dustin Carlino
f3ff910c37
Cleanup from the great app split:
...
- move show_zorder into DrawMap
- reorganize modules in map_gui
Next is to reorganize/collapse modules in game.
2020-11-23 17:58:32 -08:00
Dustin Carlino
c450922211
Split out the 15min tool to its own crate.
2020-11-23 17:58:32 -08:00
Dustin Carlino
9f422033e9
Make a SimpleMinimap for map_gui. Will refactor later.
2020-11-23 17:58:32 -08:00
Dustin Carlino
c3db4de087
Lift the Navigator tools to map_gui.
2020-11-23 17:58:32 -08:00
Dustin Carlino
139d435bd3
Split out the OSM viewer to its own crate, porting over a simple form of current_selection. Temporarily omit the minimap and navigator from it.
2020-11-23 17:58:32 -08:00
Dustin Carlino
ad0d1ae7a4
Split out the OSM parking mapper into a separate app, temporarily
...
WITHOUT mouseover.
2020-11-23 17:58:32 -08:00
Dustin Carlino
e6d21d81e7
Add the city picker to the experiment, as a way to lift it to map_gui.
2020-11-23 17:58:32 -08:00
Dustin Carlino
859d78f2cf
Refactor the CLI flag parsing that all apps will share.
2020-11-23 17:58:32 -08:00
Dustin Carlino
ab2f6fefec
Split the controls experiment into a separate binary, get it to draw a
...
map way more simply than the game
2020-11-23 17:58:32 -08:00
Dustin Carlino
558eb6f716
Extract DrawMap into a separate crate, along with everything else it
...
depends on.
The goal is to be able to split things like the OSM viewer, parking
mapper, and 15 min tool into separate crates from the game, while still
sharing lots of code.
2020-11-23 17:58:32 -08:00
Dustin Carlino
67446d32b9
Refactor and rearrange misc App/PerMap things to prepare for extracting some shared functionality to other crates.
2020-11-22 19:48:09 -08:00
Dustin Carlino
f7504bf4d1
Tease AgentCache out of DrawMap
2020-11-22 19:35:35 -08:00
Dustin Carlino
0574af0b64
Move UnzoomedAgents management out of App and into AgentCache
2020-11-22 19:24:07 -08:00
Dustin Carlino
26a7277f50
Reorganize zorder_range out of PerMap and into DrawMap.
2020-11-22 19:05:09 -08:00
Dustin Carlino
abf3dbc859
Don't specify a widgetry backend by default; force every user to set the feature explicitly.
2020-11-22 18:35:03 -08:00
Dustin Carlino
0dd246c83f
Remove the old --num_agents flag, used for debugging spawning agents
2020-11-22 18:27:25 -08:00
Dustin Carlino
ed8fe187cc
new release
2020-11-22 13:41:58 -08:00