Commit Graph

1576 Commits

Author SHA1 Message Date
Dustin Carlino
e68df0ed1a and make tool_panel normal, ending the strange reign of WrappedComposite 2020-08-04 12:34:58 -07:00
Dustin Carlino
d819ab2bf8 migrate the last user off of the old ManagedGUIState 2020-08-04 12:27:07 -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
75179f1400 fix uber turn viewer breakage. also discovered that we can't clip the
largest .osm while we update it without breaking water polygons
2020-08-04 10:30:07 -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
bcbf229eb7 rip out all users of the old find_closest_lane for #176.
- this gives offside support to bus/sidewalk matching, getting 11 more
  routes working in krakow
2020-08-03 17:56:58 -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
Dustin Carlino
f73516d183 start representing bus spawn rates explicitly 2020-08-03 13:12:02 -07:00
Dustin Carlino
940d2265c0 spawning buses at 0.01m on a non-border lane can break, because other cars approach, and the buffer distance gets broken. instead, spawn the buses a few lanes away, if needed. fixes #260
now only ~400 agents left in lakeslice by end!
2020-08-03 11:08:21 -07:00
Dustin Carlino
b7ed2615b1 add a "smoke-test" to simulate 1 hr in all maps 2020-08-03 09:28:10 -07:00
Dustin Carlino
60147597d6 change PathConstraints in floodfiller, to more easily debug bike
disconnectedness in udistrict
2020-08-03 07:41:10 -07:00
Dustin Carlino
bfc5236152 fix crash with duplicate full route names on one bus stop [rebuild] 2020-08-02 08:36:40 -07:00
Dustin Carlino
3cd28cb44f fix buses not starting at a border. they were skipping the first stop, that's why there were so many stranded agents in lakeslice. still some buses failing to spawn, causing some more stranded 2020-08-01 18:53:40 -07:00
Dustin Carlino
c31d876f61 oh no, the new biking_connection is crashing in a few maps, where some of the separated bike trails are still missing. gracefully degrade. this is getting convoluted again, filed #258 to cleanup. 2020-08-01 10:26:44 -07:00
Dustin Carlino
b4ad7400df stop drawing center lines for one-ways. while regenerating maps, also
bring in natural=scrub, and rename the krakow map
2020-07-31 20:48:26 -07:00
Dustin Carlino
ae31739dea almost support off-side parking lanes. only remaining bug is cars
ignoring parking spots if the parking lane is in the opposite direction.
workaround is to reverse the lane. dealing with that bug next though.

part of #64 and #176. fixes #109
2020-07-31 16:23:58 -07:00
Dustin Carlino
d7968713fc don't need to explicitly store parking blackhole redirect, just a bit.
and have a separate bit for bikes. use that to handle bikes going to
borders. finally closes #221, progress on #176.
2020-07-31 15:43:15 -07:00
Dustin Carlino
d22aa87139 rearrange Building internals for #176. edits can affect building
connections to driving/biking. just store the immutable stuff -- whether
there's parking in the building, the connection to the sidewalk, and the
physical driveway line. compute all the rest dynamically, so it responds
to edits without effort.

shouldn't be major behavior changes yet (besides maybe fixing some bugs
involving edits)
2020-07-31 12:49:33 -07:00
Dustin Carlino
71b68cc639 don't assume off-side sidewalks on dual_carriageway=yes. don't infer
parking on tiny roads. fixes some geometry in krakow. #230

