Commit Graph

819 Commits

Author SHA1 Message Date
Dustin Carlino
0572a5118b Add a map covering the north end of Cambridge. Also grab fresh OSM for the Great Kneighton map, at least fixing the crazy geometry at Portugal Place. cyipt/actdev#151 [rebuild] [release] 2021-03-21 11:24:33 -07:00
Dustin Carlino
ca70d7c617 Fix the broadmoor proposal after the new OSM data import. #574
And fix the github build. [rebuild]
2021-03-20 15:30:34 -07:00
Dustin Carlino
90e2e4f249 Grab fresh Seattle OSM to fix the entrance to Broadmoor for #537. Also
stop importing golf cart paths, even though they would be kind of
interesting to use for this proposal...

Interventions needed to keep lakeslice running, of course
2021-03-20 14:26:48 -07:00
Dustin Carlino
a68af804e3 Pick the entrance/exit to an access-restricted zone more intelligently. #574
Instead of just picking the intersectin closest to the origin or
destination, calculate the full path length, and take the one with the
shortest distance. This fixes some of the weird problems routing around
Broadmoor. Regenerate all prebaked data.

Also fix the original request for paths involving zones, so tracing it
later works.
2021-03-19 19:24:22 -07:00
Dustin Carlino
58ee3175ac Add a new Seattle map focused on the Arboretum, for #574, along with
prebaked data for the baseline (because it doesn't gridlock, without any
interventions needed!) and a proposal for opening up Broadmoor.
2021-03-19 17:24:11 -07:00
Dustin Carlino
d7b7c2d7cd Import a slice of London along the A5, including scenario data. It
gridlocks, of course.  #577
2021-03-19 15:51:43 -07:00
Dustin Carlino
a0461e990d Workaround an issue with how the length of roads is measured and related
to the elevation measured at the original intersection point. #82

Upload montlake, downtown, and phinney with elevation data, as an
initial demo.
2021-03-18 19:04:15 -07:00
Dustin Carlino
2eeee65653 Start to integrate Eldan's elevation_lookups tool. #82
So far, just call it for Seattle maps. Store the data sources in S3.

Note this'll only run on my machine right now, unless you also build the
Docker image locally. Failures in elevation should be skipped for now.
2021-03-18 11:18:05 -07:00
Dustin Carlino
24a60b0b29 Import Tempe, AZ for collaboration with ASU 2021-03-17 10:55:04 -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
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
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
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
db96b0a7c4 Add an included proposal for making Poundbury<->Dorchester use a pair of one-way roads. cyipt/actdev#114
And handle community proposals when the weekday scenario doesn't exist.
2021-03-09 13:23:40 -08:00
Dustin Carlino
d13478f355 Make Poundbury run more smoothly, and prebake sim data for all
scenarios, so we can run A/B tests with map edits. cyipt/actdev#114

To fix it up, I hand-timed
https://www.openstreetmap.org/node/2124133019, which could have smarter
heuristics as a button-operated half-signal in the future. And allowed
blocking-the-box on some small intersections near that area.
2021-03-09 10:45:44 -08:00
Dustin Carlino
7e0f29fa9f Place stop signs at the entrances of roundabouts, so people already in there get precedence over new people entering. #75
This makes Poundbury run with baseline traffic, when previously it was
super gridlocked!
2021-03-08 20:43:48 -08:00
Dustin Carlino
7170efbdba Improve some gridlock cases near roundabouts particularly. #114, #75
1) If a car is blocked by a conflicting turn and is part of a cycle,
   wake up the car blocking it. In some cases, this wakes it up faster
   and unsticks things. Otherwise, it just wastes a little bit of time.
2) If a car is part of a cycle, allow blocking-the-box.
3) Continue sorting people at a stop sign by the time they've been
   waiting. But for cars "overflowing" their current lane, move them to
   the front of this ordering. It unsticks one particular situation.
4) Fix wakeup_waiting entirely. Before, it was waking up protected turns
   before permitted, but otherwise the ordering was arbitrary. Now actually
   respect stop sign ordering. I expect this to improve many other
   situations than the one I was checking.

This was all motivated by one particular roundabout in Poundbury. It
doesn't solve gridlock there, but it gets past a major blockage.
2021-03-08 17:47:01 -08:00
Dustin Carlino
6594597c3f Rebuild actdev scenarios again, remembering to include return and lunch trips. cyipt/actdev#132 2021-03-08 13:17:52 -08:00
Dustin Carlino
5970883cff Regenerating all scenario data for actdev, since cyipt/actdev#132 is
fixed
2021-03-08 08:59:30 -08:00
Dustin Carlino
d5d186dd37 Fix border arrows for left-handed maps. 2021-03-06 10:43:58 -08:00
Dustin Carlino
8ffd249558 Get the new UK scenario generation working everywhere. #556
If a study area exists for the map, make a copy of the base/active
scenarios with the background traffic mixed in. Also remove people
living in the site, since they're redundant.

