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
Michael Kirk
bf1394e571
Commuter Patterns: Show secondary stats for commute on hover ( #235 )
...
* Commuter Patterns: Show secondary stats for commute on hover
2020-07-24 18:04:27 -07:00
Dustin Carlino
7bf6cb47f5
better UI for loading edits, split proposals and player edits. #113
2020-07-24 12:11:09 -07:00
Michael Kirk
6a074a0921
Commuter Pattern: label heatmap scale accruately (by max, not total) ( #236 )
2020-07-23 21:40:44 -07:00
Dustin Carlino
f66af5ad49
list all edits in the loader. only try to validate them after selection. display clear error if loading fails. #113
2020-07-23 15:27:24 -07:00
Dustin Carlino
adbbc8764a
much smarter opportunistic lane-changing. almost got #217 . but we don't
...
do opportunistic LCing when approaching an uber-turn, so we need to use
these costs when building the CH also...
2020-07-23 12:39:00 -07:00
Dustin Carlino
9757750bfa
gather penalties based on sim state too. #217
2020-07-23 10:58:25 -07:00
Dustin Carlino
23a1b1a397
calculate and visualize penalties for turns that cut over lots of lanes. a step towards #217
2020-07-23 10:20:16 -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
61837f93ba
improve debug warp tool. closes #222
2020-07-22 12:05:05 -07:00
Dustin Carlino
e10be9019e
dont crash when one route has two stops with the same name. fix #218
2020-07-22 11:44:48 -07:00
Dustin Carlino
38b8557c82
bring in living streets from OSM, interpreting them as normal roads with
...
access restrictions. makes old town in krakow look much better and
brings in stay healthy streets in seattle. also commit some code related
to footways that isn't exercised yet.
2020-07-21 17:18:56 -07:00
Dustin Carlino
bbe06c6075
randomly distribute residents to buildings in the planning area for #119
2020-07-21 14:00:59 -07:00
Dustin Carlino
94935f7ae8
radically simpler vehicle turn creation:
...
- just generate every combo of turns from incoming->outgoing
- stop doing all of the weird bike->bike restrictions. that gets handled
anyway in later layers like pathfinding costs, opportunistic LCing,
and picking valid starting lanes
- rely on OSM for filtering out left/right turns from multiple lanes
- why was it useful at all to distinguish Straight from LCing turns?
scrap that
has the effect of eliminating a class of bugs where a driving lane is
sandwiched between lots of bus lanes and wasn't winding up with an
in/outbound turn
2020-07-21 13:04:34 -07:00
Dustin Carlino
636c2838a3
experiment with fan charts for intersection delay. they... need work.
2020-07-21 10:10:42 -07:00
Dustin Carlino
a299120090
expose boarding/alighting stats
2020-07-21 09:11:08 -07:00
Dustin Carlino
435b4ce8fb
track passengers boarding/alighting. further rearrange stop/bus/route
...
info panels
2020-07-21 08:55:07 -07:00
Dustin Carlino
4d84fdf59c
start an info panel for an entire route
2020-07-21 08:15:07 -07:00
Dustin Carlino
1ae29881ba
i forgot that there was an isochrone experiment. plug it up to contours.
2020-07-21 07:23:33 -07:00
Dustin Carlino
a65107145f
turn heatmaps into nice polygon contours
2020-07-20 17:03:32 -07:00
Dustin Carlino
db0b851659
use toggles instead of checkboxes in a few places
2020-07-20 15:02:05 -07:00
Michael Kirk
783f91ae0c
Commuter Patterns: to/from icon overlays current block ( #214 )
...
* Commuter Patterns: to/from icon overlays current block
Also, masks the current block
* Code Review: code structure, no behavior change
2020-07-20 14:40:09 -07:00
Dustin Carlino
f91a73e12a
tighten up polygon_with_holes API
2020-07-20 09:41:47 -07:00
Dustin Carlino
042145ef1b
start cleaning up bus info panels. the delay between stop measurement has never been clear, and i'm not sure if it's what we even want to measure. and use route shortname in titles.
2020-07-20 09:14:41 -07:00
Dustin Carlino
68d3c5b340
intersection delay is broken down by agent type, not trip mode
2020-07-19 13:22:08 -07:00
Dustin Carlino
56b2914e9a
click a commuter block to make it sticky, so you can fiddle with filters
2020-07-19 12:33:04 -07:00
Dustin Carlino
4f8f659dfb
widget replacement keeps margins from the old
2020-07-19 11:28:12 -07:00
Dustin Carlino
9e4dbc9c98
filter commuter patterns by mode. optionally exclude borders.
2020-07-19 11:06:28 -07:00
Michael Kirk
2a8a2ccf2d
Commuter Patterns: building stats ( #201 )
...
Shows summary counts of building types within the selected block
Note: I changed the empty state from "Nothing selected" to "None
selected" to avoid an undesirable shift in the commuter view.
I think the shift is because the height of the text widget seems to vary
with the height of the characters _in_ the text widget. So the low
hanging tail of "g" was causing "Nothing" to render taller than "None".
2020-07-18 15:14:25 -07:00
Dustin Carlino
b15e493291
index trips by block. double memory, but worth the speedup when mousing over
2020-07-18 14:25:39 -07:00
Dustin Carlino
7ad7c7c477
speed up block merging
2020-07-18 13:50:16 -07:00
Dustin Carlino
a84e1c2c74
add border intersections to commute viz
2020-07-18 13:39:44 -07:00
Dustin Carlino
b6a8bdd7e1
merge adjacent residential blocks into larger groups. slow
...
implementation, but the result looks nice
2020-07-18 13:09:10 -07:00
Dustin Carlino
68561170bd
cache current selected block and update trip count in the scale
2020-07-18 11:34:13 -07:00
Michael Kirk
c9aadc0be1
Commuter Patterns: remove arrow overlay mode ( #200 )
...
Commuter patterns offered two different styles to visualize the
source/destination of travellers.
1. Arrows points to the source/destination
2. Heat map showing relative density of the source/destination
The arrow mode was visually cluttered and yet didn't communicate as much
info as the heatmap, so we're getting rid of it.
2020-07-18 11:09:09 -07:00
Dustin Carlino
5ce64cce7f
use the color gradient for blocks, and prepare to show count for currently selected block
2020-07-18 10:48:36 -07:00
Dustin Carlino
6d50c574f4
filter commutes by departure time
2020-07-18 10:25:44 -07:00
Dustin Carlino
c645876ea2
find some excuse to include one of holly's characters in a cutscene.
...
need to rework the dialogue more.
2020-07-18 09:46:21 -07:00
Dustin Carlino
e87ff1cbef
organize the commuter code before hackathon [rebuild]
2020-07-18 08:04:24 -07:00
Dustin Carlino
523eb690f5
refactor tripinfo struct
2020-07-18 07:46:58 -07:00
Dustin Carlino
6d27547b6a
prep for hackathon. make the block map a sandbox dashboard, work off of a live sim. [rebuild]
2020-07-18 07:22:18 -07:00
Dustin Carlino
db00c18536
use AgentType, not TripMode, in throughput
2020-07-17 16:39:16 -07:00
Dustin Carlino
e06faa3c33
make an AgentType enum, stop abusing TripMode. a small first step,
...
showing agent meters properly
2020-07-17 15:13:36 -07:00
Dustin Carlino
a86fb5c73d
upgrade to rust 1.45 after fixing an issue in fastpaths [rebuild]
2020-07-17 12:54:14 -07:00
Dustin Carlino
3a1ef311a7
use my new best friend earcutr to make sure people dont get lost when editing a traffic signal
2020-07-17 10:00:45 -07:00
Dustin Carlino
ba3e918f33
slightly less overwhelming bus route dashboard
2020-07-17 09:34:25 -07:00
Dustin Carlino
4a05979b9f
fix label position for light rail
2020-07-17 09:10:45 -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
e2d478340b
bring in planning area KML for berlin, #119
2020-07-16 11:15:22 -07:00
Dustin Carlino
8a70e105e8
make buses actually start/end at borders [rebuild]
2020-07-16 10:11:43 -07:00
Dustin Carlino
d15a842e43
Revert "new rust version. finally strip_prefix is available!"
...
This reverts commit d16ac9713a
.
I'm seeing mysterious brokenness with fast_paths:
https://github.com/easbar/fast_paths/issues/20
Reverting so I can get work done
2020-07-16 08:59:16 -07:00
Dustin Carlino
d16ac9713a
new rust version. finally strip_prefix is available!
...
include berlin and krakow by default in the release, since they're small
and it'll make some collaboration easier [rebuild]
2020-07-16 08:41:28 -07:00
Dustin Carlino
f59ca734e2
also scrape stop->platform associations from stop_areas. fixes cap hill light rail stop finally for #190 ! the pioneer square south stop is seemingly still messed up
2020-07-15 22:17:45 -07:00
Dustin Carlino
b942510f67
slightly better border matching for buses. dont count on any ordering in
...
the route relation. include intersections that get copied as
possibilities.
2020-07-15 17:27:09 -07:00
Dustin Carlino
65a8f42bb6
dont crash on dash with dupe route names
2020-07-15 16:34:35 -07:00
Dustin Carlino
05efb41ef6
bus layer can toggle trains/buses
2020-07-15 16:06:13 -07:00
Dustin Carlino
891a1746d6
try to figure out border endpts for routes for #190 . just visualize
...
them, dont enforce connectivity yet. so many problems...
regenerate stuff, to unbreak map binary format
2020-07-15 15:35:57 -07:00
Dustin Carlino
91a9a9a1bc
start revamping bus route data model for #190 . routes are one-way. make
...
buses appear at the first stop and vanish at the last.
not regenerating anything yet
2020-07-15 13:15:32 -07:00
Dustin Carlino
0ad14d17ac
settle on american spelling of center
2020-07-15 11:37:37 -07:00