Dustin Carlino
bae86bf885
Add a debug tool to visualize equiv_pos, before trying to improve this for curvy roads.
2021-07-05 10:16:39 -07:00
Dustin Carlino
b4c776c0fa
new release
2021-07-04 16:33:14 -07:00
Dustin Carlino
6039063d28
Add a debug tool to dump JSON for different objects and open up with an external viewer. [rebuild] [release]
...
And fix some clippy problems
2021-07-04 15:32:49 -07:00
Dustin Carlino
d314163f13
Finally regenerate prebaked data, with left turns out of driveways fully
...
supported!
- Had to skip over center turn lanes -- we're approaching the point where
we can model those realistically.
- Carefully deal with static blockages near the start of a lane to avoid
spillover. Observed near b3810 in greenlake. It's time to make equiv_pos
smarter...
2021-07-04 14:34:20 -07:00
Dustin Carlino
382d890ac6
Switch to updated fast_paths
2021-07-04 14:34:20 -07:00
Dustin Carlino
0211094689
Create static blockages for off-side driveway exits. Verified correct
...
for all combinations of on/off-side exits and cutting across lanes by
using the static blockage visualizer.
2021-07-04 14:34:20 -07:00
Dustin Carlino
646e85d278
Optionally draw static and dynamic blockages. This is immensely useful
...
for working on exiting from driveways and lane-changing. #382
2021-07-04 14:34:20 -07:00
Dustin Carlino
95ffa62218
Fix the unparking position. When we exit a driveway in EITHER direction,
...
we need to adjust the start position to account for the vehicle's
length.
Also add a very convenient debug tool to understand positions along
lanes.
This probably breaks static blockages; I'll check into that next.
2021-07-04 14:34:20 -07:00
Dustin Carlino
57feeada59
Allow vehicles to exit driveways onto the opposite side of the road. #555
...
- Adding an internal alt_start to PathRequest
- Using it for contraction hierarchy queries only (the Dijkstra
implementation now diverges!)
- Figuring out which start position was used
TODO:
- Fix the unparking position
- Make sure the simulation inserts static blockages
- Carefully check the same start/end road case
- Evaluate impact on gridlock / cancelled trips
2021-07-04 14:34:20 -07:00
Dustin Carlino
bf316fa99c
Fix a crash in the trip info panel. If you happen to open a trip of a
...
car waiting to spawn, its total path distance is briefly 0.
Also silence the lane-changing info for the moment, until work resumes
there.
2021-07-03 08:28:16 -07:00
Dustin Carlino
160d65ca28
Try loading a built-in proposal with --edits, if player data is missing.
2021-07-02 13:14:08 -07:00
Dustin Carlino
d36c2b2d40
Fix broken links on the github homepage
2021-07-02 12:53:54 -07:00
Dustin Carlino
6c1c6a3235
Fix crash when changing speed limit. At some point, we started changing lane IDs for every road edit and never updated this. Closes #685
2021-07-02 11:54:59 -07:00
Dustin Carlino
4fd86c8a41
Entering edit mode is slow on large maps, because clearing the simulation recreates parking state for every building. Parallelize it to speed it up at least a bit.
2021-07-02 11:47:05 -07:00
Dustin Carlino
866ecd5f88
Fix a bug in efaf6085e4
that was using walking paths for vehicles. Now prebaked data doesn't budge.
...
And add some more timing to demonstrate why editing a single lane in a
huge map is so slow...
2021-07-02 11:25:02 -07:00
Dustin Carlino
f4c8a508da
Keep a JSON file with a summary of prebaked simulations, to more easily detect regressions with broken trips.
2021-07-02 10:07:37 -07:00
Dustin Carlino
1b8d05b264
Upload data for Brooklyn. Also grabbed fresh NYC OSM data for the Manhattan maps too
2021-07-01 13:11:14 -07:00
Trevor Nederlof
3faf9893a9
Add downtown brooklyn as a nyc map
2021-07-01 12:27:58 -07:00
Dustin Carlino
9f4fac58a7
Workaround a crash trying to render building 4582 in Green Lake, which
...
has a short driveway that's crashing make_polygons.
This is more fallout from the f64 serialization change. I don't
understand the root cause yet...
2021-07-01 10:43:42 -07:00
Dustin Carlino
4f00c8d2bb
Phinney runs without gridlock again, so re-enable it. Pretty sure
...
f57278e9cd
fixed it.
2021-06-30 16:51:03 -07:00
Dustin Carlino
efaf6085e4
Prepare for exiting driveways on the off-side by switching to
...
specialized PathRequest constructors
2021-06-30 12:35:22 -07:00
Dustin Carlino
137e9a0c2c
Fix up some places affected by the f64 serialization:
...
- offstreet_parking_length in importer config
- backwards compatibility for map edits
- fixing up the baked-in proposals
- working around a few PolyLine bugs that happen with the new rounding
- Don't regenerate actdev scenarios yet -- the upstream JSON format is
out of date, will have to fix separately.
2021-06-30 06:35:42 -07:00
Dustin Carlino
057ac5d020
Serialize trimmed f64's in the geom crate as i32, since the f64's are
...
trimmed to 4 decimal places anyway. Do this for Pt2D, Distance,
Duration, Speed, Time.
Regenerating everything...
2021-06-30 06:35:42 -07:00
Dustin Carlino
70a9508415
Change the CityPicker to merge the list of maps and cities from the local filesystem and the manifest.
...
This fixes various problems when importing local maps (in new or
existing cities) and getting out of sync with the manifest.
2021-06-25 19:37:42 -07:00
Dustin Carlino
126c62d6ba
Simplify CityPicker logic: just use the optional city.bin to draw districts. Always use the filesystem to create the buttons.
2021-06-25 19:11:37 -07:00
Dustin Carlino
8546eb4b5f
Make the timer hierarchy for --regen_all or any city with many maps more easy to understand
2021-06-25 15:29:28 -07:00
Dustin Carlino
3cda1342ab
Fix nondeterminism in z-ordering for lanes, hopefully removing noise from the screenshot diff test.
...
(Ideally there'd be no overlapping lanes in the first place, but that's
quite hard)
2021-06-25 12:29:55 -07:00
Dustin Carlino
5161474955
Stop building huge_seattle twice in the importer workflow
...
I have some fuzzy vision of declaring all importer pieces as a dependency graph, with optional caching of some input, that would express this kind of thing better. But... in the meantime.
Now regenerating everything...
2021-06-25 12:18:04 -07:00
Dustin Carlino
f57278e9cd
Enable the new walking turn algorithm for consolidated intersections
...
only. It has much simpler logic and produces correct results for these
intersections, but it has degradations in some cases -- so limit where
we use it.
But in the meantime, this makes realistic crosswalks over Aurora,
fixing crazy walking detours there.
Not regenerating yet.
2021-06-24 12:41:38 -07:00
Dustin Carlino
c0ce76a92a
Two slight adjustments to speed up the map importer development
...
workflow.
2021-06-24 12:13:47 -07:00
Dustin Carlino
44171500b7
Get the Green Lake map to complete without gridlock!!!
...
- Allow blocking the box around two complex intersections in Green Lake.
This makes the vehicle behavior much more realistic there, by visual
inspection.
- Amp up offstreet parking to 10 per building. I noticed the simulation
completes easily with --infinite_parking. This is an approximation of
that. We make really bad guesses about carpooling and the amount of
parking available around here, so effectively just remove it from
consideration for now.
2021-06-23 13:56:42 -07:00
Dustin Carlino
1bfcba6165
Avoid crash:
...
1) Change the language in a map with lot of options
2) Switch to a map with less language options
3) Open settings panel, trying to create dropdown
2021-06-23 13:13:43 -07:00
Dustin Carlino
8c2b84c37c
Keep the trip info panel open when the user clicks before/after and has to initially load the unedited map. #684
2021-06-23 12:52:18 -07:00
Dustin Carlino
9f22d4893a
Fix a crash with time-warping to the past when the map is edited. See #684 for an explanation.
...
Verified working on native. It should also be fine on web -- loading the
unedited map has to be a whole separate state because of web IO in the
first place.
2021-06-23 10:29:10 -07:00
Michael Kirk
321c9d9c40
Label contingency matrix axes
2021-06-23 10:13:51 -07:00
Dustin Carlino
799fdfbbc0
Don't start lane-changing while still being a laggy head. Fixes the crash. #392
...
Now prebake data again, and upload everything
2021-06-22 18:36:35 -07:00
Dustin Carlino
190ee4b08f
Fix the path v2->v1 and opportunistic lane-changing costs to heavily penalize cars from using bus lanes.
...
This doesn't avoid the aforementioned lane-changing crash, but by manual
inspection, it's keeping cars out of bus lanes.
2021-06-22 17:47:05 -07:00
Dustin Carlino
48076a4c5b
Better stop sign placement -- degenerate roads shouldn't get them. Not
...
sure why this wasn't done before.
Regenerated all maps... but this happens to expose some lane-changing crashes.
2021-06-22 17:05:18 -07:00
Dustin Carlino
e08ddba241
Bring in fresh Seattle OSM data with the new cycletrack mapped around
...
Green Lake, and fix some missing support for bidi cycletracks.
2021-06-22 08:31:16 -07:00
Dustin Carlino
678ed84e4c
Fix a broken Dropbox link in the importer pipeline. The PSRC raw data is now just in S3.
2021-06-21 21:41:05 -07:00
Dustin Carlino
69152f00ad
Fix critical dynamic blockage math bug. Stops some crashes in some cases, including the tests -- which run again. Manually verified the turn goldenfile diff in the UI and regenerated prebaked data. #392
2021-06-21 20:37:11 -07:00
Dustin Carlino
8db88d0890
new release
2021-06-20 20:08:06 -07:00
Dustin Carlino
0f0639d67c
Tweak front page docs a bit, [rebuild] [release]
2021-06-20 18:34:02 -07:00
Dustin Carlino
03db0675cc
Add a Seattle map covering Green Lake
2021-06-20 10:51:30 -07:00
Dustin Carlino
786bb1159d
Fix the lane widths appearing the same in the dropdown due to rounding. #597
2021-06-20 10:30:07 -07:00
Dustin Carlino
ae3d4e2363
Fix loading edits that change the number of lanes in a road. We need to compare the old version of the road in the edits with the basemap, NOT the edited version of the road. #597
2021-06-20 10:06:38 -07:00
Dustin Carlino
d8cdfaba05
Make the multi-road editor only check and edit lanes_ltr, not speed limit. The Aurora cycletrack edit stopped matching because the speed limit happens to change along Aurora. We can think through a better UX to handle both, but I suspect most use cases will focus on lane configuration. #597
2021-06-20 10:00:05 -07:00
Dustin Carlino
e6e6fb267d
Reset current selection after editing multiple roads. This sometimes crashes if the selected lane gets deleted or assigned a new ID. Fixes a crash trying to make the West Green Lake cycletrack. #597
2021-06-20 09:50:33 -07:00
Dustin Carlino
3b748ee9fa
Implement dynamic blockages and use them for lane-changing. #392
...
This is conceptually simple and improves the behavior of vehicles
that're following a LCing leader.
Regenerate prebaked results -- no new gridlock!
2021-06-19 12:35:19 -07:00
Dustin Carlino
1e43d929e5
Implement dynamic lane-changing in a simple way:
...
- only triggered when a vehicle becomes Queued
- Only one adjacent lane, no contraflow (crossing the road's center
line)
- Don't return to the original lane after passing
- Using a static blockage in the old lane (so other vehicles will wait
too much)
- Only using the new lane to determine position (so visually a car will
clip a bike as they pass)
Haven't regenerated prebaked data. #382
2021-06-19 12:35:19 -07:00