Ran it like this: for city in `ls data/system/gb/`; do ./import.sh
--scenario --city=gb/$city || break; done
2021-03-05 16:26:29 -08:00
Dustin Carlino
a7b7638405 Fix data sources for UK ODs. Thanks Robin! #556 2021-03-05 14:48:18 -08:00
Dustin Carlino
22dd1424db Download UK OD and zone definitions. #556 2021-03-05 09:59:08 -08:00
Dustin Carlino
92b89001ab Move road safety data to a new data/input/shared directory, so we can stop duplicating files common to many cities. About to use this for OD and zone data too. #556 2021-03-05 09:50:18 -08:00
Dustin Carlino
9e92435859 Get 2 more Seattle maps to complete without gridlock! Just had to
increase offstreet parking to better match the demand.
2021-03-03 14:53:04 -08:00
Dustin Carlino
c5cfe76b05 Fix turn type classification for four-way intersections that meet at
weird angles. This leads to really bad traffic signal heuristics, even
causing gridlock in Rainier Valley.
2021-03-01 10:57:27 -08:00
Dustin Carlino
bce3318605 Import halsnead for actdev. It needed a fix to not treat access=private
as a no-through-traffic zone for light rail tracks!
2021-02-27 14:35:26 -08:00
Dustin Carlino
9984648379 Treat bicycle=designated on footways the same as bicycle=yes. And update Seattle OSM data again to pick up my fixes from yesterday. #330 2021-02-27 13:01:37 -08:00
Dustin Carlino
65f970a638 Bring in fresh OSM for Krakow and Seattle, to test various fixes for separate cyclepaths. #330
... Except geofabrik missed most of my changes in Seattle. Oh well,
smaller diff when I retry tomorrow.
2021-02-26 21:17:54 -08:00
Dustin Carlino
3a63c11303 Treat footways that allow bikes the same as the other shared-use trails. #330
This gets most of the Burke (and other trails) imported, though there
are still some lingering connectivity problems.
2021-02-26 17:23:21 -08:00
Dustin Carlino
603717a560 Remove the separate_cycleways experiment flag. Always import cyclepaths
mapped as separate OSM ways in all maps!!! #330
2021-02-26 14:58:57 -08:00
Dustin Carlino
7110c13d9f Fix proposl links, broken by the github org move 2021-02-26 14:06:36 -08:00
Dustin Carlino
611b0e8045 Enable separate cycleways experiment for Seattle. #330
Cleaned up a few unused (and out-of-date) traffic signals. No impact on
gridlock. See issue for detailed rationale and plan.
2021-02-26 13:53:24 -08:00
Dustin Carlino
8e04cada2e actdev scenarios for the remainder of the sites.
Now the code can be simplified, because the scenario always exists.
2021-02-25 20:15:03 -08:00
Dustin Carlino
fb78ec19cd Use Noto font, not ZCOOL, because it has a full set of Chinese glyphs 2021-02-25 18:06:34 -08:00
Dustin Carlino
357ba15afe Add back the zcool font so the Taipei map renders names. But this time, asynchronously load the font instead of bundling it in system assets and increasing the .wasm size. #535
Temporarily take on some technical debt with the new RawFileLoader...
2021-02-25 15:25:47 -08:00
Dustin Carlino
601d367c32 Import highway=track as a separate cycle+footway. We identified https://www.openstreetmap.org/way/842138587 that really affects the Poundbury site. 2021-02-25 12:59:48 -08:00
Dustin Carlino
fa4d46e648 Remove the SRTM elevation data from the Seattle import. The link has expired, and I can't find a replacement. The elevation data has always been extremely incorrect, and a proper replacement for it is in the works. #82, #534
Not regenerating Seattle maps yet, but next time, the elevation will be set to 0 everywhere. Should be a no-op.
2021-02-25 10:17:26 -08:00
Dustin Carlino
e0fd8dd369 Import Taipei! 2021-02-25 09:21:45 -08:00
Michael Kirk
a085db301b theme minimap controls
Easier to style as a normal image button
2021-02-24 20:17:18 -08:00
Dustin Carlino
7e4d529872 Import all the actdev scenarios again, which have a fix for more diverse destinations.
Automated:
1) rm -fv `find data/system/gb/ | grep base.bin | xargs`
2) rm -fv `find data/system/gb/ | grep dutch.bin | xargs`
3) for city in allerton_bywater ashton_park aylesbury aylesham bailrigg bath_riverside bicester castlemead chapelford clackers_brook culm dickens_heath didcot dunton_hills ebbsfleet great_kneighton hampton handforth kidbrooke_village lcid long_marston micklefield newcastle_great_park poundbury priors_hall taunton_firepool taunton_garden tresham trumpington_meadows tyersal_lane upton wichelstowe wixams wynyard; do ./importer/actdev_scenarios.sh $city; done
2021-02-24 18:18:12 -08:00
Dustin Carlino
5577021ee5 When merging intersections and preserving simple turn restrictions, pay
attention to which intersection is being destroyed. Fixes #527 --
montlake and phinney both look correct now.

