This is an automated email from the ASF dual-hosted git repository. bchapuis pushed a commit to branch basemap-low-zoom-level in repository https://gitbox.apache.org/repos/asf/incubator-baremaps.git
commit fe5a444799cd5e3bd3cd7fe9e9016104df8c28fa Author: Bertil Chapuis <[email protected]> AuthorDate: Fri Aug 18 15:12:30 2023 +0200 Display natural layer at low zoom levels --- basemap/layers/landuse/simplify.sql | 60 ++++++++----------------------------- basemap/layers/natural/tileset.js | 6 ++-- 2 files changed, 15 insertions(+), 51 deletions(-) diff --git a/basemap/layers/landuse/simplify.sql b/basemap/layers/landuse/simplify.sql index 0667a997..038f167a 100644 --- a/basemap/layers/landuse/simplify.sql +++ b/basemap/layers/landuse/simplify.sql @@ -33,97 +33,61 @@ CREATE VIEW osm_landuse_z13 AS SELECT id, tags, geom FROM osm_landuse; CREATE MATERIALIZED VIEW osm_landuse_z12 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 12)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 12)) AS geom FROM osm_landuse WHERE st_area(st_envelope(geom)) > 25 * power(78270 / power(2, 12), 2); CREATE MATERIALIZED VIEW osm_landuse_z11 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 11)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 11)) AS geom FROM osm_landuse WHERE st_area(st_envelope(geom)) > 25 * power(78270 / power(2, 11), 2); CREATE MATERIALIZED VIEW osm_landuse_z10 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 10)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 10)) AS geom FROM osm_landuse WHERE st_area(st_envelope(geom)) > 25 * power(78270 / power(2, 10), 2); CREATE MATERIALIZED VIEW osm_landuse_z9 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 9)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 9)) AS geom FROM osm_landuse WHERE st_area(st_envelope(geom)) > 25 * power(78270 / power(2, 9), 2); CREATE MATERIALIZED VIEW osm_landuse_z8 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 8)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 8)) AS geom FROM osm_landuse_xl WHERE st_area(st_envelope(geom)) > 25 * power(78270 / power(2, 8), 2); CREATE MATERIALIZED VIEW osm_landuse_z7 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 7)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 7)) AS geom FROM osm_landuse_l WHERE st_area(st_envelope(geom)) > 150 * power(78270 / power(2, 7), 2); CREATE MATERIALIZED VIEW osm_landuse_z6 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 6)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 6)) AS geom FROM osm_landuse_m WHERE st_area(st_envelope(geom)) > 150 * power(78270 / power(2, 6), 2); CREATE MATERIALIZED VIEW osm_landuse_z5 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 5)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 5)) AS geom FROM osm_landuse_s WHERE st_area(st_envelope(geom)) > 150 * power(78270 / power(2, 5), 2); CREATE MATERIALIZED VIEW osm_landuse_z4 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 4)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 4)) AS geom FROM osm_landuse_s WHERE st_area(st_envelope(geom)) > 150 * power(78270 / power(2, 4), 2); CREATE MATERIALIZED VIEW osm_landuse_z3 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 3)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 3)) AS geom FROM osm_landuse_s WHERE st_area(st_envelope(geom)) > 150 * power(78270 / power(2, 3), 2); CREATE MATERIALIZED VIEW osm_landuse_z2 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 2)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 2)) AS geom FROM osm_landuse_s WHERE st_area(st_envelope(geom)) > 150 * power(78270 / power(2, 2), 2); CREATE MATERIALIZED VIEW osm_landuse_z1 AS -SELECT - id, - tags, - st_simplifypreservetopology(geom, 78270 / power(2, 1)) AS geom +SELECT id, tags, st_simplifypreservetopology(geom, 78270 / power(2, 1)) AS geom FROM osm_landuse_s WHERE st_area(st_envelope(geom)) > 250 * power(78270 / power(2, 1), 2); diff --git a/basemap/layers/natural/tileset.js b/basemap/layers/natural/tileset.js index 86126464..04f5517d 100644 --- a/basemap/layers/natural/tileset.js +++ b/basemap/layers/natural/tileset.js @@ -13,12 +13,12 @@ export default { "id": "natural", "queries": [ { - "minzoom": 3, - "maxzoom": 6, + "minzoom": 1, + "maxzoom": 8, "sql": "SELECT id, tags, geom FROM osm_natural_z$zoom WHERE tags ->> 'natural' IN ('wood', 'scrub', 'heath', 'grassland', 'bare_rock', 'scree', 'shingle', 'sand', 'mud', 'water', 'wetland', 'glacier', 'beach')" }, { - "minzoom": 6, + "minzoom": 8, "maxzoom": 13, "sql": "SELECT id, tags, geom FROM osm_natural_z$zoom WHERE tags ->> 'natural' IN ('wood', 'scrub', 'heath', 'grassland', 'bare_rock', 'scree', 'shingle', 'sand', 'mud', 'water', 'wetland', 'glacier', 'beach')" },
