Dustin Carlino
e071b39553
Add a button to save scenarios to a file if they're generated. This is useful for avoiding the performance hit of regenerating them again.
2021-03-17 10:02:52 -07:00
Dustin Carlino
9f2737b2b5
Don't offer the census-based scenario outside of the US or on oneshot test maps, since it won't work.
2021-03-16 19:03:03 -07:00
Michael Kirk
4418c94fd6
fixup! minimap controls: agent toggles and meters into one row
2021-03-16 18:28:50 -07:00
Michael Kirk
e0aa2ad279
fix jitter as agent meters update
2021-03-16 18:28:50 -07:00
Michael Kirk
264f1f939f
minimap controls: agent toggles and meters into one row
...
Some ancillary changes:
Made the GeomBatchStack public and extracted the ImageSource
functionality from ButtonBuilder to Image.
2021-03-16 18:28:50 -07:00
Dustin Carlino
2e7d6eeb34
Fix the progress bar in the UI; now the line-rewriting more or less
...
works! #523
2021-03-16 18:08:58 -07:00
Dustin Carlino
c1d110d506
Fix the double </osm> issue with osmio. #523
2021-03-16 12:43:30 -07:00
Dustin Carlino
9c526d1000
Fix the spazzy download progress bar; I forgot to flush stdout. #523
2021-03-16 12:36:02 -07:00
Dustin Carlino
77709a24d6
Refactor a method to asynchronously download a file on native, with a simple progress bar. #523
...
Use it in the updater and all the importer tools. Only place it's not
used yet is parking_mapper and the in-game updater. [rebuild]
Also make the RunCommand state understand the control code for erasing
the current line. It... sort of works.
2021-03-15 19:51:45 -07:00
Michael Kirk
810c89eeb1
meter shows "finished trips vs baseline" instead of time ( #565 )
2021-03-15 17:10:08 -07:00
Dustin Carlino
359960c1db
Prepare the new map importer to work in the release. [rebuild]
2021-03-15 14:16:18 -07:00
Dustin Carlino
c0e49f815f
Make the UI load the newly imported map, scraping its name from the other tool. #523
...
For this to work, RunCommand has to be much more careful about getting
all output when the command is done.
2021-03-15 13:54:14 -07:00
Dustin Carlino
f87c1c3b1b
Manage the temporary files in the importer better, and don't re-download
...
pbf. #523
But now we don't know which map to switch to in the UI!
2021-03-15 11:43:06 -07:00
Dustin Carlino
ef95252f4b
Make clip_osm correctly retain ways that cross the boundary. #523
2021-03-15 11:07:11 -07:00
Dustin Carlino
04e0e2aa02
Cache the geofabrik index file in data/input/shared. #523
2021-03-15 10:58:11 -07:00
Dustin Carlino
a8b72691dc
new release
2021-03-14 20:39:56 -07:00
Dustin Carlino
a0f1be139b
Add Linux dependencies to the github workflow. I believe they're brought in by the new dependency on clipboard. [rebuild] [release]
2021-03-14 19:49:55 -07:00
Dustin Carlino
edf3914e4d
Disable the new map importer for this week's release; it's not ready yet. [rebuild] [release]
2021-03-14 17:43:18 -07:00
Dustin Carlino
be4935a316
If the map was imported successfully, switch to it. #525
2021-03-13 15:43:10 -08:00
Dustin Carlino
014d3184cc
Use the subprocess crate to nonblockingly read output from a command. #523
2021-03-13 14:49:01 -08:00
Dustin Carlino
1477262f69
Just split out RunCommand. #523
2021-03-13 14:04:21 -08:00
Dustin Carlino
42a3852784
Actually, we can show command output just fine. The problem was trying
...
to render text with embedded newlines. #523
2021-03-13 13:49:33 -08:00
Dustin Carlino
944b2c337a
Get the importer UI working finally! #523
...
Improved the target dir finding, and hacking around some of the command
output not rendering.
2021-03-13 13:41:34 -08:00
Dustin Carlino
4e665b6214
Run the one-step importer from the UI. Don't attempt a proper loading
...
screen yet. #523
Not working yet; one_step assumes paths to binaries, and it's now wrong.
2021-03-13 13:33:27 -08:00
Dustin Carlino
c252e4a82d
Grab GeoJSON from the system clipboard on native. #523
2021-03-13 12:54:14 -08:00
Dustin Carlino
607ccd0e78
Start a native-only UI to run the one-step importer. #523
2021-03-13 12:41:44 -08:00
Dustin Carlino
ac297f75c4
Hack around the double </osm> bug in clip_map. #523
2021-03-13 11:39:18 -08:00
Dustin Carlino
59fdc30981
Create a tool to go from just a GeoJSON boundary to the full imported map, in one step, by gluing together a bunch of other tools. #523
...
Breaks in a few places along the way, but the basic idea is there.
2021-03-13 11:26:33 -08:00
Dustin Carlino
27a07b02a6
Use the osmio crate to convert OSM pbf to xml, clipping it in the
...
process. #523
Tested really quickly, might not be working right yet. The .xml output
seems to have a duplicate '</osm>' for some reason.
2021-03-13 10:06:19 -08:00
Dustin Carlino
0d8cc27961
Move per-gameplay panels from top-center to top-right. Left align time. #551
2021-03-12 17:48:35 -08:00
Dustin Carlino
b6536122e0
Fold the score panel used by the 2 challenge modes into the gameplay mode-specific top-center panel. #551
2021-03-12 17:48:35 -08:00
Dustin Carlino
229f2d5dca
Fix merge
2021-03-12 17:48:35 -08:00
Dustin Carlino
d7d994066a
A few adjustments to the consolidated panels: #551
...
- invert the histogram icon colors
- stretch out the time bar
- put the time bar above the finished trips counter
2021-03-12 17:48:35 -08:00
Dustin Carlino
7920d7d496
Recalculate the minimap panels as sim time changes, now that agent counters live there. #558
2021-03-12 17:48:35 -08:00
Dustin Carlino
880a293093
Make the time panel height override stickier. Otherwise it jumps height quite noticeably when pausing/resuming. #551
2021-03-12 17:48:35 -08:00
Dustin Carlino
59e9735318
Force actdev top panels to have the same height. #551
2021-03-12 17:48:35 -08:00
Dustin Carlino
da1c133a67
Adjust actdev panel layout to work on narrow screens. #551
2021-03-12 17:48:35 -08:00
Dustin Carlino
69b248cd66
Move agent counters to the minimap, removing the top-right agent panel entirely. #551
...
Adjust the tutorial for these changes.
2021-03-12 17:48:35 -08:00
Dustin Carlino
5b386af6ba
Move most things out of the top-right agent meter panel to reclaim more horizontal space. #551
...
1) Move finished trips to the top-left time panel.
2) Move "tentative results" and "recording trips" controls (only
occasionally used) to the top-left time panel.
3) Move the "more data" button to the minimap.
2021-03-12 17:48:35 -08:00
Dustin Carlino
8ac62fed47
Trying out some UI changes suggested by Martin:
...
- Increase day mode panel opacity to 95% to help text legibility
- Combine the time/speed panels, and remove the sunrise/sunset icons
- 4 mode colors matching actdev, also changing night mode residential
buildings
2021-03-12 17:48:35 -08:00
Dustin Carlino
95b1d884cf
Rename Map::new to be more clear that it should only be used in non-UI
...
tools. There's one place in the UI that doesn't work on the web!
2021-03-12 06:38:17 -08:00
Dustin Carlino
c6044fa54c
Fix the debugging of map serialization sizes; Map::new isn't called
...
anymore, because of async map loading.
2021-03-11 19:46:09 -08:00
Dustin Carlino
72418ee6b6
Change the loading screen sidebar to list things the player ought to go try. Previously it was meant to be recent changes, but it's way too much work to also update that every few weeks.
2021-03-11 12:33:17 -08:00
Dustin Carlino
522b902453
Improve the traffic signal timing UI. There's a choice between fixed and
...
variable timing, but currently you have to remember to toggle it; the
two extra spinners get ignored otherwise. The new version is still
confusing, but I think it's an improvement.
2021-03-11 11:39:58 -08:00
Dustin Carlino
8be24bf007
Use AsRef<str> in more widgetry methods, getting rid of &format at many
...
call-sites. #253
To make some of these work, changed Label to store a String. Ultimately
it gets transformed into Text, so we need to allocate eventually.
2021-03-11 11:29:18 -08:00
Dustin Carlino
9c2c8bbd8f
Change some uses of Into<String> to AsRef<str>, to avoid allocations. #253
...
I manually audited all uses. I kept Into<String> when we really do wind
up storing a String.
2021-03-11 11:29:18 -08:00
Dustin Carlino
f5eca6ff02
Seemingly fix squished loading screens at startup by always using inner_size. ( #561 )
2021-03-11 09:48:39 -08:00
Dustin Carlino
f254bb53cc
Measure intersection delay more intuitively. #549
...
Before: time starts when the vehicle reaches the front of the queue and
first requests their turn
After: time starts when the vehicle first becomes blocked on the queue
leading to the intersection.
Regenerate prebaked data.
2021-03-10 16:38:35 -08:00
Dustin Carlino
f0de4e4583
Don't use Bezier curves for right/left turns at tiny intersections. They
...
wind up looping back on themselves in a nonsensical way, causing
vehicles to visually glitch when moving through.
This was started in 081819d86b
, but it
used to gridlock 2 maps. All the recent roundabout fixes seems to have
resolved those! And adjusting offstreet parking for two maps.
But wallingford does regress; plunging forward for now.
2021-03-10 15:58:16 -08:00
Dustin Carlino
bf8f51ae05
Consistently count hours for a time. There was some disagreement between
...
recorded analytics and code that later summed things up, making the
relative throughput layer more confusing than it is already. #85
2021-03-10 13:59:38 -08:00