Regenerating everything. Actually, Phinney now runs, so adding a 4th
prebaked map!!! But Rainier regressed -- there's an issue with the
signal heuristics that's now a problem; I'll fix later.
2021-02-24 15:16:12 -08:00
Dustin Carlino
ac615e97c3 Autorepair Lake Wash Blvd proposal, also broken by the service road change. 2021-02-23 20:13:36 -08:00
Dustin Carlino
b36ebec0b9 Penalize unprotected left turns at the routing layer. #494
I experimented on the Rainier Valley map, which recently started
gridlocking due to too many cars doing this, to tune the value. Got it
running again! The two other maps keep running, with some trips on
average getting a little slower.
2021-02-23 19:32:00 -08:00
Dustin Carlino
9eea3c9247 Draw corners where shoulders and sidewalks meet more carefully. 2021-02-23 14:20:59 -08:00
Dustin Carlino
03989bf3a6 Don't allow u-turns on really short deadends. This problem started happening when more service roads were imported, and caused gridlock in lakeslice. This gets montlake and lakeslice running again, but rainier_valley remains gridlocked with service roads. 2021-02-22 14:48:49 -08:00
Dustin Carlino
81dd5740e6 Import Mt Vernon 2021-02-22 09:41:10 -08:00
Dustin Carlino
6ceac88cbe Import most service roads, except driveways. #449
Added an extra step to classify service roads as running through a
parking lot, to prevent them from being treated as regular roads.

Had to fix up a few prebaked traffic signals. lakeslice falls back into
gridlock; will fix separately -- too much effort behind this change to
stop.
2021-02-21 18:27:34 -08:00
Dustin Carlino
5139a88a66 Also sort city districts by zorder when creating them from many maps. Noticed this issue in Leeds. 2021-02-19 10:26:51 -08:00
Dustin Carlino
487c7f3a01 Delete data/other_polygons -- this was a place to store boundaries that people were interested in, before it was easy to maintain lots of cities. If demand for any of these areas comes up, we can just import properly. 2021-02-17 19:33:15 -08:00
Dustin Carlino
6673521ee9 Import Wynyard, now that the pathfinding bug is fixed. 2021-02-17 15:45:36 -08:00
Dustin Carlino
64d150690a When building the contraction hierarchies for different vehicle types,
be more careful with nodes representing uber-turns. Even if that vehicle
type doesn't use an uber-turn, we still need to force the nodes to exist
and match up between input graphs.

Although this really only fixes gb/charleville_mezieres/secteur4, it
potentially affects all maps, because the node map changes. So
regenerate everything...
2021-02-17 14:17:27 -08:00
Dustin Carlino
d8061f3bf6 Update prebaked data after UT change 2021-02-16 13:44:23 -08:00
Dustin Carlino
1fa57a1e17 Import Charleville-Mézières. So many new places from Twitter!
Few workarounds based on importing crashes found.
2021-02-15 16:35:24 -08:00
Dustin Carlino
f55a40e3df Import Rostock 2021-02-15 14:33:17 -08:00
Dustin Carlino
5d0c5766e5 Import scenarios for all actdev sites. Delete the old code for actdev
scenarios, which did a little disaggregation itself from desire lines.
2021-02-15 13:26:44 -08:00
Dustin Carlino
46c746d446 Generate buildings for all the new actdev sites too 2021-02-15 11:57:41 -08:00
Dustin Carlino
7c3ced6401 Import 10 more actdev sites. Start a script for importing Robin's
scenario JSON, but don't run it yet.
2021-02-15 11:06:28 -08:00
Dustin Carlino
e8d1a4bb0d Import Anchorage 2021-02-14 17:21:02 -08:00
Dustin Carlino
e2c648b597 Show each country's flag in the picker UI! #326 2021-02-14 11:49:34 -08:00
Dustin Carlino
52ca5f5ede Fix lakeslice gridlock with a manual signal policy at 23rd/Rainier. 2021-02-13 17:44:34 -08:00
Dustin Carlino
65b1f24d5d Automatically patch edits using the old MapName. And fix the 3
built-in proposals. #326
2021-02-13 17:01:24 -08:00
Dustin Carlino
39f5d50fcd The grand country split. #326
City names are now disambiguated by a two-letter country code. This
commit handles almost everything needed to make this transition. Main
next steps are fixing up map edits automatically and making the city
picker UI understand the extra level of hierarchy.

