From 251bf97cda0404ef368ae03b7e81babcb17cb8b5 Mon Sep 17 00:00:00 2001 From: Oliver Wipfli Date: Tue, 27 May 2025 15:08:31 +0200 Subject: [PATCH 1/2] Hide waterway tunnel labels --- render-tests/tests/water/tunnel/expected.png | Bin 5825 -> 3432 bytes styles/src/base_layers.ts | 6 +++++- .../com/protomaps/basemap/layers/Water.java | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/render-tests/tests/water/tunnel/expected.png b/render-tests/tests/water/tunnel/expected.png index 5e4a4aeb9ad8b1a3345f1feafeea44c41223c57c..d3f92c7afff1ffc53b52afc3bd6563e6f130c5a6 100644 GIT binary patch literal 3432 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 literal 5825 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 VBH4leFnF3iaNf+$w9&*p@qZb__x=C? diff --git a/styles/src/base_layers.ts b/styles/src/base_layers.ts index 6bc629bdf..5986eb2a5 100644 --- a/styles/src/base_layers.ts +++ b/styles/src/base_layers.ts @@ -1411,7 +1411,11 @@ export function labels_layers( source: source, "source-layer": "water", minzoom: 13, - filter: ["in", "kind", "river", "stream"], + filter: [ + "all", + ["in", "kind", "river", "stream"], + ["!has", "tunnel"] + ], layout: { "symbol-placement": "line", "text-font": [t.italic || "Noto Sans Italic"], diff --git a/tiles/src/main/java/com/protomaps/basemap/layers/Water.java b/tiles/src/main/java/com/protomaps/basemap/layers/Water.java index 6ec197eb3..2f634db9d 100644 --- a/tiles/src/main/java/com/protomaps/basemap/layers/Water.java +++ b/tiles/src/main/java/com/protomaps/basemap/layers/Water.java @@ -374,6 +374,8 @@ public void processOsm(SourceFeature sf, FeatureCollector features) { .setAttr("min_zoom", minZoom + 1) .setAttrWithMinzoom("layer", Parse.parseIntOrNull(sf.getString("layer")), extraAttrMinzoom) .setAttr("sort_rank", 200) + .setAttrWithMinzoom("bridge", sf.getString("bridge"), extraAttrMinzoom) + .setAttrWithMinzoom("tunnel", sf.getString("tunnel"), extraAttrMinzoom) .setSortKey(minZoom) .setMinPixelSize(0) .setPixelTolerance(0) From 62e37d136c7b09c2b504a1f8ab9add45785a61e5 Mon Sep 17 00:00:00 2001 From: Oliver Wipfli Date: Tue, 27 May 2025 15:10:25 +0200 Subject: [PATCH 2/2] Format --- styles/src/base_layers.ts | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/styles/src/base_layers.ts b/styles/src/base_layers.ts index 5986eb2a5..4629840e0 100644 --- a/styles/src/base_layers.ts +++ b/styles/src/base_layers.ts @@ -1411,11 +1411,7 @@ export function labels_layers( source: source, "source-layer": "water", minzoom: 13, - filter: [ - "all", - ["in", "kind", "river", "stream"], - ["!has", "tunnel"] - ], + filter: ["all", ["in", "kind", "river", "stream"], ["!has", "tunnel"]], layout: { "symbol-placement": "line", "text-font": [t.italic || "Noto Sans Italic"],