Dustin Carlino
db736ceab5
Collapse some of the module indirections in the game crate.
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
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
f7504bf4d1
Tease AgentCache out of DrawMap
2020-11-22 19:35:35 -08:00
Dustin Carlino
f656468580
widgetry refactor: store all keys currently held down, let anyone query
2020-11-22 13:24:08 -08:00
Dustin Carlino
e43f551af6
New query and debug viewer to get the full graph of agents waiting on others. #392
2020-11-20 14:19:19 -08:00
Dustin Carlino
32dea68f5d
Measure how many simulation events actually result in something
...
changing. #368
2020-11-16 11:51:24 -08:00
Dustin Carlino
69699600ea
Prototype filling in the gaps near one-way roads. Needs more filtering
...
out, but solid start. #230
Regenerate map data, since the Area object changed.
2020-11-12 14:21:08 -08:00
Dustin Carlino
c96f84341a
Incorporate intersection corners in the around-the-block polygon. #230
2020-11-12 13:41:47 -08:00
Dustin Carlino
1b6af3dfb1
Prototype a debug mode tool to trace a polygon on the interior of any "loop" of roads. Aka, find the polygon if you "walk around the block." This can be used to fill in the blank space between dual carriageways. #230
...
Algorithm needs some work -- it doesn't trace along sidewalk corners,
and it fails for some starting lanes.
2020-11-12 12:53:41 -08:00
Dustin Carlino
e3b9c42506
Refactor: panel.replace() will set the same name on the new element
2020-11-10 11:49:55 -08:00
Dustin Carlino
ac6eff31ef
Rename some maps to remove the now-redundant city. #326
2020-11-05 15:24:02 -08:00
Dustin Carlino
3d84defb71
Also organize screenshots by city. #326
2020-11-05 14:42:40 -08:00
Dustin Carlino
67530bec07
Future-proof file organization by changing map_name from a string to a
...
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.
2020-11-04 17:26:32 -08:00
Dustin Carlino
0167b4be31
A tiny start to the great UI button refactor: make the "X" button
...
consistent. #331
2020-10-28 12:04:36 -07:00
Dustin Carlino
c2b6c917ae
Generalize the State/Transition GUI structure, moving it into widgetry.
...
Nothing about it is specific to A/B Street, and other apps built with
widgetry could organize themselves as a stack of states. This is also a
first step towards sharing more common code between A/B Street and a
future OSM viewer.
Mostly mechanical change. Some more cleanup / documentation coming up
next.
2020-10-22 17:34:59 -07:00
Dustin Carlino
4a3ea8b5c7
Add a tool to export a road to streetmix. Untested, because still having trouble making manual API calls.
2020-10-22 16:29:42 -07: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
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
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
f258c50595
Organize import blocks using https://github.com/dabreegster/organize_rust_imports
2020-10-05 20:29:22 -07:00
Dustin Carlino
27d94945c6
Manually move mod block after the use block, to match what CLion does.
2020-10-05 20:29:22 -07:00
Dustin Carlino
8e49aac42f
Make traffic seitan close roads that agents are about to use, causing a
...
crash. And start to figure out the debugging story.
2020-10-05 08:49:16 -07:00
Dustin Carlino
98d26d8979
Refactor calls to calculate_current_selection
2020-10-03 16:37:56 -07:00
Dustin Carlino
49f4d3e3dc
Add a tool to see where people blocked on a traffic signal are trying to go ( #354 )
2020-09-29 15:22:05 -07:00
Dustin Carlino
84891f8b96
Some map fixes to prepare for alleyways:
...
- 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.
2020-09-27 11:21:35 -07:00
Dustin Carlino
83ff6db16c
Improve the signal demand dash with keys to change hour. And slightly
...
refactor styled keys in text.
2020-09-19 10:18:23 -07:00
Dustin Carlino
d9e50a7e38
Use .into() for specifying keys to widgetry more ergonomically. #253
2020-09-18 09:26:14 -07:00
Dustin Carlino
ec28132286
Implement Yuwen's split jump to time/delay UI [rebuild]
2020-09-14 10:28:25 -07:00
Dustin Carlino
d8011a90f4
Handle live edits by just aborting any current trips that cross an
...
edited road or closed intersection. #312
Along the way, refactor more context plumbing in DrivingSimState.
2020-09-09 15:03:14 -07:00
Dustin Carlino
5c6e781016
Collapse a few more of the Transitions
2020-09-07 10:49:20 -07:00
Dustin Carlino
38ba8d55f3
Produce proper lanes for left-hand driving by intervening at the LaneSpec layer for #311 . Since London looks reasonable, opt it into the screenshot tests
2020-09-04 10:01:06 -07:00
Dustin Carlino
de6a12e472
After much deliberation, rename Composite -> Panel ( #253 )
2020-08-27 12:12:44 -07:00
Dustin Carlino
2935d2379b
Mechanical rename of ezgui -> widgetry, a much better name to enchant the Rust community. #253 [rebuild]
2020-08-27 10:37:04 -07:00
Dustin Carlino
8c1686c25f
Add a tool to screenshot all of the maps currently under diff testing. This tiny bit of automation saves me some manual labor.
2020-08-26 09:41:03 -07:00
Dustin Carlino
aa3bd5073b
Make some new methods on Road to handle child lanes from left-to-right,
...
not split by direction. Update many callers, and lock down the
visibility of the old methods.
Tested a few maps manually to make sure there's no behavioral diff. Only
problem right now is the z-order of adjacent lanes covering up half of
the white stripe sometimes. Have some ideas to fix that later, and not
_super_ important in the meantime.
2020-08-25 12:08:54 -07:00
Dustin Carlino
b41b52d7bd
fix crash in debug mode when opening info panels
2020-08-24 09:01:27 -07:00
Dustin Carlino
66151e8aa4
Dump route goldenfiles during the smoke-test, so that it's run when all
...
data is regenerated. (Ideally screenshots would also be automated, but
that's a little trickier.)
_NOW_ regenerate all data! The only diff anywhere is the binary map
format, so there's confidence the last few commits haven't changed
anything.
2020-08-22 10:53:05 -07:00
Dustin Carlino
0749a2ac7b
start keeping goldenfiles for bus routes, similar to the screenshot diff test. this will make it much easier to finish up bus matching without accidentally regressing somewhere
2020-08-10 16:03:04 -07:00
Dustin Carlino
b881fa605b
convert the last caller away from wizard...
2020-08-07 13:52:27 -07:00
Dustin Carlino
f61881f6fa
move more UIs away from wizards. editing signal offset broke, because
...
the perma format doesn't encode offset yet
2020-08-07 13:33:58 -07:00
Dustin Carlino
480156c7c6
convert more Wizards to ChooseSomethings
2020-08-06 10:21:01 -07:00
Dustin Carlino
e68df0ed1a
and make tool_panel normal, ending the strange reign of WrappedComposite
2020-08-04 12:34:58 -07:00
Dustin Carlino
225abcd112
clean up old UserInput APIs from long, long ago
2020-08-04 12:00:07 -07:00
Dustin Carlino
5fe3cc5f8a
slowly whittle down public surface of ezgui
...
- stop referencing Prerender when easy
- default_font_size hasn't been used since the great typography refactor
some of this harms the usability of map_editor, but that's fine, because
the UX is awful anyway, and nobody should be using this except for me
very occasionally. long-term fate of it is to go away.
2020-08-04 11:36:47 -07:00
Dustin Carlino
a9998a0735
tool to find huge intersections, usually where lane count is way off
2020-08-03 18:12:18 -07:00
Dustin Carlino
f0ecd914b5
emit Outcome::Changed for dropdowns, checkboxes, spinners. simplify client code
2020-08-03 14:27:44 -07:00
Dustin Carlino
41f4cfff6d
tool-assisted refactor of ezgui Outcome
2020-08-03 13:42:59 -07:00
Michael Kirk
3879753cd2
revert some switches back to checkboxes ( #252 )
...
* revert some switches back to checkboxes
partial revert of 90bb4ac0
In many ways switches and checkboxes seem interchangeable, but in certain
contexts one may be more appropriate.
For an overview that I mostly agree with:
https://uxplanet.org/checkbox-vs-toggle-switch-7fc6e83f10b8
2020-07-28 13:58:20 -07:00
Dustin Carlino
328cbcd1f1
stop melting my laptop when generating scenarios
2020-07-23 09:15:25 -07:00
Dustin Carlino
f1ef02b907
store Tags in map_model objects, to reap its benefits anywhere in the codebase. serialization format doesnt change!
2020-07-23 07:43:50 -07:00
Dustin Carlino
4f8f659dfb
widget replacement keeps margins from the old
2020-07-19 11:28:12 -07:00
Dustin Carlino
ccf213ded9
fix pioneer square station snapping. rust-geo's FindClosest has a bug.
...
>_<
2020-07-16 13:22:05 -07:00
Dustin Carlino
98b9115f88
better tool to explore degenerate roads
2020-07-14 21:02:33 -07:00
Dustin Carlino
b68e233125
trying to handle gridlock near tiny roads for #114 . treat the entire
...
sequence as one thing to lock -- don't start it until it's clear, and
prevent new conflicting turns once started. disable block-the-box
protection inside.
I'm not sure this is helping at all yet. maybe it's just more complex.
2020-07-13 12:30:24 -07:00
Dustin Carlino
187c8ad4c5
consider again the possibility of merging some degenerate roads
2020-07-07 21:39:42 -07:00
Dustin Carlino
4aaa41dd13
zip screenshots in dropbox, because managing individual files keeps crashing the daemon
2020-07-07 16:31:52 -07:00
Dustin Carlino
3eb8db3f75
interpret OSM center lines as the physical center of the road (excluding
...
sidewalks), not as the divider between the two directions. this
dramatically changes geometry everywhere for the better.
thanks to
https://wiki.openstreetmap.org/wiki/Proposed_features/placement for
clear explanations. will be looking next at interpreting this tag.
also temporarily removing screenshots, because uploading individual
files and waiting for dropbox to sync isn't sustainable
2020-07-07 15:52:51 -07:00
Dustin Carlino
c3858b9cdd
mark construction lanes appropriately. this broke when adapting to the new tagging on the west seattle bridge, but there are some roads tagged this way in krakow.
...
(not regenerating all the maps yet, expecting to do more work on this
today)
2020-07-06 07:43:42 -07:00
Dustin Carlino
f02fa8bddd
add a tool to export roads to https://github.com/d-wasserman/shared-row
2020-07-04 11:29:45 -07:00
Dustin Carlino
4f507ef96a
refactor Composite style
2020-07-03 13:01:54 -07:00
Dustin Carlino
8b006c037d
slim down sidewalk corners, at the repeated urging of julian
2020-07-02 17:12:08 -07:00
Javed Nissar
1f58cbf16d
Refactor event update loop ( #59 )
...
* Refactor event update loop to enable multiple game update types
* Implement pan event to improve panning with cursor at edge of screen and
fixed formatting
2020-07-01 17:47:30 -07:00
Dustin Carlino
1422643973
finish the ezgui layout refactor. most things are way more consistent now, and with less code
2020-07-01 15:39:04 -07:00
Dustin Carlino
834f060462
yet more layout refactor
2020-07-01 15:31:52 -07:00
Dustin Carlino
2881341b63
make parking lots hideable. dont snap parking and sidewalk hints to
...
light rail. not regenerating all the maps again yet to avoid some churn
2020-06-26 17:02:14 -07:00
Dustin Carlino
b3a480b4c1
clean up old trip positions from Sim. implement the all-route debugger
...
in a more straightforward way
2020-06-25 09:20:54 -07:00
Dustin Carlino
eedf80bfef
tiny tweaks from final testing:
...
- cutscene wording
- elide traffic tab on parking lanes
- dont crash when traffic signal data needs fixing, just warn more
loudly. this lets lanes near some signals actually be modified
2020-06-21 11:38:34 -07:00
Dustin Carlino
c66564dd9d
try out a new style for road labels
2020-06-19 20:12:25 -07:00
Dustin Carlino
5a9fb4ceef
starting work on a brute-force traffic signal heuristic. organizing
...
existing code better.
2020-06-19 13:07:42 -07:00
Dustin Carlino
287d56efd9
generalizing the old gridlock checker. removing unused savestate_every
...
support. reimpl it later using the callbacks if needed.
2020-06-09 14:29:35 -07:00
Dustin Carlino
2445bddeb9
prepping to work on sim step
2020-06-09 12:39:31 -07:00
Dustin Carlino
957ee65fc9
starting to place markers for story map. cleaning up inconsistent order
...
of (app, ctx)
2020-06-04 11:00:19 -07:00
Dustin Carlino
a3724e4b4d
boilerplate for a story map editor. also make close buttons consistent
2020-06-03 21:52:54 -07:00
Dustin Carlino
47e6a6b76a
clean up old design notes
2020-05-24 11:07:29 -07:00
Dustin Carlino
2d69392e9c
move the kml debugging to a separate mode
2020-05-16 11:58:55 -07:00
Dustin Carlino
3145326207
start a tool to understand popular destinations. remove dot map,
...
superceded by live population map
2020-05-12 12:54:35 -07:00
Dustin Carlino
7f867fda70
trim down map file size a bit by not storing building OSM tags, which
...
weren't useful anyway. 873MB for all maps down to 786MB. huge_seattle
343MB to 305MB
2020-05-08 14:46:36 -07:00
Dustin Carlino
c0b5ead639
display the blocked_by graph in debug mode
2020-04-29 12:34:09 -07:00
Dustin Carlino
a104088ccd
pt2: rest of sim layer, which forces the UI changes too
2020-04-15 15:48:16 -07:00
Dustin Carlino
fadae3aa85
improve checkbox API, use it for colored minimap checkboxes
2020-04-06 11:12:23 -07:00
Dustin Carlino
b09c7d2726
moved rest of colors over
2020-04-04 14:15:34 -07:00
Dustin Carlino
4d8ab45750
slowly moving string colors to the struct
2020-04-04 10:59:51 -07:00
Dustin Carlino
fd80a7f2a9
starting the grand colorscheme refactor (there really are lots of grand
...
refactors lately). plumbing and replacing constants / floating methods
2020-04-04 10:16:18 -07:00
Dustin Carlino
ef90c6935c
use the locate header button to follow/unfollow people
2020-04-01 15:50:11 -07:00
Dustin Carlino
3900494b2e
add back some form of the follow/unfollow control
2020-03-30 10:15:53 -07:00
Dustin Carlino
12c0809b23
converting the spawner over, one of the most complex
2020-03-28 17:48:50 -07:00
Dustin Carlino
56544d6b14
working on debug mode
2020-03-28 17:09:36 -07:00
Dustin Carlino
6172fa5215
prototyping a different way of specifying contextual actions
2020-03-28 14:55:54 -07:00
Dustin Carlino
69dab9e27d
typography overhaul... [rebuild]
2020-03-26 15:42:37 -07:00
Dustin Carlino
9d3adfbe40
try the dot map as a debug-only overlay. slow and weird, but getting
...
somewhere.
2020-03-21 13:10:50 -07:00
Dustin Carlino
7edb8a6190
rename Widget -> WidgetImpl, ManagedWidget -> Widget
2020-03-20 23:41:07 -07:00
Dustin Carlino
7592a36fe4
tool-assisted refactor of the last 2 WrappedComposite button helpers
2020-03-20 15:22:45 -07:00
Dustin Carlino
87e605a119
prototype a live dot map in debug mode
2020-03-18 19:17:54 -07:00
Dustin Carlino
eda0237ea7
improve debug mode UI -- menu style, use checkboxes. simplify and speed
...
up all route viz
2020-03-18 14:41:34 -07:00
Dustin Carlino
fedacfe202
reduce verbosity of constructing text widgets [rebuild]
2020-03-13 23:06:52 -07:00
Dustin Carlino
da6abc019b
overhaul one of the oldest things ever, the almighty turn cycler
2020-03-08 11:27:00 -07:00
Dustin Carlino
b3917bf17b
mechanical rename of UI -> App
2020-03-02 09:51:20 -08:00