diff --git a/layers/transportation_name/etl_diagram.png b/layers/transportation_name/etl_diagram.png index db2381c1..d46ad20c 100644 Binary files a/layers/transportation_name/etl_diagram.png and b/layers/transportation_name/etl_diagram.png differ diff --git a/layers/transportation_name/transportation_name.sql b/layers/transportation_name/transportation_name.sql index e07229d9..60d0fd8b 100644 --- a/layers/transportation_name/transportation_name.sql +++ b/layers/transportation_name/transportation_name.sql @@ -110,7 +110,7 @@ FROM ( AND NOT highway_is_link(highway) AND CASE WHEN highway_class(highway, NULL::text, NULL::text) NOT IN ('path', 'minor') THEN TRUE - WHEN highway IN ('unclassified', 'residential', 'shipway') THEN TRUE + WHEN highway IN ('aerialway', 'unclassified', 'residential', 'shipway') THEN TRUE WHEN route_rank = 1 THEN TRUE END UNION ALL diff --git a/layers/transportation_name/update_transportation_name.sql b/layers/transportation_name/update_transportation_name.sql index 8052d2da..126c38bb 100644 --- a/layers/transportation_name/update_transportation_name.sql +++ b/layers/transportation_name/update_transportation_name.sql @@ -5,6 +5,7 @@ -- etldoc: osm_transportation_name_network -> osm_transportation_name_linestring -- etldoc: osm_shipway_linestring -> osm_transportation_name_linestring +-- etldoc: osm_aerialway_linestring -> osm_transportation_name_linestring CREATE TABLE IF NOT EXISTS osm_transportation_name_linestring AS SELECT (ST_Dump(geometry)).geom AS geometry, tags, @@ -65,6 +66,30 @@ FROM ( FROM osm_shipway_linestring WHERE name <> '' GROUP BY name, name_en, name_de, tags, subclass, "level", layer + UNION ALL + + SELECT ST_LineMerge(ST_Collect(geometry)) AS geometry, + transportation_name_tags(NULL::geometry, tags, name, name_en, name_de) AS tags, + NULL AS ref, + 'aerialway' AS highway, + aerialway AS subclass, + NULL AS brunnel, + NULL AS sac_scale, + NULL::int AS level, + layer, + NULL AS indoor, + NULL AS network_type, + NULL AS route_1, + NULL AS route_2, + NULL AS route_3, + NULL AS route_4, + NULL AS route_5, + NULL AS route_6, + min(z_order) AS z_order, + NULL::int AS route_rank + FROM osm_aerialway_linestring + WHERE name <> '' + GROUP BY name, name_en, name_de, tags, subclass, "level", layer ) AS highway_union ; CREATE INDEX IF NOT EXISTS osm_transportation_name_linestring_name_ref_idx ON osm_transportation_name_linestring (coalesce(tags->'name', ''), coalesce(ref, ''));