Commit Graph

6889 Commits

Author SHA1 Message Date
Dustin Carlino
93fb9a274f
Organize bike lane buffer types into a dropdown (#724)
Organize lane types in the editor. All buffer types expressed as a dropdown, and lanes for moving/not moving are grouped.
2021-08-25 14:12:17 -07:00
Dustin Carlino
59f9c443d5 We need to recalculate the road editor fog of war upon edits, since the road width may change 2021-08-25 13:36:05 -07:00
Dustin Carlino
0b8e4d07dd
Road lane width card (#736)
* Show lane width in each lane card

* Stretch lane cards based on lane width, too

* lane sizing: adjust padding only - keep icon size (#738)

* road editor design tweaks (#737)

- regroup sections to avoid undesirable inner rounding
- move panel away from edge
- make tabs more obvious with "shadow" on bottom of unselected tabs

* Recalculate pathfinding before starting the route tool, since we lazily avoid doing that in the other ungap edit modes. This may become unnecessary when the route tool always does Dijkstra's with custom routing params, but we're not there yet, so it crashes currently

* Show lane width in each lane card

* Stretch lane cards based on lane width, too

* lane sizing: adjust padding only - keep icon size

previously when scaling the icons to fit, the size of the cards was
a little less obvious - plus the icons could become illegible.

Co-authored-by: Dustin Carlino <dabreegster@gmail.com>

Co-authored-by: Michael Kirk <michael.code@endoftheworl.de>
2021-08-25 13:35:07 -07:00
Dustin Carlino
25b5ac2037 Recalculate pathfinding before starting the route tool, since we lazily avoid doing that in the other ungap edit modes. This may become unnecessary when the route tool always does Dijkstra's with custom routing params, but we're not there yet, so it crashes currently 2021-08-25 12:31:47 -07:00
Michael Kirk
ae80eb2509
road editor design tweaks (#737)
- regroup sections to avoid undesirable inner rounding
- move panel away from edge
- make tabs more obvious with "shadow" on bottom of unselected tabs
2021-08-25 12:21:05 -07:00
Dustin Carlino
9761373c4b Don't recalculate map hover state in the middle of dragging 2021-08-25 11:47:10 -07:00
Dustin Carlino
718725c671 Fix #731, weird lane swap 2021-08-25 11:26:48 -07:00
Dustin Carlino
c298124dcc
Ditch the outline showing the current road being edited. Instead, focus a cone of light on the road and add fog-of-war to the rest of the map. (#735) 2021-08-25 11:19:49 -07:00
Dustin Carlino
dd27098ca8
Recalculate the hovered lane in the road editor very carefully. Any time (#734)
* Recalculate the hovered lane in the road editor very carefully. Any time
the map is edited, lane IDs change. There were many possible crashes
before.

* Don't deselect lane when clicking in screen-space
2021-08-25 11:16:16 -07:00
Dustin Carlino
f64cd89f26 When no lane is selected, the hotkeys add a new lane. When a lane is selected, those hotkeys modify the current lane. (It's very disorienting to click a lane, hit 'b', and see a new bike lane instead of the modified one. 2021-08-25 10:51:57 -07:00
Dustin Carlino
2443479ad2 Flatten the lane width controls into a single row, now that there's more room 2021-08-25 10:15:51 -07:00
Michael Kirk
f211713235 road editor style changes
1. "drill down" - so attributes applying to the entire road are up top,
   while attributes applying to only a single lane are below.

2. use "tab" metaphor to treat each lane as a tab, showing the lane
   attributes beneath the "active" lane-tab.
2021-08-25 09:58:06 -07:00
Michael Kirk
fc901c3d2f sections should have padding 2021-08-25 09:36:16 -07:00
Michael Kirk
f15a40efd9 Uniform heights for legend items 2021-08-25 09:33:51 -07:00
Dustin Carlino
df242871b5 Fix actdev crash -- some people in the imported scenario data don't have
any trips snap successfully to buildings, so we wind up with 0-trip
people that break some UI logic.

Reimported all actdev scenarios. Hopefully there weren't any cases like
this in the Seattle data, but I'll do a full regeneration later tonight
anyway...
2021-08-25 09:24:00 -07:00
Dustin Carlino
6c3ce23e5f Use a cross-hatch pattern to show edited roads, instead of that bizarre
cyan.

For the moment, just to simplify things, bake the edited color into the
bike network layer. Probably will split it out later, maybe moving the
proposal management to the legend row.
2021-08-24 15:50:19 -07:00
Dustin Carlino
78222ffadb Preserve the same Layers object through all the states of the ungap tool. Do this by a "new" Transition that's allowed to consume the current state.
Alternatives considered:
- put Layers in the App struct, since it's shared -- but only for the
  ungap tool. It'd be nice to split it into its own standalone crate now,
  but it'll be some work to refactor edit mode out of game.
- put Layers in App session
2021-08-24 14:37:16 -07:00
Dustin Carlino
f5c47d6c8f Make the layers panel only show bike network legend when enabled.
(Steep streets legend still gets lost sometimes)
2021-08-24 13:45:49 -07:00
Dustin Carlino
640489459a Splitting out code for managing the bottom-right panel with all of the layers.
Then we can include it in the quick sketch and route planner tools.
2021-08-24 13:22:58 -07:00
Dustin Carlino
06b74dbe55 Refactor the steep streets layer, add it as an option to the ungap tool.
Code and usability issues accumulating as more things cram into this
view... tackling that next.
2021-08-24 11:52:16 -07:00
Dustin Carlino
bddbe8af99 Followup to #728: highlight lanes on map when hovering on the cards 2021-08-24 10:58:04 -07:00
Dustin Carlino
b5015143cb Small drag-and-drop typo fixes 2021-08-24 10:27:43 -07:00
Michael Kirk
4e93b34ded restore proper shape/size/color/highlights of lane cards 2021-08-24 10:27:43 -07:00
Michael Kirk
03b15fae43 widgetry: dont grow widget as you're dragging
Otherwise the screen bizarrely grows/shrinks as you're dragging.
2021-08-24 10:27:43 -07:00
Michael Kirk
161e962bbc widgetry: dragondrop inserts at proper place, not swap, fixes offset 2021-08-24 10:27:43 -07:00
Dustin Carlino
050c59e817 Draw the new state if the user would finish dropping.
Incorrect math in some cases, but making progress.
2021-08-24 10:27:43 -07:00
Dustin Carlino
7afd428017 Draw the card being dragged near the cursor 2021-08-24 10:27:43 -07:00
Dustin Carlino
b9b0ac5bb7 Very roughly express the road editor lane cards with DragDrop 2021-08-24 10:27:43 -07:00
Dustin Carlino
0d028d1bb7 Dragon drop poof of conscepter 2021-08-24 10:27:43 -07:00
Dustin Carlino
b397f97a12 Splitting Aurora study area into 3 maps, actually 2021-08-23 19:38:36 -07:00
Dustin Carlino
d4e19a990e Better default placement of new routing waypoints 2021-08-23 19:21:41 -07:00
Dustin Carlino
b2f30fa192 Add some more metrics for a route, related to safety 2021-08-23 19:02:44 -07:00
Dustin Carlino
7e3802a519 Add elevation details to routing results 2021-08-23 18:02:29 -07:00
Dustin Carlino
a05a4f534c Plug in the routing, with a basic results info panel 2021-08-23 16:44:49 -07:00
Dustin Carlino
8f485667fd Start a new UI for routing. Just managing waypoints 2021-08-23 13:44:21 -07:00
Dustin Carlino
fbd173408e Import new Seattle OSM data with a bunch of fixes around Aurora, and actually disable parking in the Aurora maps
Remove Queen Anne from prebaking -- it trips some crash with waking up
following vehicles that I'm not going to dig into right now.
2021-08-22 19:50:47 -07:00
Dustin Carlino
1d71e39480 Amp up the short service road trimmer -- Aurora's got lots of dangly things to trim.
While we're at it, opt into new fast_paths branch that should have about
a 2x import speedup.

Regenerating the world...
2021-08-21 21:23:35 -07:00
Dustin Carlino
996a3f30b3 Enable hotkeys for adding a new lane to a road. I don't remember why we weren't doing this before; it's really useful. 2021-08-21 19:23:19 -07:00
Dustin Carlino
790bdc2ef9 Show change to total road width, with disclaimers 2021-08-21 16:57:56 -07:00
Dustin Carlino
047ced16be Improve heuristics for adding buffers to a bike lane 2021-08-21 16:24:26 -07:00
Dustin Carlino
b276178b4b Refactor add_new_lane heuristics, hopefully without changing behavior... 2021-08-21 15:38:54 -07:00
Dustin Carlino
f8a209724c Add some tests for adding a new lane to a road, in preparation to refactor / improve the heuristics. Closes #635 2021-08-21 15:32:14 -07:00
Dustin Carlino
7f9205598a Just split out road editing heuristics, to keep the main module focused on the UI 2021-08-21 15:22:32 -07:00
Dustin Carlino
816e125cbe Refactor some stuff related to unit tests for a road's lanes. #635 2021-08-21 15:17:57 -07:00
Dustin Carlino
657185c035 Fix a road editor crash:
1) click a lane
2) press left/right arrow key to move it
3) don't move the mouse! click

The current selection was never refreshed, but the lane IDs change
2021-08-21 10:44:23 -07:00
Michael Kirk
9e0fc19bb1
canvas: double click to zoom (#727) 2021-08-21 09:56:15 -07:00
Dustin Carlino
71b54b3ed7 Create two study areas for the Aurora project. Can fine-tune or split
boundaries later, but this roughly captures the interesting bits.
2021-08-20 16:31:08 -07:00
Dustin Carlino
ed7cf8515f Make it more obvious the route can be dragged 2021-08-20 15:39:43 -07:00
Dustin Carlino
c08645011d The street name rewriting case I was afraid of has ALREADY turned up,
because of course it has

(and fix rebase)
2021-08-20 15:18:54 -07:00
Dustin Carlino
4ad652fce5 Use SVG to create a text outline for labels 2021-08-20 15:14:41 -07:00