Commit Graph

4601 Commits

Author SHA1 Message Date
Dustin Carlino
5daab4fdbc allow closing intersections in maps with sidewalks that start off disconnected. just dont allow disconnecting anything new. 2020-07-05 11:37:03 -07:00
Dustin Carlino
422889e543 lazily render lanes, same as road labels. greatly speeds up start-up times (helps with #125), doesnt melt the GPU on large maps. also paves the way for dynamically adjusting z-order rendering (for #126)
because we no longer try to upload massive gobs of data to the GPU at
once, huge_seattle on my system goes from initially loading in about a
minute down to 11s
2020-07-05 11:30:34 -07:00
Dustin Carlino
f818b3877e fresh osm. was trying to fix some intersections along boren, but didnt make much progress 2020-07-04 18:59:17 -07:00
Dustin Carlino
8b7658c48f dont crash when closing a traffic signal with disconnected sidewalks 2020-07-04 18:08:54 -07:00
Dustin Carlino
181de12409 woops, 72d0171300 broke signal editor by
crashing if you were missing a turn. dont validate in the middle of
editing. still seeing a problem with traffic signal -> construction
2020-07-04 17:51:45 -07:00
Dustin Carlino
5a677eb2ec optionally dont draw in jump-to-time, to help with #125 2020-07-04 13:37:29 -07:00
Dustin Carlino
068b4223c8 prototype controls for hiding z-orders, for #126 [rebuild] 2020-07-04 13:18:27 -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
3eecdeddff fix some two-step pathfinding bugs that were crashing south seattle 2020-07-04 09:37:22 -07:00
Dustin Carlino
505311a93f improve the signal synchronization a bit for #8. hardcode a few small
intersections to make the downtown map make more progress. make it
easier to copy OSM node IDs.
2020-07-04 08:53:13 -07:00
Dustin Carlino
224701db06 upgrade resvg, which now statically links harfbuzz, for #76 [rebuild] 2020-07-04 07:37:19 -07:00
Dustin Carlino
628ee0fa86 dirt simple method to swap the order of pairs of two-phase signals to
try to synchronize them better. towards #8. not regenerating screenshots
because it's late and there'll be more screenshot churn tomorrow anyway
2020-07-03 21:55:54 -07:00
Dustin Carlino
3a7a75e011 for the heuristically generated traffic signals, handle roads with
sidewalks on only one side. part of #8
2020-07-03 19:50:31 -07:00
Dustin Carlino
575dcfb782 snap bus vehicle/sidewalk positions to the correct side of the road and
a more appropriate lane. also fix #122
2020-07-03 19:00:20 -07:00
Dustin Carlino
ac88a96f61 use a different icon for train stops 2020-07-03 17:49:36 -07:00
Dustin Carlino
56cb59c3ac rip out gtfs code, cutover to osm. will revisit this later; gtfs and osm probably disagree on routes and stops, and gtfs has schedule. but for now, just osm. 2020-07-03 17:33:32 -07:00
Dustin Carlino
0dc42d7e19 use bus stops from OSM instead of gtfs. expose the stop name and the
driving position in the info panel. some issues with the driving
positions, but this is the way forward for light rail.
2020-07-03 15:22:13 -07:00
Dustin Carlino
4f507ef96a refactor Composite style 2020-07-03 13:01:54 -07:00
Dustin Carlino
1175826f3d scrape bus info from OSM into the RawMap layer. don't use it yet. 2020-07-03 12:00:42 -07:00
Dustin Carlino
315ab5c8e6 partly refactor some of the intensely nested osm_reader code 2020-07-02 21:24:47 -07:00
Dustin Carlino
8b006c037d slim down sidewalk corners, at the repeated urging of julian 2020-07-02 17:12:08 -07:00
Dustin Carlino
ec2411fb8b experiment with isochrones. nothing yet. 2020-07-02 13:41:24 -07:00
Dustin Carlino
6b409b42d0 make the UI understand deleting a zone 2020-07-02 12:48:20 -07:00
Dustin Carlino
0a499f65e2 start changing access restrictions for an entire zone. found a way to
represent the edits. no support yet for changing what roads are in a
zone.
2020-07-02 12:15:37 -07:00
Dustin Carlino
ebe1f486f7 flatten some of the map building code 2020-07-02 10:48:05 -07:00
Dustin Carlino
3acec91f51 get berlin import working for #119. just had to allow a few more turn
restrictions previously unencountered and deal with weird geometry.
and add some hints to docs for #118.
2020-07-02 09:56:48 -07:00
Dustin Carlino
519bceaac0 organize lots of map modules under objects/ 2020-07-02 09:05:56 -07:00
Dustin Carlino
148547c622 reorganize code in map_model, since map.rs is huge.
- move Map to lib.rs, so all its private members can be directly
  populated by submodules
- move edits-related stuff to edits.rs
- move raw->map stuff to make/mod.rs
2020-07-02 08:56:09 -07:00
Dustin Carlino
eb2be71a65 adjust new city docs for #117 2020-07-02 06:58:30 -07:00
Dustin Carlino
7d4cf4cd5b follow up to #59. when we do the no-op events, have to plumb back
updates. this is needed when we push on new states to warp somewhere or
jump to a time or do anything else requesting updates
2020-07-01 22:07:54 -07:00
Dustin Carlino
72d0171300 fix #111 by delaying constructing ControlTrafficSignal from edits. also
fix time warp screen issue after the UpdateType changes [rebuild]
2020-07-01 19:34:15 -07:00
Dustin Carlino
a62e3133db cleanup after #59:
- cargo fmt
- update some comments
- remove EventLoopMode
- if no updates are requested, that's the equivalent of InputOnly
2020-07-01 17:57:43 -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
f9cfe136e0 new save edits UI, not using wizard. using for:
- save as dialog
- loading new edits

still TODO:

- leaving sandbox mode
- final score challenge screen

part of #110
2020-07-01 13:11:58 -07:00
Dustin Carlino
ef51a8b9b8 more layout refactor 2020-07-01 12:11:00 -07:00
Dustin Carlino
54b4bd318e way simpler approach for two-step walking paths. fixes the silly loops. 2020-07-01 11:12:47 -07:00
Dustin Carlino
c61371a777 variant of row/col that have good default margins. starting a big
refactor to make everything consistent. not sure mechanical refactor is
right here. lots left, but a start.
2020-07-01 09:50:35 -07:00
Dustin Carlino
f90e506fbf the important stuff: adding a face browser to the ezgui demo 2020-07-01 09:04:55 -07:00
Dustin Carlino
c191ffde9a filter out broken edits (which happen due to schema changes) 2020-06-30 19:48:25 -07:00
Dustin Carlino
9b42d27e85 finally enable two-step pathfinding for pedestrians too. the weird hack
making this work: pedestrians will sometimes add an extra little
back-and-forth in their paths
2020-06-30 14:52:57 -07:00
Dustin Carlino
6696263a08 fix map_editor and headless build break, for #108 2020-06-30 13:49:24 -07:00
Dustin Carlino
2c7440b03f start representing access restrictions by mode 2020-06-30 13:15:57 -07:00
Dustin Carlino
2b4bf1172b start a UI for modifying access restrictions of zones. mostly just the
skeleton right now
2020-06-30 12:16:08 -07:00
Dustin Carlino
2b50e7969c refactor position 2020-06-29 20:55:36 -07:00
Dustin Carlino
71b8e16448 another stab at two-step walking pathfinding. prevents all crashes, but
pretty much nothing being found
2020-06-29 20:40:41 -07:00
Dustin Carlino
2e1612c3db try to handle walking around private zones too. gluing the paths
together is buggy, giving up for now and leaving disabled
2020-06-29 16:44:45 -07:00
Dustin Carlino
694b70c438 try something simpler for two-step pathfinding. maybe some code duplication, but way easier to reason about. i think this is now correct; just need equivalent for walking trips 2020-06-29 13:50:05 -07:00
Dustin Carlino
fafda7963b handle more cases for two-step pathfinding, but still many not working.
need to pull the main path search in
2020-06-29 12:03:34 -07:00