Commit Graph

923 Commits

Author SHA1 Message Date
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
Dustin Carlino
3b0a228a2c also viz the SCC 2019-08-21 14:34:57 -07:00
Dustin Carlino
d05ec2958d precompute where to start parking instead. dont use yet. 2019-08-21 14:17:11 -07:00
Dustin Carlino
bf7a65770b find the largest SCC of the driving graph, use this to classify parking blackholes 2019-08-21 11:48:33 -07:00
Dustin Carlino
d24543af99 plugin to show all reachable lanes from some start, to diagnose bad turn restrictions and such 2019-08-20 14:08:05 -07:00
Dustin Carlino
bffd1ebe08 really hacky start to classifying driving lanes as parking blackholes.
reveals some turn restriction data issues...
2019-08-19 15:43:35 -07:00
Dustin Carlino
f62965b5e2 small refactor: rename time param -> now. more clear and will help the Duration / Instant split later. 2019-08-19 14:56:07 -07:00
Dustin Carlino
7001139dc0 fix div by 0 bug with percent_dist_crossed for empty paths 2019-08-19 14:41:56 -07:00
Dustin Carlino
df90fc4f50 polylabel for building numbers 2019-08-19 12:01:10 -07:00
Dustin Carlino
a9267c76c7 debug tooltip showing how far an agent has traveled and how much
remains. seems to have small perf impact on initially calculating paths.
:(
2019-08-16 15:43:20 -07:00
Dustin Carlino
4e83f492d8 upgrade rand, get rid of now unneeded serde1 feature, in hopes of fixing feature mismatch between deps 2019-08-15 12:14:35 -07:00
Dustin Carlino
758c5494d8 remove old unused deps 2019-08-09 13:34:40 -07:00
Dustin Carlino
38ea097b26 use WizardState for some more things, making proper use of bundling state with closures! 2019-08-08 11:17:53 -07:00
Dustin Carlino
574e30b3d8 adding a new hint for extra turn restrictions 2019-08-06 14:02:34 -07:00
Dustin Carlino
b5c48fca38 fix traffic signal diagram in sandbox mode after lots of time has passed :) 2019-08-06 11:59:58 -07:00
Dustin Carlino
edfd112459 work around a bug in should_use_transit with disconncted sidewalks 2019-08-05 13:47:38 -07:00
Dustin Carlino
77c01580f1 refactoring path references... 2019-08-04 17:11:33 -07:00
Dustin Carlino
4a9a40c09f cycle indices got out of sync easily. no need to store them at all. 2019-08-02 16:25:22 +02:00
Dustin Carlino
453204129c some instructions to import a new .osm. don't require a clipping
polygon. small tweaks to map construction to make Austin work.
2019-07-15 16:43:57 +02:00
Dustin Carlino
6d559a2a54 remove individual turn fiddling from stop sign editor, for simplified gameplay for now 2019-07-14 11:37:23 +01:00
Dustin Carlino
ff0a6b7240 pick bus route to explore from possible ones at a stop, and without
using a stop at all
2019-07-07 20:30:01 -07:00
Dustin Carlino
9600fefd2b woops, should_use_transit was returning too-greedy answers, never more than 1 stop 2019-07-07 20:09:32 -07:00
Dustin Carlino
463ad7292b remove bus stops with no routes 2019-07-07 19:35:44 -07:00
Dustin Carlino
2e41b2284e use the turn restriction data to filter more turns 2019-07-04 19:57:07 -05:00
Dustin Carlino
90236c3afb filter OSM restrictions only to roads where they really apply 2019-07-04 18:47:59 -05:00
Dustin Carlino
9f9db35c38 capture raw turn restriction data from OSM, hacky way to debug them 2019-07-03 17:16:00 -05:00
Dustin Carlino
57425c170c actually use OSM turn restrictions 2019-07-03 09:44:50 -05:00
Dustin Carlino
5fa824f504 preps for interpreting turn:lanes from OSM 2019-07-02 15:03:18 -05:00
Dustin Carlino
142c34af4e interpret lanes:forward and lanes:backward from OSM 2019-07-02 14:00:54 -05:00
Dustin Carlino
6bb5ed4407 parking lane overrides in hints. removing parking from much of 23rd.
more involved than I anticipated, because the override changes road
width and forces us to recalc intersection polygons
2019-07-01 14:14:18 -05:00
Dustin Carlino
218082140f don't use a bimap for NodeMap. less dependencies, marginal speed boost 2019-06-27 10:30:56 -07:00
Dustin Carlino
5e1a7238e8 preserve OSM tags when merging degenerate intersections. this lets 24th and lake washington be fixed without messing up the z-layering 2019-06-26 17:33:31 -07:00
Dustin Carlino
0711056d89 save and restore savestates for entire a/b tests. launching from scratch
takes 33s in debug, this takes 19s
2019-06-21 12:47:00 -07:00
Dustin Carlino
91cc74a30c dramatically slash the one-time preparation time for the 3 VehiclePathfinders by using the node ordering from one for the other two. this actually also exposed a bug that would eventually muck with recalculating after edits (node IDs depending on the original state of the map) 2019-06-18 16:21:35 -07:00
Dustin Carlino
7a49c585cf remove building_type and stop reading the residential permit shapefile 2019-06-18 14:58:57 -07:00
Dustin Carlino
04021f9fd1 print more complete and robust building names. adjust intersection and
building colors -- stop coloring buildings based on type (adds visual
noise, data is very bad)
2019-06-18 14:47:24 -07:00
Dustin Carlino
1835155a47 dont recalculate pathfinder after every map edit; just once at the end 2019-06-18 14:28:14 -07:00
Dustin Carlino
c2576b9ad7 disable path validation. 2.8s down to an even 2s. 2019-06-18 10:53:45 -07:00
Dustin Carlino
cdda463ee4 speed up pathfinding queries even more by reusing the PathCalculator
each thread
2019-06-18 10:25:35 -07:00
Dustin Carlino
a6aa46dd61 cutover driving pathfinding to fastpaths, using a full lane graph for driving instead of falling back when path stitching fails. handle edits by preparing the CH again, using the existing node ordering. one-time prep time is reasonable, recalculating works for live edit mode, and queries are FAST! :O 2019-06-17 19:16:04 -07:00
Dustin Carlino
cdacaef1a6 refactor menu text for all ItemSliders 2019-06-17 17:22:20 -07:00
Dustin Carlino
22db36c0f4 use a sparser, more obvious representation for walking_with_transit.
cuts prep time down to reasonable levels for everything.
2019-06-17 16:08:31 -07:00
Dustin Carlino
b4de820f56 make interactively spawned peds use transit if possible, to figure out
why the walking-with-transit graph is not working... argh which is
because map initialization order has so many funky dependencies
2019-06-17 15:32:49 -07:00
Dustin Carlino
4951eea644 cutover walking (with and without transit) pathfinding to fast_paths! 2019-06-17 14:14:30 -07:00
Dustin Carlino
ace3f0d285 remove Debug trait from Map and pathfinder -- not used in a long time 2019-06-17 12:14:16 -07:00
Dustin Carlino
58d056cdbc remove paranoia panic for an anticipated case with hints 2019-06-17 10:45:54 -07:00
Dustin Carlino
ecaa8bea53 use slider to browse hints 2019-06-16 14:31:19 -07:00
Dustin Carlino
ec50a277ea switch to one set of hints for all maps, put it under version control. seed with a few easy ones. :) 2019-06-12 15:16:38 -07:00
Dustin Carlino
da85927d03 change Hints to store based on gps points, so hints are universal, not per map 2019-06-12 14:55:48 -07:00
Dustin Carlino
0adeac1d53 remove the single point associated with intersections, now that we're
actually going to be mucking with geometry. it wasnt doing anything
useful anyway. also a round of clippy.
2019-06-12 10:10:04 -07:00
Dustin Carlino
e0c1d0b85d operation to merge degenerate intersection 2019-06-12 08:58:59 -07:00
Dustin Carlino
35b7c18df9 remove elevation from map model. never been used, no anticipated need for it 2019-06-12 07:25:31 -07:00
Dustin Carlino
55f9589d15 preserve intersection type more intelligently when merging InitialMap stuff 2019-06-12 07:08:52 -07:00
Dustin Carlino
64b1cebb95 operation to delete a road completely 2019-06-11 19:04:00 -07:00
Dustin Carlino
98e073d8be save hints from debug_initialmap, use them when constructing the real
map
2019-06-11 17:41:47 -07:00
Dustin Carlino
290c274661 debug_initialmap loads from raw_data. remove the complicated serialization stuff from InitialMap. 2019-06-11 17:21:28 -07:00
Dustin Carlino
d9474494e7 debug_initialmap: highlight short roads, expose a way to manually merge
a short road
2019-06-11 17:00:49 -07:00
Dustin Carlino
b1463cf020 construct Pathfinder before finalizing bus routes. dont manually call pathfind_slow for buses. this is a step towards removing the slow fallback entirely. 2019-06-11 14:52:01 -07:00
Dustin Carlino
4e2d16af29 consistently using file extensions of .json and .bin, merging duplicate abstutil io functions accordingly 2019-06-11 14:30:11 -07:00
Dustin Carlino
e1a6532a84 handle border intersections touching edited lanes 2019-06-09 18:10:37 -07:00
Dustin Carlino
c76738a678 upgraded to rustc 1.35, fixing a few cases of https://github.com/rust-lang/rust/issues/59159 2019-06-09 14:09:27 -07:00
Dustin Carlino
8eb03b81c3 remove edits_name from SimFlags and refactor loading MapEdits by name. fixes bug where quitting an a/b test breaks loading other maps by retaining edits_name 2019-06-08 16:32:10 -07:00
Dustin Carlino
2d0a53c2d6 improving turn type classification for driving/bus/bike lane interactions; this in turn improves the default intersection policies 2019-06-07 16:32:42 -07:00
Dustin Carlino
2d638eb94b tool to bulk edit lane types 2019-06-07 15:41:39 -07:00
Dustin Carlino
57de773101 fix bus stop order... my MultiMap impl uses BTreeSet 2019-06-06 16:50:22 -07:00
Dustin Carlino
e3e032cb2e argh, bus route IDs were totally out of sync with reality 2019-06-06 15:36:36 -07:00
Dustin Carlino
c29769a6b4 print bus stops and routes nicely in OSD 2019-06-06 15:31:59 -07:00
Dustin Carlino
88f6516f79 recalculate bus stop driving_pos when editing 2019-06-06 14:52:53 -07:00
Dustin Carlino
d7e639b5f3 dont allow orphaning a bus stop 2019-06-06 14:43:53 -07:00
Dustin Carlino
322176dded detect when edits are equivalent to original 2019-06-06 13:56:42 -07:00
Dustin Carlino
b47069811e TRY to adjust departure time and such for trips starting/ending at the border 2019-05-31 15:41:38 -07:00
Dustin Carlino
a9319dbe6a capture PSRC trips that start/end out-of-bounds, matching them to a border. slow and buggy start! 2019-05-31 11:37:25 -07:00
Dustin Carlino
ea49fe63ba match PSRC trips to OSM building IDs up-front, trimming down filesize and speeding up clipping later 2019-05-28 13:04:31 -07:00
Dustin Carlino
83f62631e9 fix cases where path.trace doubles back on itself a bit due to slightly
weird walking geometry
2019-05-28 10:19:49 -07:00
Dustin Carlino
40efcc7b05 generalize a parallelize method for timers, use for all trip viz 2019-05-25 19:35:35 -07:00
Dustin Carlino
bc69a6b4d4 spawn as many trips from PSRC as possible 2019-05-25 18:34:50 -07:00
Dustin Carlino
01a4abb64a work around path traces that're breaking PolyLine 2019-05-25 13:33:41 -07:00
Dustin Carlino
1cdbe0ea81 refactor parallelized pathfinding and use it in trip viz too 2019-05-24 12:50:01 -07:00
Dustin Carlino
f674527ef2 interpolate along route for trip viz 2019-05-24 12:28:57 -07:00
Dustin Carlino
416d0b0d7d building PathRequest for trip visualization, and slightly refactoring bldg->Position for it. also forced to extend the equiv_pos fix for bus stops to all equiv_pos queries. 2019-05-24 11:47:01 -07:00
Dustin Carlino
92a0d38978 deal with bus stops on the wrong side of the road 2019-05-21 16:18:39 -07:00
Dustin Carlino
aac9c41d8a fix missing sidewalks on non-residential one-ways downtown. luckily, there's an explicit OSM tag to help. WIP this breaks bus stops on one-ways! fix coming soon 2019-05-21 14:33:32 -07:00
Dustin Carlino
9cc23c6ab1 remove unnecessary stop-signs at degenerates with crosswalks 2019-05-21 14:02:49 -07:00
Dustin Carlino
219a7b3236 refactoring list of signal policies 2019-05-21 13:26:39 -07:00
Dustin Carlino
6b5945aade put traffic signal box in the true middle of the intersection; it was in a bad spot for one-ways 2019-05-21 13:13:24 -07:00
Dustin Carlino
4c1e9b41c1 experimentally try finding intersection polygon by naively intersecting thick road polygons. 2019-05-17 15:48:21 -07:00
Dustin Carlino
c29039c499 policies for four-ways all one-ways 2019-05-17 12:00:29 -07:00
Dustin Carlino
dec8d65776 better traffic light policy for degenerate intersections 2019-05-17 10:31:51 -07:00
Dustin Carlino
ec015624c0 workaround for awful intersection geometry causing get_outline's that
explode out to some corner and get constantly rendered
2019-05-16 18:49:47 -07:00
Dustin Carlino
a816a3d0be defining a better set of pre-converted maps. disabling fix_ramps in most
cases.
2019-05-16 16:22:52 -07:00
Dustin Carlino
b6cdd0f99c fix crosswalk coupling in intersection editors, not sure when this broke 2019-05-16 14:46:00 -07:00
Dustin Carlino
d516985437 use different colors for unzoomed roads to show road type 2019-05-15 14:23:39 -07:00
Dustin Carlino
faea2e94e3 improve LCing turns with degenerate intersections, turn markings 2019-05-14 10:28:22 -07:00
Dustin Carlino
73aab37fc7 explicitly represent StraightWithLaneChanging turns. fix up preset
stop sign and traffic signal policies
2019-05-13 16:58:02 -07:00
Dustin Carlino
6ab8372b01 SharedSidewalkCorners always have Priority; they never conflict with anything 2019-05-12 09:14:46 -07:00
Dustin Carlino
aa7bd11797 tweak edit mode's menu info 2019-05-11 16:53:30 -07:00
Dustin Carlino
9b848c894a better selection polygons for polyline-based things 2019-05-11 16:03:39 -07:00
Dustin Carlino
5c9086a829 controls to naively flip stop signs on/off 2019-05-11 14:53:17 -07:00
Dustin Carlino
ca23950097 base RoadWithStopSign enabledness on turn priorities 2019-05-11 14:46:45 -07:00
Dustin Carlino
6b218fb5ab base stop sign lines on lanes on RoadWithStopSign 2019-05-11 14:38:55 -07:00
Dustin Carlino
c70c83f22b move the StopSignGroup abstraction to map_model. write down some rules for how stop signs _should_ work... 2019-05-11 14:31:46 -07:00
Dustin Carlino
8bd4ab72d4 draw full stop sign octagon when editing a single intersection 2019-05-10 15:23:31 -07:00
Dustin Carlino
b060a3ecc2 giving pedestrians more shape 2019-05-06 12:45:52 -07:00
Dustin Carlino
73f32854be fix up other ezgui apps, run clippy 2019-05-04 17:25:05 -07:00
Dustin Carlino
cca6f4b5ec displaying names for more roads 2019-05-04 13:56:40 -07:00
Dustin Carlino
4b4e6f17a0 start a really basic OSD 2019-05-02 12:38:12 -05:00
Dustin Carlino
3b2c1a1d73 new warp function that autocompletes street names 2019-04-30 12:48:00 -07:00
Dustin Carlino
4b1107bf57 clean up ezgui runner API 2019-04-20 15:10:03 -07:00
Dustin Carlino
3364cd1d0c smoothing out some of the weird SharedSidewalkCorners, starting article
for r/rust
2019-04-20 10:40:35 -07:00
Dustin Carlino
dc2649ad59 fix some crashes when spawning agents 2019-04-18 18:42:52 -07:00
Dustin Carlino
7885477e59 a round of clippy 2019-04-15 18:54:19 -07:00
Dustin Carlino
2ecd8a0edb avoid crash in make_shared_sidewalk_corner 2019-04-12 13:32:41 -07:00
Dustin Carlino
94b5307828 use the new SharedSidewalkCorner code for turn geometry, at least 2019-04-11 16:38:06 -07:00
Dustin Carlino
d207c3c33a rip out parcels entirely; unused for long time and no anticipated uses 2019-04-11 11:40:37 -07:00
Dustin Carlino
834384fb10 remove the Trace type rename; serves no purpose. also the unused
stopping_buffer; no more lookahead
2019-04-11 10:27:28 -07:00
Dustin Carlino
d0a3b5c383 lane edit validity 2019-04-03 12:41:10 +09:00
Dustin Carlino
4ecf6a815f make sure to recalculate DrawLanes based on turn priorities changing 2019-04-01 13:49:34 +09:00
Dustin Carlino
0a89f10a12 make sure banned turns reflect in pathfinding 2019-04-01 13:43:55 +09:00
Dustin Carlino
904d56e563 recalculate DrawTurns upon edits 2019-04-01 13:40:52 +09:00
Dustin Carlino
235125b77f reviving intersection editors, basic functionality there 2019-04-01 10:25:34 +09:00
Dustin Carlino
b0035cde08 include option for no_edits in menus and make sure we revert things when
loading no_edits
2019-03-20 18:05:14 -07:00
Dustin Carlino
5f297163db changing two lanes that share an intersection breaks... fix 2019-03-20 17:56:47 -07:00
Dustin Carlino
b4c1138baf revive map edits plugin 2019-03-20 17:51:43 -07:00
Dustin Carlino
c9059bd044 update Pathfinder graphs granularly 2019-03-18 19:19:49 -07:00
Dustin Carlino
da3152a0e7 revamp road editor plugin. recalculate DrawMap changes. fixing some
apply_edits bugs
2019-03-18 18:53:32 -07:00
Dustin Carlino
7b118c3de5 actually apply edits to map layer 2019-03-18 17:30:11 -07:00
Dustin Carlino
3f47c00e03 slowly reintroduce MapEdits, just with lane type overrides. load and
"apply" them
2019-03-18 16:40:27 -07:00
Dustin Carlino
3ea3ea199a completely remove most traces of MapEdits. quietly disconnect some
editor plugins
2019-03-18 15:37:02 -07:00
Dustin Carlino
c7dc028601 Display for Traversable 2019-03-18 13:21:57 -07:00
Dustin Carlino
db536a04d5 refactor an exact_slice for polylines 2019-03-15 14:02:43 -07:00
Dustin Carlino
961b70d1f4 kind of improved draw_unzoomed, except there are just tons of weird
situations to represent
2019-03-15 13:39:25 -07:00
Dustin Carlino
5ca359998c upgrade some dependencies and list data source licenses in README 2019-03-11 16:04:47 -07:00
Dustin Carlino
5013cae4f9 fixing tests 2019-03-08 12:19:05 -08:00
Dustin Carlino
1c9196461b delete dead path code 2019-03-08 11:49:29 -08:00
Dustin Carlino
11ab6fceb3 implement new should_use_transit 2019-03-08 10:55:35 -08:00
Dustin Carlino
1eebea8001 cutting over to new graph search in some cases. adding support for
one-step walking paths.
2019-03-08 10:47:39 -08:00
Dustin Carlino
523a6900de precomputing and saving the graphs 2019-03-08 10:18:26 -08:00
Dustin Carlino
6a8c964203 moving new pathfinding code to map_model/. not using it yet. 2019-03-08 09:59:45 -08:00
Dustin Carlino
98d4a639dc fixing last step of walking paths... and actually driving paths too :) 2019-03-07 21:19:54 -08:00
Dustin Carlino
4fed47f54e implement simplified pedestrian pathfinding. probably needs more work 2019-03-07 13:41:17 -08:00
Dustin Carlino
194d3b3b57 keep simple state when roaming for parking 2019-03-05 10:00:05 -08:00
Dustin Carlino
5a8e42642f my own custom hierarchical pathfinding. working great for driving. 2019-03-02 16:49:20 -08:00
Dustin Carlino
313841b9de make peds board buses 2019-03-01 22:09:33 -08:00
Dustin Carlino
3bbcb00d43 also stop using multimap crate in map_model 2019-03-01 12:25:00 -08:00
Dustin Carlino
874b3be519 prevent illegal trip from happening, fix bike_to_sidewalk 2019-02-27 09:04:06 -08:00
Dustin Carlino
ba9a545dcf use Path natively in Router 2019-02-27 08:50:26 -08:00
Dustin Carlino
8ab4b403fa bike -> ped 2019-02-26 11:43:10 -08:00
Dustin Carlino
e404780c25 bikes pt1 -- start biking 2019-02-26 11:14:28 -08:00
Dustin Carlino
16a6a62ce3 making it easier to get driving pos from parked car 2019-02-25 13:21:42 -08:00
Dustin Carlino
aea11b72e3 putting together a spawn layer. not using it yet. 2019-02-24 11:15:49 -08:00
Dustin Carlino
5bd840d296 populate turns from multiple lanes to a single right/left turn 2019-02-23 11:17:21 -08:00
Dustin Carlino
a928b32ebc preps to start some parked cars 2019-02-22 12:02:12 -08:00
Dustin Carlino
b02807ceee use quadtree to speed up fix_ramp step 2019-02-22 10:15:13 -08:00
Dustin Carlino
a45b4510b6 speed up neighborhood<->building and road matching during scenario instantiation 2019-02-21 11:33:56 -08:00
Dustin Carlino
5e9d4ca7f7 populate more turns so that lane-changing effectively happens when
turning, but keep the lane->lane semantics
2019-02-20 17:03:26 -08:00
Dustin Carlino
86cb58b5f1 first make a DirectedRoad ID, finally 2019-02-20 16:23:24 -08:00
Dustin Carlino
a026c02890 removing log crate from map_model 2019-02-20 11:03:34 -08:00
Dustin Carlino
c2791a6ead using Warn in all of geom 2019-02-20 10:36:58 -08:00