Dustin Carlino
ac5aa927db
Test turn generation via goldenfiles instead. Revert the "import from a
...
raw string" stuff from the previous commit.
Add tests of a few interesting intersections. The results right now
aren't ideal, but this sets things up for fast iteraton.
2020-10-01 15:34:43 -07:00
Dustin Carlino
ec114e51e1
Prototype an idea for unit testing the turn generation code. Hardcode a
...
simple .osm, turn it into a full Map, and inspect the results.
2020-09-30 16:30:28 -07:00
Dustin Carlino
5813603594
Include multipolygon parking lots from OSM
2020-09-28 11:39:34 -07:00
Dustin Carlino
4ceb190f6c
Add a polygon for Redmond/Kirkland
2020-09-27 12:49:21 -07:00
Dustin Carlino
371d26f707
Bring in alleyways from OSM! [rebuild] ( #351 )
2020-09-27 12:20:27 -07:00
Dustin Carlino
84891f8b96
Some map fixes to prepare for alleyways:
...
- Temporarily workaround snap_cycleways crash in Xi'an
- Fix interpretation of blank turn restrictions. https://www.openstreetmap.org/way/739621435 was missing a right turn, which was causing vehicles to do this crazy loop to go from Madison EB to Lake Wash SB.
- Ignore turn restrictions when they don't match the number of lanes. https://www.openstreetmap.org/way/428090702 and similar need some updating.
Regenerate all data, but give up on lakeslice running fully. Going to
sacrifice that one for a bit to get new roads imported.
2020-09-27 11:21:35 -07:00
Dustin Carlino
5a3bee0264
A first attempt to snap separately mapped cycleways to main roads. Emit ( #348 )
...
an extra KML file during importing to debug; don't bring into the main
map yet. #330
Not regenerating yet
2020-09-25 15:22:47 -07:00
Dustin Carlino
f610c66572
Remove the weird shifting/angle inversions from DrivingSide. First step
...
of #311 . Tested to not break righthand maps.
2020-09-04 10:01:06 -07:00
Dustin Carlino
4005adecf8
Refactor: create a Direction enum, in preparation for two-way cycletracks on one side of a road.
2020-08-24 13:30:13 -07:00
Dustin Carlino
2c5bbd3e7e
Use alternate language building names and amenities, when available. Fixes #271 .
...
Tested in Shinjuku. No substantial file size increase for any maps.
2020-08-20 10:39:28 -07:00
Dustin Carlino
2ebf463635
Handle buildings tagged as parking garages in OSM.
2020-08-19 17:19:54 -07:00
Dustin Carlino
d427893843
Model parking lots with extra un-renderable spots. This fixes #150 , lots
...
without aisles, and #265 , multi-story garages.
2020-08-19 17:19:54 -07:00
Dustin Carlino
2e93fdbf54
Fix parking aisle loops that cross the parking lot polygon. Closes #242
2020-08-18 15:12:12 -07:00
Dustin Carlino
83e84c10af
Handle more errors in importer. Got the entirety of Taiwan to import...
...
but the water polygons are so sad. :(
2020-08-15 09:36:23 -07:00
Dustin Carlino
11cefb118a
And the same thing for OriginalIntersection
...
Actually, don't need to regenerate map data. Thanks to the magic of
zero-cost wrapper types, the binary format is the same.
2020-08-13 11:48:13 -07:00
Dustin Carlino
843d24b6ed
Refactor: OriginalBuilding should just be OsmID. The purpose of
...
OriginalBuilding was to refer to buildings in a stable way across
different maps and across OSM updates. Recently, OsmID and friends
appeared. The double layer of wrapping is an annoying API.
Not regenerating map data yet; about to do the same thing for
OriginalIntersection
2020-08-13 11:37:06 -07:00
Dustin Carlino
58849d3d15
Small refactor: in most places, we can actually use String as the error type; Box<dyn Error> is only useful when errors of different types are propagated.
...
Nowhere in abst do we care about handling different errors differently
2020-08-13 07:12:06 -07:00
Dustin Carlino
3b49353df2
gracefully degrade if we cant make TurnGroups for a traffic signal. this
...
gets SF, Tokyo, and London to import!!!
2020-08-12 11:05:19 -07:00
Dustin Carlino
62bb82886d
blaze through all the crazy errors in intersection_polygon, just
...
recording errors and falling back to circular geometry and not trimming
roads
also filter out highway areas like
https://www.openstreetmap.org/way/132705692 , woops!
Manchester and NOLA now import...
2020-08-12 09:36:46 -07:00
Dustin Carlino
eb74e05407
missed a few right_shift calls in importer. and speed up traffic signal
...
matching while I'm there
2020-08-12 08:34:35 -07:00
Dustin Carlino
43a6edbc28
regenerate everything, prep for release. [rebuild]
...
lakeslice still gridlocks and lots of bus routes cut out. not the
happiest release.
2020-08-08 21:33:11 -07:00
Dustin Carlino
ecd5d86009
handle bus stops right at intersections
2020-08-08 19:32:18 -07:00
Dustin Carlino
52e89315d7
in lieu of understanding bus platforms, add a shoulder to some roads with bus stops, now that we know what side of the road with some confidence. fixes 45th and I5.
2020-08-08 18:39:40 -07:00
Dustin Carlino
6c525d625d
match transit stops to side of the road based on the orientation of the points in the route. don't use this just yet...
...
not regerating yet either
2020-08-08 17:44:28 -07:00
Dustin Carlino
94f83dcc6a
step 1 of much more sane bus route/stop matching: just get the order of points in a route in a good order
...
not regenerating yet. this eliminates some routes that were previously
imported (but who knows, maybe not successfully)
2020-08-08 16:51:40 -07:00
Dustin Carlino
d1e9e38e82
refactor for #231 : use typed OSM IDs everywhere, dedupe URL code
...
have to regen, the binary format has changed
2020-08-08 16:09:36 -07:00
Dustin Carlino
49e8ab3680
try to get seoul to import
2020-08-08 09:32:43 -07:00
Dustin Carlino
62ed91925a
random fixes in the map importer to try to import a bunch of new cities.
...
not too successful, but made progress.
2020-08-07 10:24:58 -07:00
Dustin Carlino
128e649236
fix zordering of harbor island, broken in the osm reader refactor a few weeks back
...
fresh osm. breaks lakeslice, but I'll fix tomorrow. progress in
south/west seattle.
2020-08-06 18:11:09 -07:00
Dustin Carlino
5eefdaef18
still import maps with badly broken OSM geometry. warn loudly, don't
...
attempt to trim the roads, put a funny circle there instead.
2020-08-06 08:29:08 -07:00
Dustin Carlino
a2bf0ee59f
gather footways, service roads, and cyclepaths into kml side input files to start experimenting with snapping to roads. a small step towards #242 , #169 , #161 , #139 , etc
2020-08-05 15:19:52 -07:00
Dustin Carlino
3c24b7aa5a
pull in spawn times for seattle from gtfs. looks wrong, but it's a
...
start.
2020-08-05 14:46:37 -07:00
Dustin Carlino
588a20e8d3
reduce warnings in map importer
2020-08-03 16:22:02 -07:00
Dustin Carlino
2979f8117f
handle .osm with missing bounds and no clip
2020-08-01 08:51:19 -07:00
Dustin Carlino
b4ad7400df
stop drawing center lines for one-ways. while regenerating maps, also
...
bring in natural=scrub, and rename the krakow map
2020-07-31 20:48:26 -07:00
Dustin Carlino
ec52adce77
dont infer parking on roads in krakow that dont allow pedestrians
2020-07-31 10:33:59 -07:00
Dustin Carlino
71b68cc639
don't assume off-side sidewalks on dual_carriageway=yes. don't infer
...
parking on tiny roads. fixes some geometry in krakow. #230
(unrelated: add a debug layer to show parking blackholes, to work on
bike connections)
(also unrelated: better error message for #256 )
2020-07-31 10:07:29 -07:00
Dustin Carlino
2b9123d261
fix border intersection geometry when the road is too short. closes #251
...
while regenerating, also pick up landuse=grass as a park area. noticed
missing in krakow.
2020-07-28 13:41:12 -07:00
Dustin Carlino
e1e265db14
tighten up Polygon constructors to enforce an outer ring... in most
...
cases now.
2020-07-27 14:03:55 -07:00
Dustin Carlino
fe41928cc8
explicitly allow osm highway types, instead of trying to deny stuff.
...
part of #231 . handles construction much better.
2020-07-25 17:06:09 -07:00
Dustin Carlino
0c15b06922
detect invalid .osm with duplicate nodes/ways/relations in parser. closes #212
2020-07-25 15:00:52 -07:00
Dustin Carlino
7a00839553
ditch osm-xml, make a new osm parser from scratch based on roxmltree.
...
skip unreferenced objects, make the output extremely easy to consume.
also fix timers in importer. this helps with #212 , although the actual
problem there is weird.
regen everything. some parking lots change a bit, but not horribly, and
that code needs some attention anyway.
2020-07-25 13:52:41 -07:00
Mateusz Konieczny
a4a545cc79
handle more OSM tags - especially POIs ( #244 )
...
also, add graveyards like cemeteries
2020-07-25 07:01:55 -07:00
Dustin Carlino
fc761ae032
stop bringing in railway=rail for seattle. it's cosmetic only, and it messes up some geometry in south seattle and causes gridlock. not worth it yet.
2020-07-24 20:22:33 -07:00
Dustin Carlino
643073b4d5
for #231 , pass data between osm_reader and split in a way less horrible way
2020-07-24 19:33:35 -07:00
Dustin Carlino
bebfac1322
for #231 , split out parking methods in convert_osm
2020-07-24 19:20:31 -07:00
Dustin Carlino
f1ef02b907
store Tags in map_model objects, to reap its benefits anywhere in the codebase. serialization format doesnt change!
2020-07-23 07:43:50 -07:00
Dustin Carlino
29bebbc883
dont treat highway=platform as a road. all of the cases encountered
...
before #226 happened to be disconnected from other roads, so they were
filtered out later.
2020-07-22 14:15:31 -07:00
Dustin Carlino
fe94357332
interpret traffic signals placed on ways for #119
2020-07-22 13:48:35 -07:00
Dustin Carlino
5d2b770258
Model living streets a bit more carefully.
...
- don't infer parking lanes there
- sidewalks on both side of a one-way
- handle maxspeed with kmph
- no maxspeed on living_street is 20 kmph
still not regenerating maps
2020-07-22 13:09:35 -07:00