Dustin Carlino
e66b058439
Disable a simulation sanity check that happens frequently and hasn't had
...
problems in a long time. Marginal speedup of a few seconds. #368
2020-10-16 12:29:46 -05:00
Dustin Carlino
491f4bbffe
Speed up the simulation by replacing BTreeMaps with a simple Vec lookup. #368
...
No behavioral changes. Dramatic performance boost:
- 8 hours of downtown: 170s down to 135s
- prebaking: 3m33s down to 3m4s
2020-10-16 12:10:05 -05:00
Dustin Carlino
422882c03b
Ditch cpuprofiler in favor of cargo flamegraph. Add a tool that just
...
runs a scenario headlessly, since that's easier than sending a few curl
commands to the API. #368
2020-10-15 17:12:38 -05:00
Dustin Carlino
b3525f95a2
Enable profiling in the headless server. #368
...
(Although actually, I'm liking cargo flamegraph better than cpuprofiler.
Might rip out the support for cpuprofiler.)
2020-10-15 16:21:57 -05:00
Dustin Carlino
39ec4a13de
Import forests as park areas (for Salzburg) and add a warning about JOSM. #366
2020-10-15 15:10:12 -05:00
Dustin Carlino
4a197fa13d
Until there's a faster implementation, just flag-guard selecting unzoomed agents
2020-10-15 14:58:07 -05:00
Dustin Carlino
38394c4a08
Comment some code to clarify things in #365 , and switch the color for
...
selecting unzoomed agents
2020-10-15 14:58:07 -05:00
Dustin Carlino
028d1df62c
Allow selecting and clicking unzoomed agents. [rebuild]
2020-10-15 14:58:07 -05:00
Dustin Carlino
1e0d8536a4
Fix #367 by making all constructors of SandboxMode appropriately defer
...
work that must happen after the map/scenario are loaded.
2020-10-14 17:43:28 -05:00
Dustin Carlino
e7fb9b1a4a
Handle the info panel rewind-sim case for #367 . I'm increasingly happier
...
with how the async reactions to loading SandboxMode are.
2020-10-14 17:24:39 -05:00
Dustin Carlino
81dae1e39c
Slightly simplify some plumbing of variables through nested closures, by
...
remembering that FnOnce exists
2020-10-14 15:36:08 -05:00
Dustin Carlino
5ef48a5d1c
Express the SandboxMode constructor as a full state machine, with the
...
ability to defer things like pushing the time warp state onto the stack
of states. This fixes the edit mode case of #367 , but other callers of
SandboxMode::new still need updating.
2020-10-14 15:13:10 -05:00
Dustin Carlino
20b4f15e86
Another attempt to write down a sort of roadmap for modularizing abst
2020-10-14 13:14:53 -05:00
Dustin Carlino
c0513a3d64
Reduce time to park/unpark offstreet when --infinite_parking is used.
...
Downtown forms gridock just from everyone pouring into Harborview! The
point of --infinite_parking is to simplify the sim by not modelling the
impact of parking. #368
2020-10-14 12:40:26 -05:00
Dustin Carlino
84a65c293b
Make it easier to test scenario modifiers by specifying them on the CLI
2020-10-14 12:16:38 -05:00
Dustin Carlino
ab270ce9f5
Some versions of python apparently need to explicitly be told utf8
...
encoding to read a .json
2020-10-14 11:28:02 -05:00
Dustin Carlino
cd1d790659
And fix the headless example scripts to not pass an argument to headless, woops
2020-10-14 10:49:24 -05:00
Dustin Carlino
eb7ee6d57d
Fix a few build warnings and breaks, and document the headless server a
...
bit more
2020-10-14 10:46:18 -05:00
Dustin Carlino
aee053312d
Document strategy for resolving gridlock
2020-10-13 11:44:13 -05:00
Dustin Carlino
bc856a4c2b
Fix the signal demand dash, broken by 1906fb0913
. And enable warp to ID for non-dev mode too.
2020-10-13 10:22:19 -05:00
Dustin Carlino
1906fb0913
Remove the GetDrawAgents indirection. Originally the UI could pull the
...
set of agents to draw either from the simulation or from this
"time-traveler" plugin, which would let you rewind sim time. That plugin
is long gone, and it never worked well, because much of the UI would use
the GetDrawAgents to select something, then query the live sim for lots
of details anyway. The plugin never served all of those calls, so the
results would be kind of out-of-sync anyway.
There are some parts of the UI that need to temporarily not draw agents.
Use the same suspended_sim trick that edit mode does.
2020-10-12 11:52:05 -05:00
Dustin Carlino
4d549f80df
A fresh attempt at overviewing the map model docs
2020-10-11 12:54:17 -07:00
Dustin Carlino
b9efdaef20
Refactor the trip timeline code, fixing the icon spacing. Temporarily
...
take out the delays from the timeline -- they complicate the code. Will
add back in later, once the code's a little more clear.
2020-10-11 11:35:00 -07:00
Dustin Carlino
a1c53d5e1c
Humble start to adjusting how distances and durations are printed in the UI. #331
...
Also trimmed out a few old UI settings; they kind of started as
experiments, but now the alternative feels useless to maintain.
2020-10-11 10:45:13 -07:00
Dustin Carlino
df873a5cf9
Add an option to totally disable turn conflicts in the simulation. Can we make progress on large scenarios only with vehicle queueing rules? (Didn't evaluate this yet, don't want to burn through laptop battery currently)
...
Also fix zooming in on traffic signals crashing with freeform policy
2020-10-11 10:14:48 -07:00
Dustin Carlino
212ad761fd
Switch to Box<dyn Error> in abstutil. This makes it easier to have
...
higher-level APIs return some kind of string error. Pretty much nowhere
do we care about error types.
2020-10-11 08:36:02 -07:00
Dustin Carlino
b9c8e2231e
new release
2020-10-10 14:02:34 -07:00
Dustin Carlino
a2d36274a2
Prep for release [rebuild]
2020-10-10 13:11:11 -07:00
Dustin Carlino
1791ef70a5
More cleanup of https://github.com/dabreegster/abstreet/pull/363 : fix the build break in info/trip
2020-10-10 12:31:52 -07:00
Dustin Carlino
e38858129b
Cleanups after https://github.com/dabreegster/abstreet/pull/363 :
...
- cargo +nightly fmt
- upload new prebaked data
2020-10-10 12:24:42 -07:00
Sam
4c5a858238
Delay highlighting ( #363 )
...
* Initial storing of intersection delays
* Initial highlighting of delays on route
* Added label of delay
* Info overlay works
* Added supoprt for pedestrian delays (only intersection delay currently)
Bike also works, but is treated as a car, so the avg speed is flagged as very slow (Needs fix)
* Capitalised describe trip phase
Now uses min of (speed limit and vehicle max speed) for the maximum speed check
Added trip blocked time query
Lots of work on tool tips
Icons are broke
* Nearly complete, just fmting and a crash to fix
Color assertion?
* Fixed text font colour crash
Added new custom TextSpan size function
* Cargo +nightly fmt
* Cargo +nightly fmt
* Clion auto import formatting
Doesn't quite match the existing "changes"
* Fixing merge issues
* Fixing icon placement issues
* Requested changes (Part 1)
* Requested changes (Part 2)
Co-authored-by: Sam <a>
Co-authored-by: Dustin Carlino <dabreegster@gmail.com>
2020-10-10 12:23:02 -07:00
Dustin Carlino
94449e49e0
Launch the web version! #21
2020-10-09 22:55:13 -07:00
Dustin Carlino
34e95dd861
WIP load scenarios
2020-10-09 22:31:31 -07:00
Dustin Carlino
d4358586d6
Refactor the MapLoader into a more generic file loader...
2020-10-09 17:26:11 -07:00
Dustin Carlino
fbf651f1c2
Give up on generic_prebake_all, an unused method that would very generically crawl all challenges, calculate their scenario, and prebake results for them. It forces GameplayMode -> Scenario to have a certain form, which seemingly blocks transitioning to an asyncish loading screen.
2020-10-09 16:36:31 -07:00
Dustin Carlino
be3b2e8abb
Finally, cut over the last app.switch_map caller
2020-10-09 16:27:28 -07:00
Dustin Carlino
2cd59ead37
Remove the special handling for synthetic maps, which were JSON RawMaps
...
that could directly be loaded. The few examples have been long broken
and unused. They complicate map loading, because they have a weird path.
2020-10-09 16:08:11 -07:00
Dustin Carlino
3feb9d6dbe
Make the proposals picker use the new map loading mechanism
2020-10-09 15:57:20 -07:00
Dustin Carlino
03eac377d6
Convert ScreenshotTest away from app.switch_map
2020-10-09 15:07:35 -07:00
Dustin Carlino
2ad832d01a
Whittle down callers of app.switch_map: changing color scheme. (As a
...
bonus, now this doesn't reset the sim and everything!)
2020-10-09 14:51:35 -07:00
Dustin Carlino
a8b41370bc
Refactor the CityPicker HTTP trick into a native/web loading screen
...
state for switching maps. Use it just from the CityPicker for the
moment...
2020-10-09 14:35:02 -07:00
Dustin Carlino
e4707ca223
Ehem, fix build break in web from last commit. Hard to test a single commit against both native/web, because switching targets clears the entire build cache...
2020-10-09 14:04:56 -07:00
Dustin Carlino
1ae4c6e41f
Make the web CityPicker do all of the same stuff that app.switch_map does
2020-10-09 14:02:08 -07:00
Dustin Carlino
1de7065562
Move a few things from App down to PerMap: layer, suspended_sim,
...
prebaked
2020-10-09 13:50:30 -07:00
Dustin Carlino
906dc0a8e5
Rearrange responsibilities of App::new and PerMap::new, to prepare for
...
cleaning up switch_map
2020-10-09 13:35:51 -07:00
Dustin Carlino
dd0df29571
Suppress the trip summaries tab if we have no prebaked data to compare to
2020-10-09 13:04:36 -07:00
Dustin Carlino
b9d3052c87
Show the elapsed time in the web loading screen, to kind of reassure people things aren't frozen
2020-10-09 09:14:24 -07:00
Dustin Carlino
f1ec2fa4c4
Convert more doc comments for abstutil, convert_osm, geom, sim
2020-10-08 21:13:08 -07:00
Dustin Carlino
93c295b9ae
Convert comments on public things to doc comments for map_model.
2020-10-08 20:45:41 -07:00
Dustin Carlino
7236fa558f
Fix clicking on regions in citypicker. #21
2020-10-08 17:02:08 -07:00