Dustin Carlino
2672eb837c
Remove the unused total_lanes from Path
2020-11-25 11:21:15 -08:00
Dustin Carlino
ab88010ed0
Refactor PathRequest creators that go between two buildings. #176 ( #404 )
2020-11-24 13:21:44 -08:00
Dustin Carlino
d83133fa09
Fix the biking mode for #393
2020-11-22 10:48:41 -08:00
Dustin Carlino
594b376734
Figure out travel time for bikes. #393
...
Something's wrong with the results, but it's a start.
2020-11-21 15:10:49 -08:00
Dustin Carlino
78eedff7c7
UI glue for switching between walking/biking. #393
2020-11-21 14:02:24 -08:00
Dustin Carlino
bf9d34d1a3
Drop results farther than 15 minutes away. #393
...
It'd be more efficient to terminate the Dijkstra's search directly, but
petgraph doesn't have an option for that, so we'll have to implement
Dijkstra's manually (shouldn't be hard).
2020-11-21 10:12:29 -08:00
Dustin Carlino
d33d051d47
Make the isochrone use time, not distance, as a cost function. And
...
floodfill using Dijkstra's, instead of computing loads of paths. #393
2020-11-19 14:11:59 -08:00
Dustin Carlino
f6565988c9
Let parking aisles span multiple parking lots.
2020-11-19 12:34:31 -08:00
Dustin Carlino
739e33ec3e
We do need to fill out trip legs for TripSpec::SpawningFailure; smoke tests in other maps hit it. #258
2020-11-17 18:02:48 -08:00
Dustin Carlino
b6be9c81d5
Generate city picker maps from a bunch of small maps, instead of one huge map. Use for Paris. One giant map covering everything there is going to be too large.
2020-11-13 18:22:46 -08:00
Dustin Carlino
6fe49ce0fa
Some preps for importing Paris: avoid crashing on some previously unseen
...
OSM things, and making geojson_to_osmosis handle multiple polygons in
one input file.
2020-11-13 16:31:22 -08:00
Dustin Carlino
c6b752d41b
Iterate on automatically finding medians for #230 . Still not ready, but
...
get fresh OSM data to test in both Krakow and Seattle. While I'm at it,
also grab fresh OSM for Krakow, since it's been ages.
2020-11-12 17:58:19 -08:00
Michael Kirk
6b02048ce7
see logs in web
2020-11-12 16:51:05 -08:00
Dustin Carlino
69699600ea
Prototype filling in the gaps near one-way roads. Needs more filtering
...
out, but solid start. #230
Regenerate map data, since the Area object changed.
2020-11-12 14:21:08 -08:00
Dustin Carlino
c96f84341a
Incorporate intersection corners in the around-the-block polygon. #230
2020-11-12 13:41:47 -08:00
Dustin Carlino
1b6af3dfb1
Prototype a debug mode tool to trace a polygon on the interior of any "loop" of roads. Aka, find the polygon if you "walk around the block." This can be used to fill in the blank space between dual carriageways. #230
...
Algorithm needs some work -- it doesn't trace along sidewalk corners,
and it fails for some starting lanes.
2020-11-12 12:53:41 -08:00
Dustin Carlino
7854823c28
Change the to/from permanent map edits APIs to be a little more ergonomic
2020-11-12 10:13:32 -08:00
Dustin Carlino
4b557fa6de
Bring in fresh OSM for Seattle. Because it's so annoying to manually
...
repair proposals when roads change upstream, make the test dump a
repaired file before failing. Manually inspect/amend that.
2020-11-11 15:16:06 -08:00
Dustin Carlino
3e7c0e51c4
Set up a test scenario for lane-changing to reproduce #382 . The same
...
problems aren't quite captured, but it's a start.
2020-11-11 11:33:47 -08:00
Dustin Carlino
2a546e528c
Skip applying no-op edits and recalculating pathfinding when leaving sandbox mode. For large maps, it's a noticeable delay
2020-11-10 15:19:41 -08:00
Dustin Carlino
e0a8d82b61
Reorganize polygon files to importer/config, instead of data/input.
...
Nothing in data/input should be under version control; all of it is
managed by the updater. #326
2020-11-06 10:10:03 -08:00
Dustin Carlino
cda586dfc9
Cleanup by moving some methods to belong to MapName. #326
2020-11-05 14:18:13 -08:00
Dustin Carlino
4f2cda8d53
Reorganize data/system/ files by city! The only interesting change is
...
abstutil::path_all_maps becoming abstutil::list_all_maps. #326
2020-11-05 14:05:48 -08:00
Dustin Carlino
67530bec07
Future-proof file organization by changing map_name from a string to a
...
struct. Whatever choices we make next about naming cities hierarchially
or not can be managed in just one place. #326
This is a pretty huge change, but the compiler gives reasonable
confidence it's correct. More bugs are likely to crop up in the next
step, when filenames start being namespaced by the city too.
2020-11-04 17:26:32 -08:00
Dustin Carlino
e99dd5bba7
Use inferred sidewalks for Leeds, after detecting another geometry bug
...
when building sidewalk corners. Raw sidewalks from OSM aren't suitable
for traffic simulation yet.
2020-11-04 08:46:06 -08:00
Dustin Carlino
b2519e3050
Add an extra check for polyline intersection endpoints. I found an
...
intersection polygon in Krakow that has really bad geometry, and this
improves it. The extra check absolutely shouldn't be necessary, but of
course, all the core line intersection code is quite suspect! #161
2020-11-02 15:10:45 -08:00
Dustin Carlino
6e417340e4
Generate turns much more simply for intersections of footpaths. #161
...
Also gets rid of some annoying warnings about roads with missing names.
I could continue to skip the warning for more situations, but I think
this sort of data quality check could be done better in the OSM viewer.
2020-11-01 18:20:32 -08:00
Dustin Carlino
04b9eef24a
When using OSM footpaths, don't stick sidewalks on the road when sidewalks=separate and also bring in cycleways and paths allowing foot traffic. #161
2020-10-30 15:16:19 -07:00
Dustin Carlino
ca2ff08d71
Don't render intersections between footways with a special color. Also
...
cut Kraków over to using the new experimental footpath support. #161
2020-10-30 14:11:00 -07:00
Dustin Carlino
bf0dce2c18
Optionally import sidewalks and separate footpaths exactly as they're in OSM, instead of attempting any inference. This is a way to move forward on #161 without having to cutover to it all at once.
2020-10-30 13:27:45 -07:00
Dustin Carlino
3b838c1225
Finish formatting distance/duration/speed units nicely. And remove the
...
number of lanes from trip info; it's misleading and not useful. #331
2020-10-28 11:33:48 -07:00
Dustin Carlino
0c0104d1e2
Parallelize parking lot spot generation. Austin goes from 81s total import down to 44s. #270
2020-10-26 16:28:11 -07:00
Dustin Carlino
47fa997f72
Refactor a proper Amenity struct. Leave room for optional raw OSM tags.
...
Don't expose the tags in the UI yet. [rebuild]
2020-10-25 11:49:46 -07:00
Dustin Carlino
34b41a909e
Optionally keep building OSM tags. Display in info panels and the new viewer, when present.
...
Don't keep the tags by default. File size increase from the empty map is
negligible.
2020-10-24 14:19:22 -07:00
Dustin Carlino
9dbb156058
Skip wakeup_waiting while we're handling live map edits. Based on the
...
order of vehicle deletion, we try to ask about stop sign and traffic
signal movements that may be deleted and would be irrelevant anyway if a
different deletion order happened. #312
We should really defer wakeup_waiting until after all cleanup is done,
but for now, willing to risk some stuckness at a stop sign...
2020-10-23 12:15:51 -07:00
Dustin Carlino
773176f321
Handle live edits affecting multiple cars at one stop sign, and cars
...
turning to/from an edited lane. #312
2020-10-22 21:04:12 -07:00
Dustin Carlino
011ed8c7cf
Handle agents deleted mid-turn. #312
2020-10-21 11:17:27 -07:00
Dustin Carlino
0259750eb3
Add a flag to detect drivers who're destined to pass through a currently delayed area. #325
2020-10-17 09:22:49 -05:00
Dustin Carlino
212ad761fd
Switch to Box<dyn Error> in abstutil. This makes it easier to have
...
higher-level APIs return some kind of string error. Pretty much nowhere
do we care about error types.
2020-10-11 08:36:02 -07:00
Dustin Carlino
d4358586d6
Refactor the MapLoader into a more generic file loader...
2020-10-09 17:26:11 -07:00
Dustin Carlino
2cd59ead37
Remove the special handling for synthetic maps, which were JSON RawMaps
...
that could directly be loaded. The few examples have been long broken
and unused. They complicate map loading, because they have a weird path.
2020-10-09 16:08:11 -07:00
Dustin Carlino
f1ec2fa4c4
Convert more doc comments for abstutil, convert_osm, geom, sim
2020-10-08 21:13:08 -07:00
Dustin Carlino
93c295b9ae
Convert comments on public things to doc comments for map_model.
2020-10-08 20:45:41 -07:00
Dustin Carlino
536429f37f
Fix lakeslice again. Some manually fixed traffic signals weren't
...
imported, because they referenced way IDs from before the service road
import. That happened after a bad Cargo.lock merge undid the effects of
pinning to the latest seattle_traffic_signals.
2020-10-07 15:06:03 -07:00
Dustin Carlino
d844646cb9
Implement per-road caps for #325 , necessitating a tiny map edits version
...
bump.
2020-10-06 14:17:55 -07:00
Dustin Carlino
6fd8422cf5
Woops, fix headless build break
2020-10-06 13:05:23 -07:00
Dustin Carlino
f258c50595
Organize import blocks using https://github.com/dabreegster/organize_rust_imports
2020-10-05 20:29:22 -07:00
Dustin Carlino
27d94945c6
Manually move mod block after the use block, to match what CLion does.
2020-10-05 20:29:22 -07:00
Dustin Carlino
fa45590041
Tag E 24th as narrow and assign it narrower width. This still doesn't
...
quite fix the wacky geometry at Madison/24th, but it gets closer.
Also redo two outdated traffic signals, speeding up lakeslice more.
2020-10-03 18:17:35 -07:00
Dustin Carlino
ffdedcb0a7
When multiple source lanes can turn left* to multiple destination lanes,
...
only allow the leftmost source lane to turn to any destination lane. As
a future improvment, need to handle multiple explicitly tagged left turn
lanes, but this gets closer to reality, particularly helping some crazy
maneuvers along Mercer in downtown.
*or right
Also had to update lanes along Madison and fiddle a bit to keep
lakeslice running. Spotted some major traffic signal bottlenecks due to
stage generation falling back, will iterate on that separately.
2020-10-03 09:40:15 -07:00