Dustin Carlino
05ba77ba9b
prototyping map edits as a sequence of commands. some existing behavior
...
temporarily lost. i think this is simpler, will forge ahead
2019-11-16 20:27:10 -08:00
Dustin Carlino
f840175ef4
display pathfinding cost in info panel and heatmap
2019-11-16 15:16:28 -08:00
Dustin Carlino
b8abeccb43
very basic pathfinding penalty for not using bike/bus lanes when theyre available. except it's not working! argh
2019-11-15 15:00:14 -08:00
Dustin Carlino
22397b93a7
NOW ban bikes from motorways. popdat trip filtering needed to handle
...
some impossible-to-fulfill requests involving borders
2019-11-15 10:48:33 -08:00
Dustin Carlino
8ed42e9fb6
can_use can ban bikes from highways... disabled because it's breaking
...
psrc scenario, about to dig in
2019-11-15 10:11:31 -08:00
Dustin Carlino
59913d79e9
also switch some border-related methods to use PathConstraints
2019-11-14 20:37:03 -08:00
Dustin Carlino
2dea662fa0
rip out old methods in map for filtering turns
2019-11-14 20:24:54 -08:00
Dustin Carlino
0f3191bca8
tweak pathfinding to use PathConstraints
2019-11-14 20:10:53 -08:00
Dustin Carlino
9e3f318f48
make floodfiller show reachability based on PathConstraint. start new
...
methods for valid turns based on PathConstraint.
2019-11-14 20:00:52 -08:00
Dustin Carlino
4c9975f8b0
be a little more precise with PathRequest
2019-11-14 19:18:22 -08:00
Dustin Carlino
1c330d856f
fix the close-intersection tool. make it check that sidewalks aren't disconnected by the change. implement un-closing an intersection for construction!
2019-11-14 13:03:33 -08:00
Dustin Carlino
98ef31fa24
disabled: import and render pedestrian traffic islands. include them in
...
search results.
2019-11-14 10:54:11 -08:00
Dustin Carlino
53bbf4e272
manually trim a few disconnected sidewalks
2019-11-13 15:01:53 -08:00
Dustin Carlino
628111b421
show sidewalks disconnected in edit impact. prerequisite to preventing this.
2019-11-12 16:08:39 -08:00
Dustin Carlino
03d599775f
clean up some crosswalks generated near roads with sidewalks only on one side
2019-11-12 15:54:47 -08:00
Dustin Carlino
65d8f9e3c6
oops, wasnt recomputing pedestrian graphs at all. but now that connectivity can change too, so...
2019-11-11 15:17:40 -08:00
Dustin Carlino
1ff80b2e20
start figuring out what impact edits have on trips in a scenario. also,
...
count trips with the first path failing as aborted.
2019-11-11 14:14:19 -08:00
Dustin Carlino
6fb5fd2239
start modeling intersections closed for construction. ignore impact on trips, pathfinding, etc. bugs with applying edits, but a start.
2019-11-10 15:03:06 -08:00
Dustin Carlino
0fb358b38d
interpret sidewalks=separate as =both for now, so the downtown map is usable again
2019-11-10 12:19:39 -08:00
Dustin Carlino
5aecb96d8f
refactor turn restriction handling in map_editor... no behavioral changes yet
2019-11-09 16:10:18 -08:00
Dustin Carlino
5bb8e0a83b
overhaul stop signs. can only toggle which roads have a stop sign or
...
not. no more granular control of individul turns
2019-11-09 14:20:31 -08:00
Dustin Carlino
7b2a0b87b3
just use 3 turn priorities, interpret them a bit differently.
...
temporarily kinda breaking stop signs
2019-11-09 13:35:55 -08:00
Dustin Carlino
6a5b312a07
same for correct end lanes
2019-11-07 16:32:26 -08:00
Dustin Carlino
b0dde63e57
make bulk spawner use correct start lanes
2019-11-07 16:16:04 -08:00
Dustin Carlino
179009de32
stop coloring synthetic/original stuff in map editor. not useful now that it's normal to modify existing stuff
2019-11-06 10:16:06 -08:00
Dustin Carlino
7800ac046e
WIP detecting problems applying fixes
2019-11-06 09:58:21 -08:00
Dustin Carlino
1a28768df3
displaying bus delay data over time. needs work, but solid start to a
...
general plotting mechanism
2019-11-05 13:00:51 -08:00
Dustin Carlino
03e2c0b3f2
one master set of fixes in huge_seattle coordinate space, then a single override per map. start over with fixes... again. for the last time?! all the tricky cases from last time work now...
2019-11-04 09:50:59 -08:00
Dustin Carlino
432995d8e5
confirm before bailing out of sandbox mode
2019-11-01 20:43:09 -07:00
Dustin Carlino
33fe2981af
oh wow, traffic signal durations have been hardcoded forever. woops?
2019-11-01 14:26:27 -07:00
Dustin Carlino
f0bc8eb1fa
move a validity check for border intersections up-front in map construction. be able to skip fixes in precompute scripts too
2019-10-31 15:55:02 -07:00
Dustin Carlino
abf14e1fac
track when map edits are dirty
2019-10-31 14:51:35 -07:00
Dustin Carlino
11af01d0ea
prevent bus routes near borders from being filtered out
2019-10-31 12:07:35 -07:00
Dustin Carlino
9995bed6ab
improve dead-ends by using a shared sidewalk corner, not a crosswalk
2019-10-30 10:10:28 -07:00
Dustin Carlino
a5892daedb
add a new lane type for road closures
2019-10-29 17:04:57 -07:00
Dustin Carlino
8e4bc6961b
montlake is completely fixed of short roads! also turn restrictions
...
around 520, crosswalks over 2 one-ways, decided to use one fix file per
map
2019-10-28 19:08:44 -07:00
Dustin Carlino
ca43e6fb43
woops, wasnt deleting turn restrictions from world layer. fix up
...
montlake/520 once again, modulo turn restrictions
2019-10-28 16:16:25 -07:00
Dustin Carlino
1f7c113267
fix road merging. simpler now that roads only have one object
...
associated. require turn restrictions to be deleted first. fix the
boston area as a test
2019-10-28 14:33:10 -07:00
Dustin Carlino
6f50cbaa30
finishing the big cutover from stable to original IDs. main path works,
...
now looking at map editor
2019-10-28 12:40:09 -07:00
Dustin Carlino
ea50371d64
rip out stable IDs in favor of orig IDs. the extra layer is confusing for things like MapFixes. stop modifying orig IDs when merging roads.
...
NOT done with this transition yet, just pushing to not lose work
2019-10-28 12:08:11 -07:00
Dustin Carlino
ecc86b6d6a
revamping MapFixes. very straightforward full override of synthetic/normal stuff, including geometry. no more semantically weird hints like merging roads. some bugs left.
2019-10-27 17:15:27 -07:00
Dustin Carlino
75e155fec6
filter out parking lanes without any sidewalks at all nearby (and also
...
warn about them)
2019-10-26 17:53:09 -07:00
Dustin Carlino
e881d13014
find all the short lanes, from map_editor
2019-10-26 15:01:27 -07:00
Dustin Carlino
fe14e1709b
implement PartialEq on Pt2D using the old epsilon_eq. too many places in the codebase are inconsistent.
2019-10-25 12:24:18 -07:00
Dustin Carlino
1e903c6cee
pass a flag to disable using mapfixes, since it's annoying to keep temporarily deleting these
2019-10-25 10:09:47 -07:00
Dustin Carlino
1a92590c28
some fixes become invalid as osm edits happen. print better errors so the fixes can be manually... fixed. and a script to grab fresh OSM data
2019-10-24 17:11:35 -07:00
Dustin Carlino
d8b11ca10e
some right (by angle) turns cross roads; those should be straight turns
2019-10-23 14:37:00 -07:00
Dustin Carlino
2313b06995
DISABLED: apply sidewalk hints, same as parking. need to sort out what
...
should happen with parking without sidewalks
2019-10-23 13:00:42 -07:00
Dustin Carlino
9cab5bf903
prep before bringing in king county sidewalks. clean up lane type
...
calculation, move motorway/parking filter earlier. stop bringing in
street signs.
2019-10-23 09:35:41 -07:00
Dustin Carlino
996eceea92
with the new traffic signal, add back the 520 EB onramp
2019-10-22 15:00:56 -07:00
Dustin Carlino
2d02f90d9b
another easy one -- one phase per road
2019-10-22 14:29:58 -07:00
Dustin Carlino
92b15507d5
new strawman 2-phase traffic signal policy
2019-10-22 13:54:09 -07:00
Dustin Carlino
44eb13d5ee
argh, there are two tags used for shared left turn lane
2019-10-21 19:31:41 -07:00
Dustin Carlino
d358f574d5
handle OSM polylines that have redundant internal nodes and cause weird shifting later (26th and gilman)
2019-10-21 19:28:31 -07:00
Dustin Carlino
c9db056c3a
start representing shared left turn lanes. nothing uses them yet,
...
just draw them (without the left turn markings)
2019-10-21 16:14:16 -07:00
Dustin Carlino
7ead5f9281
make traffic signal diagram always be a fixed width; zoom the intersection based on that
2019-10-21 15:17:21 -07:00
Dustin Carlino
f78b11d633
(temporarily) filter out driveways too close to either end of the road.
...
get cars unparking from driveways properly.
2019-10-19 19:10:59 -07:00
Dustin Carlino
96a38b98b1
allow sidewalks on both sides of all oneways. dont remember where the negative case was earlier. this was causing parking->sidewalk crashes in many maps
2019-10-18 14:50:05 -07:00
Dustin Carlino
012d5bdd1d
make parking/unparking on offside shift the correct direction.
...
theoretically also handle unparking from a driveway, but cant test that
easily yet...
2019-10-17 14:40:27 -07:00
Dustin Carlino
5e41a607fd
adjust starting pos of parked cars going to offside driving lane
2019-10-17 14:11:07 -07:00
Dustin Carlino
03d31477af
make sim handle parking lanes on off-side of a oneway. ostensibly.
...
haven't forced a test case yet
2019-10-16 17:55:22 -07:00
Dustin Carlino
10f2f6008f
improve map_editor's intersection preview
...
- timer for setting up world
- preview all intersections
- move world to map_editor; it's too oddly specialized
- dont show circle while previewing intersection geom
- show overlapping intersection polygons
2019-10-16 15:08:22 -07:00
Dustin Carlino
413525aae5
refactor RawRoad -> initial Road
2019-10-16 10:36:39 -07:00
Dustin Carlino
1438a1490b
allow parking lanes on the 'backwards' direction of oneways. they exist, still need to use them properly.
2019-10-16 10:23:29 -07:00
Dustin Carlino
a762887cf8
interpret parking tags from OSM. explicitly mark when convert_osm infers and adds these.
2019-10-15 09:49:11 -07:00
Dustin Carlino
51352d05a9
interpret OSM tags to figure out bike lanes on one side
2019-10-14 15:05:45 -07:00
Dustin Carlino
85ff33e72d
basic, but working, impl of cars lane-changing opportunistically
2019-10-13 14:30:20 -07:00
Dustin Carlino
2edb275d3c
rename cycle -> phase, match the literature
2019-10-09 15:27:25 -07:00
Dustin Carlino
b7b3a97a5e
remove parking from SR-99 and other highways :)
2019-10-08 11:41:45 -07:00
Dustin Carlino
8d826c2f43
ah, need to rerender lane on the other side of the road for contraflow to erase dashed white lines
2019-10-08 11:32:30 -07:00
Dustin Carlino
258f3d4528
reverse lane direction as a new edit. might be a few determinism issues,
...
but seems to mostly work.
2019-10-07 18:04:31 -07:00
Dustin Carlino
c82e90bbec
allow merging short roads with metadata changes. some fixes around
...
madison
2019-09-30 10:11:45 -07:00
Dustin Carlino
75b18ccfd5
plumb back better errors for not being able to make map_editor changes
2019-09-30 09:49:47 -07:00
Dustin Carlino
707a649fdd
skip empty phases of generated traffic signals
2019-09-30 09:35:42 -07:00
Dustin Carlino
a539270beb
dont compare GPSBounds exactly, bc floating pt serialization problems.
...
add a turn restriction near uw.
2019-09-30 09:24:17 -07:00
Dustin Carlino
c971a732dd
more flexibly merge short roads with stop sign and traffic signal. use it to fix a stuck part of 23rd.
2019-09-29 20:50:14 -07:00
Dustin Carlino
9d237f314b
dont conflict between synthetic OSM IDs created by map_editor and by map clipping
2019-09-29 12:43:02 -07:00
Dustin Carlino
b99dfce763
transform geometry in MapFixes based on GPSBounds. also have to
...
abandon the 520 fixes, because something odd is going on with the newer
osm import. :( IDs changed?
2019-09-29 10:17:02 -07:00
Dustin Carlino
1a7e0b0a07
fiddle with apply_fixes order to make deleting roads with restrictions work
2019-09-27 11:24:04 -07:00
Dustin Carlino
0ef002ad30
saving the turn restriction mods
2019-09-27 11:19:27 -07:00
Dustin Carlino
1a678f6e72
revamp osm turn restriction handling. capture the 'via' to disambiguate things, and match to roads way sooner. not persisting to MapFixes again.
2019-09-27 11:05:19 -07:00
Dustin Carlino
00b9fc18e3
working on intersection geometry. few disabled things.
2019-09-26 15:56:31 -07:00
Dustin Carlino
2554b08641
upgrade to rust 1.38, fix new clippy errors
2019-09-26 14:38:50 -07:00
Dustin Carlino
0961475abc
some prep to make debugging intersection geometry in map_editor easier.
...
showing cursor pt and labeled debug lines.
2019-09-26 14:29:23 -07:00
Dustin Carlino
837de16c32
preview intersection geometry from map_editor
2019-09-25 12:20:13 -07:00
Dustin Carlino
b9df20de5c
save turn restriction edits in MapFixes. some caveats.
2019-09-25 11:51:34 -07:00
Dustin Carlino
1b21f03464
cant add turn restriction btwn unconnected roads
2019-09-25 11:03:12 -07:00
Dustin Carlino
cfa21d4cc3
cant delete roads involving turn restrictions
2019-09-25 10:50:06 -07:00
Dustin Carlino
23166b1aa8
switch to turn restriction enums, so we can easily use IDs in map_editor
2019-09-24 18:58:06 -07:00
Dustin Carlino
dd9827df72
add/delete turn restrictions, without saving in fixes yet. adding is
...
buggy.
2019-09-24 18:35:57 -07:00
Dustin Carlino
8046f36936
working on turn restrictions in map_editor
2019-09-24 13:55:41 -07:00
Dustin Carlino
67fb1b39da
filling in more validity checks for map_editor...
2019-09-24 13:24:33 -07:00
Dustin Carlino
b108f0cbc0
remove the intermediate HalfMap structure
2019-09-23 16:06:43 -07:00
Dustin Carlino
536df84844
rename raw_data layer of stuff for easier importing, disambiguation
2019-09-23 15:00:55 -07:00
Dustin Carlino
333f976721
remove dead merge code
2019-09-23 14:12:54 -07:00
Dustin Carlino
72d834b332
remove hints. MapFixes took over.
2019-09-23 14:10:50 -07:00
Dustin Carlino
18b5d1ae8f
goodbye, fix_map_geom. rename synthetic crate to map_editor
2019-09-23 13:54:09 -07:00
Dustin Carlino
f06db4ecb4
remove the old hacky fix_ramps phase. underlying problem is probably pedestrian islands not being modeled properly. workarounds now possible through synthetic.
2019-09-23 12:48:55 -07:00
Dustin Carlino
1495cc2970
remove redundancy of osm IDs on raw stuff
2019-09-23 12:08:00 -07:00
Dustin Carlino
deaa555565
cutover Original{Road,Intersection} to just use OSM IDs. adjust a few
...
other places to ensure unique-per-map synthetic OSM IDs
2019-09-23 11:50:04 -07:00
Dustin Carlino
b2fb7e7396
adjust epsilon so huge_seattle imports again
2019-09-21 08:22:28 -07:00
Dustin Carlino
1e73baa078
start remembering osm_node_ids for intersections
2019-09-20 15:17:54 -07:00
Dustin Carlino
a130f876f9
more validations for merging short roads
2019-09-20 14:36:53 -07:00
Dustin Carlino
3a8752d2e9
less dumb raw_data mutation API. take stable IDs, which synthetic model already has and apply_fixes computes anyway
2019-09-20 14:13:08 -07:00
Dustin Carlino
9d077c8081
moving remainder of mutations from model to raw_data
2019-09-20 13:54:51 -07:00
Dustin Carlino
e1988e56e5
recording fixes inside raw map. simplifying model's way of managing all fixes
2019-09-20 13:14:28 -07:00
Dustin Carlino
b9ac8021d0
making first-class mutations on raw map, so synthetic model does less
...
work. not porting over the mutations not preserved by fixes yet, and
also not actually recording fixes for the moment...
2019-09-20 13:06:29 -07:00
Dustin Carlino
0ae0a88abb
actually, serialize MapFixes as json for now. will switch to binary when this is large later, but for now, this is easier to handle schema changes and debug.
2019-09-19 14:39:31 -07:00
Dustin Carlino
9a58136fc1
remove two debuggers (original roads and reattempting intersection geom) from game. not useful, and this could work better in synthetic or fix_map_geom. also lets us stop copying an extra polyline in the final map
2019-09-19 14:16:50 -07:00
Dustin Carlino
1599507934
support for merging short roads in synthetic editor. the fix gets
...
applied later by very painfully copying logic and doing a slow thing.
2019-09-19 14:03:04 -07:00
Dustin Carlino
3eb9acf0aa
plumb parking lane hints around through tags too; simplifies a few places
2019-09-19 13:30:07 -07:00
Dustin Carlino
fd273ae62d
woops, i broke fix_map_geom when deferring remove_disconnected_roads.
...
also update install instructions to prep for hackathon
2019-09-19 11:44:52 -07:00
Dustin Carlino
fac8d4d9ff
remember tag overrides for osm roads in fixes
2019-09-18 15:25:52 -07:00
Dustin Carlino
3fd74673cf
edit name and speed limit of a synthetic road
2019-09-18 11:15:06 -07:00
Dustin Carlino
d86f4a6e89
separate files for groups of fixes
2019-09-18 10:48:17 -07:00
Dustin Carlino
6f1ac3969e
organizing osm keys
2019-09-17 17:14:09 -07:00
Dustin Carlino
e52fa1fc1a
recording and applying fixes to create new synthetic intersections and roads
2019-09-17 16:16:19 -07:00
Dustin Carlino
e32b540f54
draw boundary polygon, and deal with matching orig IDs that run right up
...
against the map boundary
2019-09-17 13:56:15 -07:00
Dustin Carlino
eee5981c14
stable IDs for buildings in raw layer too. stop futzing with ID problems there.
2019-09-17 13:11:08 -07:00
Dustin Carlino
33ab7d4553
a big cutover -- synthetic model is just a thin wrapper on a raw_data map. mostly everything works!
2019-09-17 12:55:33 -07:00
Dustin Carlino
0e406afe0f
store name in raw map; simplifies some plumbing elsewhere
2019-09-17 10:27:32 -07:00
Dustin Carlino
18baf7ae49
remove disconnected roads from raw map later, not in convert_osm. that way, if MapFixes disconnect anything, it gets removed later
2019-09-17 09:41:38 -07:00
Dustin Carlino
030191ef31
fixed OriginalRoads, which were pretty much always wrong (not split from
...
the original OSM way). also handle cul-de-sacs.
2019-09-17 09:29:19 -07:00
Dustin Carlino
572c69175c
apply fixes to raw_data in synthetic crate and when creating the full map model. adjusting some LonLat matches to do approx_eq. not stable yet -- sometimes we leave a road connected to something missing.
2019-09-16 12:31:15 -07:00
Dustin Carlino
3e8a825ac1
recording changes from synthetic crate
2019-09-16 10:56:45 -07:00
Dustin Carlino
8d8237a40e
making sure we only consider appropriate lane types for parking searches
2019-09-15 10:11:13 -07:00
Dustin Carlino
3a5e9c5a29
make_degenerate_crosswalks broke on huge_seattle, dodge tiny lines
2019-09-14 09:37:30 -07:00
Dustin Carlino
c86c1df21a
add ability to move intersections to fix_map_geom... it partly works.
2019-09-10 11:47:11 -07:00
Dustin Carlino
c4b47aeeb5
make other_crosswalk_ids aware of the degenerate intersection quadruple case, and avoid quadruple-rendering
2019-09-09 14:55:53 -07:00
Dustin Carlino
18abb85431
adjust degenerate intersections: only one crosswalk, reduce size of it
2019-09-09 12:28:19 -07:00
Dustin Carlino
68269530fe
refactor intersection type checks
2019-09-07 12:34:39 -07:00
Dustin Carlino
edb85da4c4
dont connect driveway to SR-99, yo
2019-09-02 22:57:44 -07:00
Dustin Carlino
528010f308
render cars on driveways a little better
2019-09-02 22:34:01 -07:00
Dustin Carlino
1910d06bc7
infer clipping polygon from entire .osm if no polygon is specified
2019-09-02 12:37:40 -07:00
Dustin Carlino
ba2b5fc831
compute and render driveway lines
2019-08-30 12:38:07 -07:00
Dustin Carlino
ea9d01bcc1
set a modal menu's prompt just once in a few places, where that's more
...
convenient
2019-08-27 14:56:43 -07:00
Dustin Carlino
0a39f4bd77
get rid of the coordinates_in_world_space hack; synthetic can just directly work in Pt2Ds now
2019-08-26 15:57:28 -07:00
Dustin Carlino
9fac44e28b
fix roundabout handling. clearing out hints, because many no longer
...
apply with the back-and-forth gps/pt2d stuff... reasonable to reset
efforts anyway, now that I'm considering patching in OSM edits instead
2019-08-26 14:40:47 -07:00
Dustin Carlino
c545e5d86e
some bug with previous commit messing up roundabout handling... quick detour to only have HashablePt2D for Pt2D, never for LonLat
2019-08-26 14:10:34 -07:00
Dustin Carlino
114a76893a
now raw_data::Road
2019-08-26 13:59:10 -07:00
Dustin Carlino
9156cbd434
raw_data::Intersection too
2019-08-26 11:18:39 -07:00
Dustin Carlino
ce4369be27
raw_data::Building too
2019-08-26 10:36:00 -07:00
Dustin Carlino
6af2c5c0e0
raw_data::Area up-front stores a Polygon
2019-08-25 19:28:59 -07:00
Dustin Carlino
29eb463a6f
base gps_bounds off of boundary polygon only. temporarily allow some out-of-bound coordinates, and deal with them during clipping. this means the osmosis boundary polygon is required.
2019-08-25 19:07:12 -07:00
Dustin Carlino
2b9ce7fef1
nit: why did FrontPath need a reference to the bldg? never passing it around in isolation. also update map article for parking blackholes
2019-08-25 14:57:04 -07:00
Dustin Carlino
1936f5f75e
match offstreet parking KML to buildings
2019-08-25 14:00:25 -07:00
Dustin Carlino
5c0fb90819
recompute parking blackholes after edits
2019-08-23 13:21:45 -07:00
Dustin Carlino
17136509cf
the parking redirects dont have to be before the lane... they can also be after. just nearby is the goal. this fixes a few more aborted trips
2019-08-23 12:30:25 -07:00
Dustin Carlino
9f897ef094
removing ezgui inline color parsing. pretty much unused, isn't helping
...
compile time. also fixing clippy issues
2019-08-22 13:38:16 -07:00
Dustin Carlino
ed0ca15aef
make sim layer use parking redirects. lots of aborted trips now fixed!
2019-08-21 15:06:49 -07:00