(unrelated: add a debug layer to show parking blackholes, to work on
bike connections)
(also unrelated: better error message for #256)
2020-07-31 10:07:29 -07:00
Dustin Carlino
8385799844 workaround #240 by deterministically building the parking layer. the
proper fix is to record zorder for parking lots and buildings from OSM
tags. ColorDiscrete would need to understand this. I'll leave that for
later.
2020-07-30 15:36:46 -07:00
Dustin Carlino
03796fcd66 introduce the tiny walkable shoulder lane type. pathfinding penalty,
rendering adjustments. #176

the SharedSidewalkCorner geometry looks bad, but acceptable for now.
2020-07-30 13:42:36 -07:00
Dustin Carlino
dde8bd8662 add a new "no sidewalks" layer to spot roads that will soon have a tiny
shoulder for pedestrians. looks reasonable in most places, but still
need to skip over roads < some length, probably. step 1 of #176
2020-07-30 09:39:02 -07:00
Dustin Carlino
af26e8d143 cut over more button internals to use flexbox. almost at the point of collapsing some of the internal representation 2020-07-30 08:59:50 -07:00
Dustin Carlino
b57f5081cf bit more, with pad. these hacks were put in before i understood you had
to wrap a widget in a container to make things like padding() work.
2020-07-29 18:51:28 -07:00
Dustin Carlino
a5928d204d whittle down the weird BtnBuilder API 2020-07-29 18:36:41 -07:00
Dustin Carlino
de45fb5c07 better Checkbox::colored 2020-07-29 15:11:10 -07:00
Dustin Carlino
28c3d0ef8e fix some double-DPI scaling bugs with Btn::custom. this change makes
some things simpler, some more complex, but it at least fixes some
stuff without breaking anything.
2020-07-29 11:28:05 -07:00
Dustin Carlino
0e5dd551cd construct switch checkboxes using the new trick 2020-07-29 10:56:38 -07:00
Dustin Carlino
e543b34799 use existing widget layout/style stuff to produce larger batches, for
crazy custom buttons. use to finally make a nice big trip button.
2020-07-29 10:45:24 -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
2b9123d261 fix border intersection geometry when the road is too short. closes #251
while regenerating, also pick up landuse=grass as a park area. noticed
missing in krakow.
2020-07-28 13:41:12 -07:00
Dustin Carlino
edb1cb87cd Make all vehicles, including buses, start with ~0 length when spawning
from borders and gradually appear. This looks more realistic and lets
more trips succeed, especially buses spawning at short borders.

This fixes #220 in a hopefully simpler way. Extending the geometry of
incoming roads is possible, but it may look visually overwhelming,
because two border intersections could sometimes overlap.
2020-07-28 11:39:57 -07:00
Michael Kirk
5f9e94cfcc
use monospace font to avoid clock layout jitter (#250)
* use monospace font to avoid clock layout jitter

* conventional naming
2020-07-28 10:39:18 -07:00
Dustin Carlino
6c3e6aef10 buttons to jump to start/end of a future trip when theres no prebaked data 2020-07-28 10:04:19 -07:00
Dustin Carlino
e1e265db14 tighten up Polygon constructors to enforce an outer ring... in most
cases now.
2020-07-27 14:03:55 -07:00
Michael Kirk
fff938180f
Commuter Patterns: Larger shapes for border intersections (#247)
* Commuter Patterns: Larger shapes for border intersections

A substantial portion of traffic has an origin/destination off the map.
We were correctly tracking all this data, attributing it to a
"block" the size of the border "intersection"; However, the design
didn't accommodate the small "size" of the border intersections:

1. it was too small to meaningfully reason about the heatmap visualization
2. it was too small of a "hit" area for clicking and hovering
3. when in the "locked" mode, the hover text overlay was illegible.

Now we draw a larger arrow, representing the inward/outward/both-ways
direction of traffic which makes it easier to reason about the heatmap
color and accommodates an adequate hit area.

And the hover text is now printed over a white pill to maintain
legibility.

* Commuter Patterns: Draw border *behind* directional icon

* Code Review: code cleanup - no changes to behavior.
2020-07-27 12:07:51 -07:00
Dustin Carlino
74bf6e0974 get riding off-map to work for #190.
- handle living streets that allow buses in berlin
- don't connect LeaveMap nodes to anything else; people were getting
  creative and using them as shortcuts to effectively warp to a border,
  then come back into the map
- make should_use_transit understand transfers (and still just return
  the first leg)
- warp to bus routes by ID

still at least one weird bug left, seen in krakow. working on it next,
trying to keep these commits "small." not regenerating maps quite yet.
2020-07-27 10:37:21 -07:00
Dustin Carlino
2239059961 UI fixes discovered during riding buses off-map
- speed limit dropdown crash
- link to bus route from bus stop panel, not some currently running bus
- show number of waiting people per stop in route panel and route dash
2020-07-27 08:19:14 -07:00
Dustin Carlino
e83e2f2d72 search by building name/address! 2020-07-27 06:37:05 -07:00
Dustin Carlino
f056080106 fix area under curve on jump-to-time when active agents isnt 0 at end of day. also... fail loudly when we make it to the end of the day and too many active agents are left. at some point lakeslice broke and I didnt notice. :( ... but actually it's just a crowd of people waiting on a bus that isnt managing to spawn. 2020-07-26 22:50:45 -07:00
Dustin Carlino
a1e1e51b10 obviate need for make_arrow_outline by just putting together a
reasonable make_arrow polygon in the first place
2020-07-26 20:25:38 -07:00
Dustin Carlino
a4e09ca91f add border stop/start to route info panel. move the route drawing there, stop being a weird layer. 2020-07-26 13:13:48 -07:00
Dustin Carlino
4c86f568d0 fix transit network's show all routes. no more loops, but do have border
starts/ends.
2020-07-26 12:40:44 -07:00
Dustin Carlino
649c79f784 easily see busiest bus route from dash 2020-07-26 12:23:30 -07:00
Dustin Carlino
eb4acdc2f6 split parking lot code from building code, for #231 2020-07-25 07:09:43 -07:00
Mateusz Konieczny
a4a545cc79
handle more OSM tags - especially POIs (#244)
also, add graveyards like cemeteries
2020-07-25 07:01:55 -07:00
Dustin Carlino
f06c2764f5 fix broken parking layer counts, closes #241 2020-07-24 18:51:00 -07:00
Dustin Carlino
450befcc87 more useful error when prebaked missing. closes #238 2020-07-24 18:08:37 -07:00