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
Dustin Carlino
0bcf01fd05
Avoid crashing in recalculate_intersection_polygon due to polylines not
...
containing some points. Happens at i524 in Arboretum and in the West
Seattle proposal.
I don't understand yet why this is possible in the first place, but
crashing is pretty bad in the meantime.
2021-06-19 11:29:01 -07:00
Dustin Carlino
8f199177f5
Upgrade to Rust 1.53
...
- arrays are now iterable directly
- switch to using BTree{Set,Map}::retain!
- a round of clippy
- regenerate scenarios and prebaked data; not sure why, but there's a
diff
2021-06-17 23:04:35 -07:00
Dustin Carlino
0f7299f091
Found the bug with the previous commit. Keeping this separate to point out the issue. Reasoning using get_active_cars is super dangerous; likely going to remove it. #555
...
But finally, regenerate prebaked data successfully and commit all of
this. It's done. Blocking driveways on exit works now
2021-06-17 13:39:26 -07:00
Dustin Carlino
841336ad15
A grand finale: refactor logic to update follower vehicles, and call that new logic when clearing static blockages. #555
...
And previous commit was wrong about Unparking needing distances; it
needs distances OF ANOTHER QUEUE.
2021-06-17 13:01:00 -07:00
Dustin Carlino
1528b954c6
Carefully change the Unparking and IdlingAtStop states to require
...
distances... #555
Prebaked actually broke with the previous commit in Arboretum, because a
car waits behind a blockage, then suddenly warps ahead. But now we can
fix this...
2021-06-17 12:18:25 -07:00
Dustin Carlino
1dc973c7fa
And finally: enforce static blockages while a vehicle exits a driveway onto a far lane! #555
...
Vehicles now wait behind blockages, but one more little bug... after the
driveway is clear, the waiting vehicle jumps forward. Need to reset
their crossing state, same as waiting behind a bus.
2021-06-17 09:27:48 -07:00
Dustin Carlino
f5dc28900b
The big rip: change Queue to store more than just actively moving vehicles. Expose these in the API and update a few callers. #555
...
Still no behavioral change -- not inserting blockages into the queue
yet, just representing them. Verifying no prebaked changes still.
2021-06-17 08:51:07 -07:00
Dustin Carlino
ab539f1efd
Creeping towards #555 : make the queue of cars in Queue private, and start some proper APIs for managing it. We need to change this to model blockages, and this is a small step towards that.
...
No behavioral change; verified by regenerating prebaked data
2021-06-16 21:35:57 -07:00
Rémi Lauzier
1a4b997818
Fix some clippy warnings
2021-06-16 16:21:35 -07:00
Dustin Carlino
cbce654800
Prepare to have vehicles exiting driveways block any intermediate lanes. #555
...
This is just wiring together all of the state transitions. Haven't
decided how to internally implement this in Queue yet.
2021-06-16 16:02:17 -07:00
Rémi Lauzier
dd050ea425
Update some dependency
2021-06-16 15:51:03 -07:00
Dustin Carlino
321e7cd0ee
Allow exiting a driveway onto any lane (in the same road direction). #555
...
- Support this at the pathfinding level, when transforming v2->v1
- Adjust how the vehicle's body is rendered as it exits a driveway onto
a farther lane
No support yet for blocking any intermediate lanes; vehicles may clip
through each other without any conflict. Planning to add that
separately.
Regenerating all scenarios and prebaked data...
2021-06-16 15:46:09 -07:00
Dustin Carlino
d42c1310b0
CLI flag to start in the KML viewer for convenience
2021-06-16 11:14:17 -07:00
Dustin Carlino
01a2dfe215
Create a new panel to show how trips are distributed through the day.
...
Refactor some of the sliding window code along the way.
2021-06-14 17:32:18 -07:00
Dustin Carlino
484720d648
Add code to include pass-through trips (border->border) from Soundcast data. #665
...
... But leave it disabled, until we can handle such larger file sizes
and levels of traffic.
And although this should be a behavioral no-op, there's a diff in the
scenario files, so recalculate them.
2021-06-14 16:23:14 -07:00
Dustin Carlino
d272b745f2
Add a simple Python script to run grid2demand. I need to produce a scenario for Tempe, and it's also useful for #608
2021-06-14 11:00:02 -07:00
Dustin Carlino
6cafe017c6
new release
2021-06-13 18:33:11 -07:00
Dustin Carlino
3fd8615745
Slim down the github homepage, linking to some of the new site. [rebuild] [release]
2021-06-13 17:34:54 -07:00
Dustin Carlino
04a5327c3a
Remove West Seattle proposal link; taking that page down from docs
2021-06-13 12:13:29 -07:00
Dustin Carlino
96aa09edd0
Small steps towards matching more GMNS signals: #626
...
- toss a loading screen around it
- allow jump to ID in edit mode
- break down failure types more
2021-06-13 11:59:37 -07:00
Dustin Carlino
59597708ec
Draw polylines as arrows in the KML viewer; it's pretty much always useful to see the direction of the raw data
2021-06-13 11:32:02 -07:00
Dustin Carlino
500f14869f
Le Fournil special: don't redraw KML text constantly; it was sluggish for signal timing.
2021-06-13 11:26:08 -07:00
Dustin Carlino
76aba75082
Update links to docs after some reorg in the other repo
2021-06-12 13:38:38 -07:00
Dustin Carlino
43d6ba80c5
Fix all_walking_costs_from by properly accounting for the distance between sidewalk endpoints and building paths.
2021-06-11 10:10:41 -07:00
Trevor Nederlof
4e150dcab0
Generalized connectivity to use Spot and added BorderIsochrone ( #668 )
2021-06-11 10:06:53 -07:00
Dustin Carlino
972f5b0187
Lower the priority of service roads when placing stop signs
...
Regenerate all data. Wallingford started gridlocking due to this change;
plowing ahead and will follow up and fix it.
2021-06-11 09:40:44 -07:00
Dustin Carlino
18ff0eefc0
Store Turns per Intersection, instead of a massive BTreeMap. #368
...
Minimal file size savings, but substantial runtime improvement!
2021-06-11 09:40:44 -07:00
Dustin Carlino
cabee219db
Fix some crashing spinners; the rust compiler inferred the wrong numeric type. #674
2021-06-10 18:21:24 -07:00
Dustin Carlino
fc4f0a8c8e
Some Tempe fixes:
...
- Stop importing rail in Tempe. Not simulating anything on it yet, and it complicates gridlock. #672
- Update the GMNS timing.csv import based on slight format change. #626
2021-06-09 16:35:46 -07:00
Dustin Carlino
d827673ace
Periodically free memory in the middle of screenshot test, to avoid
...
running out on my current machine. Fixes #671 .
Finally regenerate screenshots for the first time in ages... just
blindly accepting everything, because the slightly different screen size
means everything was slightly shifted down.
2021-06-09 14:31:40 -07:00
Dustin Carlino
60352747bf
Get importer and game crates to share dependencies again, by enabling
...
some features for transitive deps in each crate.
2021-06-09 10:21:25 -07:00
Dustin Carlino
889c500eb1
Force geojson to use geo-types feature everywhere. This lets different
...
binaries properly share workspace dependencies.
See
https://www.reddit.com/r/rust/comments/nvd6y7/common_crates_in_cargo_workspace_recompiled_due/
for the full story behind this mess.
I'm going to keep repeating this process until I get game and importer
to share dependencies again.
2021-06-09 09:48:53 -07:00
Dustin Carlino
ecce96fd75
Grab new Tempe OSM data after lots of fixes upstream to 13th/Mill. #654
2021-06-07 19:10:02 -07:00
Dustin Carlino
f39a50a7e5
new release
2021-06-06 15:45:40 -07:00
Dustin Carlino
710e9152cd
Just trigger [rebuild] [release]
2021-06-06 14:32:59 -07:00
Dustin Carlino
5192847e62
Dramatically speed up initial seeding for infinite parking. #329
2021-06-04 11:37:47 -07:00
Dustin Carlino
a38125ad2c
Adjust multi road editor more -- custom cursor icons for select/unselect
2021-06-03 15:23:55 -07:00
Dustin Carlino
8721c4f6d9
When the desktop version is old, have a button to go directly to the releases page to grab a new one
2021-06-03 09:14:17 -07:00
Dustin Carlino
bf2e4be2a2
Adjust road editor based on real live coffeeshop feedback:
...
- "x/y similar segments" to relate to explanatory text about lane
configurations below
- "edit multiple" -> "apply to multiple", since you have to change the
road first
- start with all candidates selected
2021-06-03 09:02:12 -07:00
Dustin Carlino
b1150c9524
Export raw CSV data about problems per trip, for a data analyst to explore possible dataviz in their more familiar tools
2021-06-02 19:23:48 -07:00
Dustin Carlino
c9e4f754e1
Fix a crash in the problem map layer, caused by checkboxes getting out of sync
2021-06-02 16:26:04 -07:00
Dustin Carlino
ef4ea01c71
Add a button to import all traffic signals map-wide from a timing.csv file, reporting the total number of successes and failures. #626
2021-06-02 12:18:24 -07:00
Dustin Carlino
d2ecab44a7
Be sure to validate signals before committing the results, since GMNS imports aren't validated upfront. #626
2021-06-02 11:40:54 -07:00
Dustin Carlino
cd66d7209e
Automatically fill out crosswalks to the GMNS signal import. #626
2021-06-02 11:13:30 -07:00
Dustin Carlino
5127a82b54
Import Tehran
2021-06-01 10:19:06 -07:00
Dustin Carlino
d014098f59
Fix an extremely naive implementation of calculating average angle,
...
which was causing bizarre turn lane arrows in Tempe.
2021-06-01 09:52:40 -07:00