A little bit of fallout: lakeslice gridlocks again; this regression is
actually from the recent traffic signal changes, but I'm just now
regenerating everything. Will fix soon.
2021-02-13 15:45:59 -08:00
Dustin Carlino
d6ba8e92af Make a script to procgen houses for all actdev sites that seem to need it. Run it for all of em! 2021-02-12 16:53:59 -08:00
Dustin Carlino
2f0029daef Import 7 more actdev sites, since cyipt/actdev#77 is fixed
poundbury is missing files, and halsnead had some issue with the
boundary, will look into it later.
2021-02-12 13:30:59 -08:00
Dustin Carlino
48430f5979 Import more actdev sites, using better automation. cyipt/actdev#65 2021-02-11 16:32:27 -08:00
Dustin Carlino
4c1d610e4f Restore screenshots for Great Kneighton 2021-02-11 15:09:06 -08:00
Dustin Carlino
e32a576237 Reimport the sites that were there before, but under the new naming.
cyipt/actdev#65

(No procgen buildings for any of them yet)
2021-02-11 15:00:40 -08:00
Dustin Carlino
21573e09f1 Delete all of the actdev maps. I'm going to do this over again and just
use the site name as the city, instead of picking the "closest" major
city. This is introducing too much friction in automation.
cyipt/actdev#65

There will be a few awkward results -- cambridge gets renamed, and lcid
gets disassociated from leeds. Worth it for now.
2021-02-11 14:27:28 -08:00
Dustin Carlino
7c0bac236a Bring in study areas for all actdev sites. Automatically show them when launching in actdev mode. cyipt/actdev#65 2021-02-10 08:35:08 -08:00
Dustin Carlino
1b1a4e99c7 Adjust procedurally generated building setback. Generate for most of the suburban actdev maps. https://github.com/cyipt/actdev/issues/65 2021-02-09 16:04:40 -08:00
Dustin Carlino
1241cea22e Update Chapelford boundary, and add LCID. https://github.com/cyipt/actdev/issues/65 2021-02-09 15:41:42 -08:00
Dustin Carlino
bbdd23dada Partly automate importing new actdev maps. Bring in 6 new sites 2021-02-09 13:53:50 -08:00
Dustin Carlino
68e406d26b Swap left/right turns when generating traffic signal policies in the UK.
Verified by trying the "four-stage" template at some intersections. Now
regenerating data.
2021-02-08 17:06:32 -08:00
Dustin Carlino
4235d9f994 When importing maps, optionally add in extra buildings from a GeoJSON
source to augment the ones in OSM. For
https://github.com/cyipt/actdev/issues/53 -- sometimes the buildings
just haven't been mapped in OSM yet, other times the buildings are part
of a future development site. In either case, we can procedurally
generate some houses, so this is a way to include them in the map.

Start doing this for Chapelford. But first, adjust the generated house
sizes -- they were WAY too tiny.

Also prep for [rebuild] [release]
2021-02-07 13:56:26 -08:00
Dustin Carlino
d62b5e9e0c
Slightly randomize where people decide to look for parking. #498 (#501) 2021-02-04 18:42:32 -08:00
Dustin Carlino
634dc4fad1 Remove the quit button from Santa too. Somehow missed this in ca07c522ea, noticed it on web. 2021-02-04 11:26:16 -08:00
Dustin Carlino
a2b4dcb64f Store RoutingParams in the Map. Add a method for the debug UI to override the defaults, rebuilding the CHs. This is in preparation for #237, and part of #494 2021-02-03 10:59:02 -08:00
Dustin Carlino
a14133368e Upload Montreal data 2021-02-02 18:37:19 -08:00
Dustin Carlino
02b90741d6
Draw 'STOP' on stop signs. Fixes #450 (#492) 2021-02-01 16:47:53 -08:00
Dustin Carlino
d2ce997284 Just regenerate all maps after 37a25c0fcb 2021-01-27 17:51:35 -08:00
Dustin Carlino
802a647a81 Import Providence for a student project. 2021-01-27 15:34:54 -08:00
Dustin Carlino
341ce834e3 Based on startup params, display an extra 'study area' on the map. cyipt/actdev#44 2021-01-27 13:00:48 -08:00
Dustin Carlino
9d751afc24 Increase the amount of offstreet parking in Rainier Valley. #446
At long last, we have the 3rd Seattle map that finishes without
gridlock! Hoping to use it for this case study on signal timing
maximums...
2021-01-26 18:15:34 -08:00
Dustin Carlino
c10dc4a696 Collapse tiny little traffic circles into a single intersection, for
saner geometry and simulation. #446, #75

