kopia lustrzana https://github.com/openmaptiles/openmaptiles
Waterway zoomlevel 6 - 8 corresponding with water (#1291)
This PR is solving https://github.com/openmaptiles/openmaptiles/issues/406, partially also https://github.com/openmaptiles/openmaptiles/issues/320. It is changing source of data for zoomlevel 6 - 8 in `waterway` layer to OSM (relation `waterway = river`), this way it corresponds with `water` layer. Testing on Europe, z0 - z9 tiles increase size from 20.7 MB to 21.4 MB. We can discuss the level of generalization, but I think this size change is not critical.pull/1294/head^2
rodzic
1be440404b
commit
26cfe69a9c
Plik binarny nie jest wyświetlany.
Przed Szerokość: | Wysokość: | Rozmiar: 249 KiB Po Szerokość: | Wysokość: | Rozmiar: 225 KiB |
|
@ -42,3 +42,26 @@ tables:
|
||||||
- canal
|
- canal
|
||||||
- drain
|
- drain
|
||||||
- ditch
|
- ditch
|
||||||
|
|
||||||
|
# etldoc: imposm3 -> osm_waterway_relation
|
||||||
|
waterway_relation:
|
||||||
|
type: relation_member
|
||||||
|
columns:
|
||||||
|
- name: osm_id
|
||||||
|
type: id
|
||||||
|
- name: member
|
||||||
|
type: member_id
|
||||||
|
- name: role
|
||||||
|
type: member_role
|
||||||
|
- name: geometry
|
||||||
|
type: geometry
|
||||||
|
- key: waterway
|
||||||
|
name: waterway
|
||||||
|
type: string
|
||||||
|
- key: name
|
||||||
|
name: name
|
||||||
|
type: string
|
||||||
|
- name: tags
|
||||||
|
type: hstore_tags
|
||||||
|
mapping:
|
||||||
|
waterway: [river]
|
||||||
|
|
Plik binarny nie jest wyświetlany.
Przed Szerokość: | Wysokość: | Rozmiar: 8.0 KiB Po Szerokość: | Wysokość: | Rozmiar: 12 KiB |
|
@ -62,30 +62,43 @@ FROM ne_50m_rivers_lake_centerlines_gen_z5
|
||||||
) /* DELAY_MATERIALIZED_VIEW_CREATION */ ;
|
) /* DELAY_MATERIALIZED_VIEW_CREATION */ ;
|
||||||
CREATE INDEX IF NOT EXISTS ne_50m_rivers_lake_centerlines_gen_z4_idx ON ne_50m_rivers_lake_centerlines_gen_z4 USING gist (geometry);
|
CREATE INDEX IF NOT EXISTS ne_50m_rivers_lake_centerlines_gen_z4_idx ON ne_50m_rivers_lake_centerlines_gen_z4 USING gist (geometry);
|
||||||
|
|
||||||
-- ne_10m_rivers_lake_centerlines
|
-- osm_waterway_relation
|
||||||
-- etldoc: ne_10m_rivers_lake_centerlines -> ne_10m_rivers_lake_centerlines_gen_z8
|
-- etldoc: osm_waterway_relation -> waterway_relation
|
||||||
DROP MATERIALIZED VIEW IF EXISTS ne_10m_rivers_lake_centerlines_gen_z8 CASCADE;
|
DROP TABLE IF EXISTS waterway_relation CASCADE;
|
||||||
CREATE MATERIALIZED VIEW ne_10m_rivers_lake_centerlines_gen_z8 AS
|
CREATE TABLE waterway_relation AS (
|
||||||
(
|
SELECT ST_Union(geometry) AS geometry,
|
||||||
SELECT ST_Simplify(geometry, ZRes(10)) as geometry,
|
name,
|
||||||
|
slice_language_tags(tags) AS tags
|
||||||
|
FROM osm_waterway_relation
|
||||||
|
WHERE name <> ''
|
||||||
|
AND (role = 'main_stream' OR role = '')
|
||||||
|
AND ST_GeometryType(geometry) = 'ST_LineString'
|
||||||
|
AND ST_IsClosed(geometry) = FALSE
|
||||||
|
GROUP BY name, slice_language_tags(tags)
|
||||||
|
);
|
||||||
|
CREATE INDEX IF NOT EXISTS waterway_relation_geometry_idx ON waterway_relation USING gist (geometry);
|
||||||
|
|
||||||
|
-- etldoc: waterway_relation -> waterway_relation_gen_z8
|
||||||
|
DROP MATERIALIZED VIEW IF EXISTS waterway_relation_gen_z8 CASCADE;
|
||||||
|
CREATE MATERIALIZED VIEW waterway_relation_gen_z8 AS (
|
||||||
|
SELECT ST_Simplify(geometry, ZRes(10)) AS geometry,
|
||||||
'river'::text AS class,
|
'river'::text AS class,
|
||||||
NULL::text AS name,
|
name,
|
||||||
NULL::text AS name_en,
|
NULL::text AS name_en,
|
||||||
NULL::text AS name_de,
|
NULL::text AS name_de,
|
||||||
NULL::hstore AS tags,
|
tags,
|
||||||
NULL::boolean AS is_bridge,
|
NULL::boolean AS is_bridge,
|
||||||
NULL::boolean AS is_tunnel,
|
NULL::boolean AS is_tunnel,
|
||||||
NULL::boolean AS is_intermittent
|
NULL::boolean AS is_intermittent
|
||||||
FROM ne_10m_rivers_lake_centerlines
|
FROM waterway_relation
|
||||||
WHERE featurecla = 'River'
|
WHERE ST_Length(geometry) > 300000
|
||||||
) /* DELAY_MATERIALIZED_VIEW_CREATION */ ;
|
) /* DELAY_MATERIALIZED_VIEW_CREATION */ ;
|
||||||
CREATE INDEX IF NOT EXISTS ne_10m_rivers_lake_centerlines_gen_z8_idx ON ne_10m_rivers_lake_centerlines_gen_z8 USING gist (geometry);
|
CREATE INDEX IF NOT EXISTS waterway_relation_gen_z8_geometry_idx ON waterway_relation_gen_z8 USING gist (geometry);
|
||||||
|
|
||||||
-- etldoc: ne_10m_rivers_lake_centerlines_gen_z8 -> ne_10m_rivers_lake_centerlines_gen_z7
|
-- etldoc: waterway_relation_gen_z8 -> waterway_relation_gen_z7
|
||||||
DROP MATERIALIZED VIEW IF EXISTS ne_10m_rivers_lake_centerlines_gen_z7 CASCADE;
|
DROP MATERIALIZED VIEW IF EXISTS waterway_relation_gen_z7 CASCADE;
|
||||||
CREATE MATERIALIZED VIEW ne_10m_rivers_lake_centerlines_gen_z7 AS
|
CREATE MATERIALIZED VIEW waterway_relation_gen_z7 AS (
|
||||||
(
|
SELECT ST_Simplify(geometry, ZRes(9)) AS geometry,
|
||||||
SELECT ST_Simplify(geometry, ZRes(9)) as geometry,
|
|
||||||
class,
|
class,
|
||||||
name,
|
name,
|
||||||
name_en,
|
name_en,
|
||||||
|
@ -94,15 +107,15 @@ SELECT ST_Simplify(geometry, ZRes(9)) as geometry,
|
||||||
is_bridge,
|
is_bridge,
|
||||||
is_tunnel,
|
is_tunnel,
|
||||||
is_intermittent
|
is_intermittent
|
||||||
FROM ne_10m_rivers_lake_centerlines_gen_z8
|
FROM waterway_relation_gen_z8
|
||||||
) /* DELAY_MATERIALIZED_VIEW_CREATION */ ;
|
WHERE ST_Length(geometry) > 400000
|
||||||
CREATE INDEX IF NOT EXISTS ne_10m_rivers_lake_centerlines_gen_z7_idx ON ne_10m_rivers_lake_centerlines_gen_z7 USING gist (geometry);
|
) /* DELAY_MATERIALIZED_VIEW_CREATION */ ;
|
||||||
|
CREATE INDEX IF NOT EXISTS waterway_relation_gen_z7_geometry_idx ON waterway_relation_gen_z7 USING gist (geometry);
|
||||||
|
|
||||||
-- etldoc: ne_10m_rivers_lake_centerlines_gen_z7 -> ne_10m_rivers_lake_centerlines_gen_z6
|
-- etldoc: waterway_relation_gen_z7 -> waterway_relation_gen_z6
|
||||||
DROP MATERIALIZED VIEW IF EXISTS ne_10m_rivers_lake_centerlines_gen_z6 CASCADE;
|
DROP MATERIALIZED VIEW IF EXISTS waterway_relation_gen_z6 CASCADE;
|
||||||
CREATE MATERIALIZED VIEW ne_10m_rivers_lake_centerlines_gen_z6 AS
|
CREATE MATERIALIZED VIEW waterway_relation_gen_z6 AS (
|
||||||
(
|
SELECT ST_Simplify(geometry, ZRes(8)) AS geometry,
|
||||||
SELECT ST_Simplify(geometry, ZRes(8)) as geometry,
|
|
||||||
class,
|
class,
|
||||||
name,
|
name,
|
||||||
name_en,
|
name_en,
|
||||||
|
@ -111,9 +124,10 @@ SELECT ST_Simplify(geometry, ZRes(8)) as geometry,
|
||||||
is_bridge,
|
is_bridge,
|
||||||
is_tunnel,
|
is_tunnel,
|
||||||
is_intermittent
|
is_intermittent
|
||||||
FROM ne_10m_rivers_lake_centerlines_gen_z7
|
FROM waterway_relation_gen_z7
|
||||||
) /* DELAY_MATERIALIZED_VIEW_CREATION */ ;
|
WHERE ST_Length(geometry) > 500000
|
||||||
CREATE INDEX IF NOT EXISTS ne_10m_rivers_lake_centerlines_gen_z6_idx ON ne_10m_rivers_lake_centerlines_gen_z6 USING gist (geometry);
|
) /* DELAY_MATERIALIZED_VIEW_CREATION */ ;
|
||||||
|
CREATE INDEX IF NOT EXISTS waterway_relation_gen_z6_geometry_idx ON waterway_relation_gen_z6 USING gist (geometry);
|
||||||
|
|
||||||
|
|
||||||
-- etldoc: ne_110m_rivers_lake_centerlines_gen_z3 -> waterway_z3
|
-- etldoc: ne_110m_rivers_lake_centerlines_gen_z3 -> waterway_z3
|
||||||
|
@ -161,7 +175,7 @@ SELECT geometry,
|
||||||
FROM ne_50m_rivers_lake_centerlines_gen_z5
|
FROM ne_50m_rivers_lake_centerlines_gen_z5
|
||||||
);
|
);
|
||||||
|
|
||||||
-- etldoc: ne_10m_rivers_lake_centerlines_gen_z6 -> waterway_z6
|
-- etldoc: waterway_relation_gen_z6 -> waterway_z6
|
||||||
CREATE OR REPLACE VIEW waterway_z6 AS
|
CREATE OR REPLACE VIEW waterway_z6 AS
|
||||||
(
|
(
|
||||||
SELECT geometry,
|
SELECT geometry,
|
||||||
|
@ -173,10 +187,10 @@ SELECT geometry,
|
||||||
is_bridge,
|
is_bridge,
|
||||||
is_tunnel,
|
is_tunnel,
|
||||||
is_intermittent
|
is_intermittent
|
||||||
FROM ne_10m_rivers_lake_centerlines_gen_z6
|
FROM waterway_relation_gen_z6
|
||||||
);
|
);
|
||||||
|
|
||||||
-- etldoc: ne_10m_rivers_lake_centerlines_gen_z7 -> waterway_z7
|
-- etldoc: waterway_relation_gen_z7 -> waterway_z7
|
||||||
CREATE OR REPLACE VIEW waterway_z7 AS
|
CREATE OR REPLACE VIEW waterway_z7 AS
|
||||||
(
|
(
|
||||||
SELECT geometry,
|
SELECT geometry,
|
||||||
|
@ -188,10 +202,10 @@ SELECT geometry,
|
||||||
is_bridge,
|
is_bridge,
|
||||||
is_tunnel,
|
is_tunnel,
|
||||||
is_intermittent
|
is_intermittent
|
||||||
FROM ne_10m_rivers_lake_centerlines_gen_z7
|
FROM waterway_relation_gen_z7
|
||||||
);
|
);
|
||||||
|
|
||||||
-- etldoc: ne_10m_rivers_lake_centerlines_gen_z8 -> waterway_z8
|
-- etldoc: waterway_relation_gen_z8 -> waterway_z8
|
||||||
CREATE OR REPLACE VIEW waterway_z8 AS
|
CREATE OR REPLACE VIEW waterway_z8 AS
|
||||||
(
|
(
|
||||||
SELECT geometry,
|
SELECT geometry,
|
||||||
|
@ -203,7 +217,7 @@ SELECT geometry,
|
||||||
is_bridge,
|
is_bridge,
|
||||||
is_tunnel,
|
is_tunnel,
|
||||||
is_intermittent
|
is_intermittent
|
||||||
FROM ne_10m_rivers_lake_centerlines_gen_z8
|
FROM waterway_relation_gen_z8
|
||||||
);
|
);
|
||||||
|
|
||||||
-- etldoc: osm_important_waterway_linestring_gen_z9 -> waterway_z9
|
-- etldoc: osm_important_waterway_linestring_gen_z9 -> waterway_z9
|
||||||
|
|
Ładowanie…
Reference in New Issue