and lets us compare full sim states
2.9 KiB
TODO
mvp strawman sim
-
start some tests of savestating + deterministic sim
-
cars seemingly whiz past the queue at stop signs (possibly also signals)
-
at signals, cars doing the same turn wont start it until the last car finishes it
-
draw cars in intersections, even when slightly zoomed out
- draw cars in slightly different colors, to distinguish them better
-
traffic signals
- parse kml
-
draw moving / blocked colors (gradually more red as they wait longer)
-
draw stop buffer in front/behind of cars
-
cars with different speeds
-
clean up code
- line type
- ditch vec2d / settle on types
- split out UI stuff
- easier way to define magic tuneable constants
if ever stuck
- parked cars
- sidewalks and pedestrians
- reversible sim
editor mode
-
make editor mode for traffic signals
- button to reset intersection to original cycles
- turns can belong to multiple cycles; the colors become slightly meaningless
-
stop sign editor (start simple)
- 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
- later feature: ban individual turns
- cant have no stop signs for two roads whose center line crosses
-
more data
- shp parser for traffic signals
- do need to mouseover shapefile things and see full data
- traffic signal description field says number of phases
- so many signs: https://gis-kingcounty.opendata.arcgis.com/datasets/traffic-signs--sign-point/
- all up north? :(
-
why are some icons in the intersection?
-
support left turn yield
-
draw detailed turns better, like https://i.ytimg.com/vi/NH6R3RH_ZDY/maxresdefault.jpg
-
mark problem areas where road is too short!
-
manually fix OSM issues, like deleting a way completely
cleanup
- add/plan tests
- run clippy everywhere
- extract common crates
- ask about mut vs returning new version of self (and what that requires of all the contained stuff)
- break editor up into more crates
- minimize heap usage -- look into profiling and smallvec
- use some tool to enforce consistent style (import order, extern crate only in mod.rs or lib.rs, derive order)
Conga line idea
- try constructive approach for snake idea
- with interactive mode?
- try destructive approach for snake idea
- with interactive mode?
- allow for manual tuning
- serialize results
UI
-
support massive maps
- render to a bitmap and clip that in?
- drop events sometimes
-
draw water and greenery areas
-
more toggleable layers
- show road/bldg types by color
- can also use to interactively find osm filters to fix
- show where on-street parking probably is
- show where sidewalks probably are
- infer from roads and parcel data?
- draw benches, bike racks
- more generally, a way to display random GIS data from seattle site (kml)
- show road/bldg types by color
-
3D UI sharing the same structure as the 2D one
-
web version