3.3 KiB
TODO
Map editor
-
still key overlap bugs with floodfilling
- master UI exclusive state -- one plugin at a time
-
traffic signal editor
- button to reset intersection to original cycles
- turns can belong to multiple cycles; the colors become slightly meaningless
- support left turn yield
-
stop sign editor
- cant have no stop signs for two roads whose center line crosses
- infer default policy
- draw as red octogon with thin white trim, off to the right side of the road
- cant have no stop signs for two roads whose center line crosses
-
better visualization
- why are some icons in the intersection?
- draw detailed turns better, like https://i.ytimg.com/vi/NH6R3RH_ZDY/maxresdefault.jpg
Driving model
-
try to simplify straw_model step (less phases?)
-
make cars pathfind to their destination
-
better visualization
- draw moving / blocked colors (gradually more red as they wait longer)
- draw stop buffer in front/behind of cars
- draw cars in intersections, even when slightly zoomed out
- draw cars in slightly different colors, to distinguish them better
-
start implementing a second AORTAish driving model
-
reversible sim
Map model
-
more data
- parse shp, get traffic signals in the right places
- do need to mouseover shapefile things and see full data
- grab number of phases from traffic signal shp
- look for current stop sign priorities
-
multiple lanes
-
display + mouseover parking lane and sidewalk
- make the center lines in geom layer work (use debug mode to verify)
- something broke curved roads
- make extra lanes for oneways work
- have to switch from Centered to DrivingDirection somehow
- either translate points up-front and be normal or fix geom layer (for turns and intersections)
-
model cars parking
- maybe render numbers on the cars to distinguish them
- document the FSM (on lane driving, waiting, turning, parking, etc)
-
model bikes in driving lanes (as slow cars)
-
add random bike lanes, figure out how turns would work
-
be able to convert between parking and bike lanes, recompute the turns
-
model pdestrians
- maybe draw crosswalks?
-
when rendering sidewalks, have an option for a grass buffer
-
regression testing
- goldenfile approach for map_model, geom, and render layer from a small OSM chunk
- or maybe a visual demo approach with a list of things to manually check
- unit test that Centered thick line yields same geometry with points reversed
-
Code cleanup
-
clean up code
- master Map struct
- line type / ditch vec2d / settle on types
- better layering: GeomParcel, GeomIntersection, etc, so that render layer doesn't need to know Bounds and use gps_to_screen
-
add/plan tests
-
document pieces that're stabilizing
-
run clippy everywhere
- presubmit script
- also enforce consistent style (import order, extern crate only in mod.rs or lib.rs, derive order)
-
extract common crates
-
ask about mut vs returning new version of self (and what that requires of all the contained stuff)
Example use cases
- montlake/520 turn restrictions with pedestrian scramble
- close interior neighborhoods to most cars (except for src/dst), see how traffic restricted to arterials would work
- create a bike network with minimal hills, dedicated roads, minimal crossings