-
Notifications
You must be signed in to change notification settings - Fork 119
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tile size: water only changes #2010
Changes from 9 commits
a09c026
334df35
405361c
534b31a
b078b0f
47cf4ce
f5dafd3
77e663c
cc8be28
0e79138
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -33,9 +33,9 @@ def _bay(osm_id, area, name): | |
) | ||
|
||
with self.features_in_tile_layer(z, x, y, 'water') as features: | ||
# should only have top 10 features | ||
self.assertEqual(10, len(features)) | ||
# should only have top 2 features | ||
self.assertEqual(2, len(features)) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. At zoom 8 our area threshold for labels is 500,000,000 (was 200,000,000) and for polygons it's still 20000000. Under the earlier system 5 meet the area threshold, but after only 2 do. So the changes here make sense to me. |
||
|
||
# check that they're in order | ||
ranks = [f['properties']['kind_tile_rank'] for f in features] | ||
self.assertEqual(range(1, 11), ranks) | ||
self.assertEqual(range(1, 3), ranks) |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -794,6 +794,41 @@ post_process: | |
where: >- | ||
kind == 'lake' | ||
|
||
# remove names per kind for a given zoom | ||
# before generating any label placements | ||
- fn: vectordatasource.transform.drop_properties | ||
params: | ||
source_layer: water | ||
start_zoom: 0 | ||
end_zoom: 16 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. exclusive |
||
# short-hand for "name" property in the list below means all name-like | ||
# properties. | ||
all_name_variants: true | ||
properties: | ||
- name | ||
- old_name | ||
where: >- | ||
(kind == 'sea' and zoom < 4) or | ||
(kind == 'bay' and zoom < 5) or | ||
(kind == 'fjord' and zoom < 5) or | ||
(kind == 'strait' and zoom < 5) or | ||
(kind == 'lake' and zoom < 5) or | ||
(kind == 'playa' and zoom < 6) or | ||
(kind == 'reef' and zoom < 6) or | ||
(kind == 'river' and zoom < 12) or | ||
(kind == 'riverbank' and zoom < 12) or | ||
(kind == 'water' and zoom < 12) or | ||
(kind == 'canal' and zoom < 13) or | ||
(kind == 'basin' and zoom < 13) or | ||
(kind == 'dock' and zoom < 13) or | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I expanded the list of kinds in this section based on QA where I saw low zoom |
||
(kind == 'dam' and zoom < 14) or | ||
(kind == 'stream' and zoom < 14) or | ||
(kind == 'ditch' and zoom < 15) or | ||
(kind == 'drain' and zoom < 15) or | ||
(kind == 'swimming_pool' and zoom < 15) or | ||
(kind == 'fountain' and zoom < 15) or | ||
(properties is not None and properties.get('is_tunnel') is True) | ||
nvkelso marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
- fn: vectordatasource.transform.handle_label_placement | ||
params: | ||
layers: | ||
|
@@ -822,22 +857,58 @@ post_process: | |
# table. | ||
min_zoom: >- | ||
[min_zoom for min_zoom, area_threshold in [ | ||
(4, 40000000000), | ||
(5, 10000000000), | ||
(6, 5000000000), | ||
(7, 400000000), | ||
(8, 200000000), | ||
(9, 100000000), | ||
(10, 10000000), | ||
(11, 4000000), | ||
(12, 750000), | ||
(13, 100000), | ||
(14, 50000), | ||
(15, 10000), | ||
(16, None), | ||
(1, 1000000000000), | ||
(2, 500000000000), | ||
(3, 250000000000), | ||
(4, 120000000000), | ||
(5, 80000000000), | ||
(6, 40000000000), | ||
(7, 10000000000), | ||
(8, 500000000), | ||
(9, 200000000), | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The larger range of |
||
(10, 40000000), | ||
(11, 8000000), | ||
(12, 1000000), | ||
(13, 500000), | ||
(14, 50000), | ||
(15, 10000), | ||
(16, None), | ||
] if area >= area_threshold][0] | ||
where: >- | ||
kind == 'lake' and label_placement | ||
(properties is not None and properties.get('label_placement') is True) | ||
|
||
# now that we have the label points | ||
# drop most water properties at lower zooms | ||
# this is for lines and polygons | ||
- fn: vectordatasource.transform.drop_properties | ||
params: | ||
source_layer: water | ||
start_zoom: 0 | ||
end_zoom: 15 | ||
geom_types: [LineString, MultiLineString, Polygon, MultiPolygon] | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Switched to geom_types param instead of |
||
properties: | ||
- id | ||
- area | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. could add There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Addressed via 77e663c. |
||
- boundary | ||
- layer | ||
- wikidata_id | ||
- osm_relation | ||
- kind_tile_rank | ||
|
||
# now that we have the label points | ||
# drop water names at lower zooms for polys only | ||
- fn: vectordatasource.transform.drop_properties | ||
params: | ||
source_layer: water | ||
start_zoom: 0 | ||
end_zoom: 15 | ||
geom_types: [Polygon, MultiPolygon] | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Switched to geom_types param instead of |
||
# short-hand for "name" property in the list below means all name-like | ||
# properties. | ||
all_name_variants: true | ||
properties: | ||
- name | ||
- old_name | ||
|
||
- fn: vectordatasource.transform.handle_label_placement | ||
params: | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Only the
'label_placement': True
point should have names at this early zoom, and themin_zoom
on that should probably be a different value besides 2 (like 7)?