Dustin Carlino
0be06d04f9
Switch to maintained version of earcutr.
...
Since we have to regenerate everything anyway, also start importing
landuse=meadow areas for #449 .
2021-01-14 08:29:49 -08:00
Dustin Carlino
a1988f269c
Based on importer config, try using separate cyclepaths directly. #330
...
Small adjustments to unzoomed rendering and stop sign placement.
Regenerate all maps because of the format change, but only Cambridge
changes. Since we're doing this anyway, also pull in leisure=garden.
2021-01-12 11:13:45 -08:00
Dustin Carlino
4e3af638e7
Import landuse=recreation_ground as a park. Noticed Rainier Playfield missing.
2021-01-11 21:23:02 -08:00
Dustin Carlino
ba2bbab2ae
When inferring sidewalks on one-ways, don't forget to consider the driving side.
2021-01-11 15:07:22 -08:00
Dustin Carlino
65ee007ece
Close a roundabout in lakeslice that keeps causing gridlock. Not regenerating yet.
2021-01-10 18:21:37 -08:00
Dustin Carlino
6e3ce1d9ee
Stop generating footways and service road KML files out of Seattle. They're only used for debugging, and not actively. For cities with multiple maps, the order of importing maps causes the files to get overwritten anyway.
2021-01-08 09:44:38 -08:00
Dustin Carlino
eb9bf77bf0
Use roxmltree/std to get an error implementation and make using it more ergonomic
2021-01-05 11:37:48 -08:00
Dustin Carlino
e99def9124
Switch all error handling to anyhow. Nothing consumes our code as a
...
library yet, so this is a step forward from string errors. Manually
tested how errors show up (including the nice with_context bit).
2021-01-05 11:35:03 -08:00
Dustin Carlino
965d999199
Upgrade misc other dependencies
2021-01-03 20:01:27 -08:00
Dustin Carlino
5c04923dff
Split abstio crate out from abstutil. #253
...
widgetry, geom, and abstutil may wind up on crates.io in some form to
let other projects use widgetry. abstio has A/B Street-specific tricks
for reading data on native/web. Note widgetry still depends on abstio,
will figure out how to clean that up next.
2021-01-02 10:28:00 -08:00
Dustin Carlino
9c63d9a181
Make a quick way of marking roads in the UI, dumping to a list, then
...
later overriding a .osm file with tags for these roads. This is a way to
test the effects of making simple OSM changes locally before
upstreaming.
Also handle repeated merging collapsing one of the roads. Not 100% what
happens here, but skipping the collapsed road works fine. The scary
Montlake intersections now look great with all the merging done, so
upstreaming the change! #114
2020-12-30 18:31:39 -08:00
Dustin Carlino
b7061ed425
Handle the junction=intersection tag in OSM, representing a short "road"
...
in the interior of a big intersection. #255 , #114
- No sidewalks or parking on it
- Automatically try to merge it
Bring in fresh Seattle OSM with a few places on Aurora tagged, for
further experimentation.
Also, there's some bug in the importer; Seattle maps didn't get
regenerated last change. Picking up the diffs now.
2020-12-28 19:43:40 -08:00
Dustin Carlino
396b9b1969
Infer parking tags better for dual_carriageway=yes. Also stop inferring parking on trunk roads like Aurora. And pull in fresh Seattle OSM, with lots of dual_carriageways tagged. #230
2020-11-14 17:32:34 -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
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
07ac288e72
Refactor: rename Pt2D::from_gps to just gps.to_pt(bounds)
2020-11-10 12:00:43 -08:00
Dustin Carlino
b0bdbf6c1f
Change some cities to just use JSON config for importing, instead of boilerplate-filled code. #326
2020-11-06 10:56:36 -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
89a4e5bdcd
Disable output from the snapped cycleways experiment. The output is
...
nondeterministic (for still unknown reasons) and the spurious diff when
the importer is run is a distraction.
2020-11-05 11:43:50 -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
21cd7a197d
Run the experimental cycleway snapper phase for Leeds, after adding a
...
check to skip ways like https://www.openstreetmap.org/way/429285996 ,
which're unexpectedly loops.
2020-11-03 15:57:21 -08:00
Robin
edf5d0d8a9
Add Leeds ( #375 )
2020-11-03 10:53:14 -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
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
0ddfb201d9
Get some parts of Tokyo to import, by adjusting the filter for city-like
...
boundaries and by preferring English filenames. #326
2020-10-27 14:10:42 -07:00
Dustin Carlino
004ca95842
Optionally just create a circle of some radius around the 'center' of a city. #326
2020-10-26 16:57:50 -07:00
Dustin Carlino
fda4c4da7b
Refactor a few utilities, and use convex hull of the city boundaries to simplify them considerably. #326
2020-10-26 14:15:25 -07:00
Dustin Carlino
30ad6709a8
Create a tool to turn huge .osm extracts into just the cities. The
...
result isn't quite useful yet; the clipping polygons are massively
complicated. #326
2020-10-26 13:40:22 -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
39ec4a13de
Import forests as park areas (for Salzburg) and add a warning about JOSM. #366
2020-10-15 15:10:12 -05:00
Dustin Carlino
f1ec2fa4c4
Convert more doc comments for abstutil, convert_osm, geom, sim
2020-10-08 21:13:08 -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
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