This partly reverts b3bfd6a3f2.

Also bring in fresh OSM data for Seattle.
2021-01-26 17:43:15 -08:00
Dustin Carlino
8e22f2aa9e Make the Rainier Valley map smaller, cutting out MLK. #446
The roads that cross the light rail tracks wind up gridlocking horribly.
For this case study, we actually just care about Rainier Ave.

The scenario still gridlocks, but due to tiny traffic circles breaking.
Going to try automatically converting those to a single node.
2021-01-26 15:28:36 -08:00
Dustin Carlino
cbf0763327 Move 3 SVGs into widgetry icons, bundling them into the build. Discovered these missing by updating https://github.com/dabreegster/streetcad 2021-01-26 14:18:41 -08:00
Dustin Carlino
cad336d493 Tighten up the definition of u-turns, requiring the from/to road names
to match.

Originally these were introduced to deal with merging intersections
between dual carriageways. But inadvertently, lots of left turns got
reclassified as u-turns. That's caused various headaches, most recently
the lakeslice gridlock. That's fixed again!
2021-01-25 17:19:48 -08:00
Dustin Carlino
fa70816bfa Attempt some transformation of sidewalk:{left,right} tags for #449.
Fix a bug with the previous commit (lanes=1 on a two-way). Now regenerate.

... Unfortunately lakeslice now gridlocks due to a turn generation bug.
Temporarily removing the prebaked results there so I can push these last
few changes through. Will resolve this before the next release.
2021-01-25 15:31:01 -08:00
Dustin Carlino
f69335edf0 Let individual maps override the street parking length. #457
Now regenerate all map data, because the schema changed. Also had to
revert part of the last commit to unbreak transit route snapping in
Berlin.
2021-01-25 12:36:49 -08:00
Dustin Carlino
56101addcf Remove the zcool font and Xi'an import. #377
The Xi'an map isn't being regularly used, and it has some issues
(boundary is too large, OSM is missing buildings in most of the area).

The zcool font enables Chinese characters to render, but costs 6MB in
the binary files, slowing down wasm loading time. Eventually, we can
support async loading fonts and passing them to widgetry when loading a
map requiring them. For now, cutting down wasm size is a bigger
priority.

game wasm from 18MB to 12MB. Not bad!
2021-01-24 20:30:20 -08:00
Dustin Carlino
ea103803d1 New map focusing on Rainier Valley for #446, studying the effects of amping up maximum signal cycle lengths. [rebuild] [release] 2021-01-24 15:49:15 -08:00
Michael Kirk
07738d2cef
popup and persistent split to spec (#480)
* introduce "pill" to be explicit about fully rounded, vs a "None" radius

* no-op transition to CornerRadii

* popup button to spec

* restore "fully rounded" layout behavior

* use plain light to better show highlight

* persistent split to spec (for day theme anyway)

* remove night-theme colors for speed panel

* fixup docs for pill

* CR: remove unnecessary `row`

* CR: remove outdated doc

* import order
2021-01-24 15:32:28 -08:00
Dustin Carlino
6cb951f545 Grab fresh Cambridge data again; geofabrik hadn't picked up all of the
changes when I downloaded it. #449

And a small parking fix to better investigate a live edit crash.
2021-01-23 19:24:31 -08:00
Dustin Carlino
c8ba2d878f Grab fresh OSM data for Cambridge, with some cycling fixes from Martin. #449 2021-01-23 17:27:35 -08:00
Michael Kirk
ee752cf4d9 cleanup with include_labeled_bytes! 2021-01-22 21:06:48 -08:00
Michael Kirk
a9fbe98a44 compile in asset bytes for widgetry assets 2021-01-22 21:06:48 -08:00
Michael Kirk
2b8511251a fix scaling: replace remaining buttons with baked-in-text 2021-01-21 15:25:46 -08:00
Michael Kirk
90b6da7265 apply new delete icon, fix button spacing in signal editor 2021-01-21 15:25:46 -08:00