From 7a0ec0e40d2a7ca4a9ea6de0c57ae802611d0f12 Mon Sep 17 00:00:00 2001 From: ImreSamu Date: Wed, 9 Nov 2016 23:39:44 +0100 Subject: [PATCH] add layer_building etldoc comments --- gen_etl_graph_building.sh | 21 +++++++++++++++++++++ layers/building/building.sql | 9 +++++++++ layers/building/mapping.yaml | 5 +++++ 3 files changed, 35 insertions(+) create mode 100755 gen_etl_graph_building.sh diff --git a/gen_etl_graph_building.sh b/gen_etl_graph_building.sh new file mode 100755 index 00000000..a74b0e63 --- /dev/null +++ b/gen_etl_graph_building.sh @@ -0,0 +1,21 @@ + + + + +DOT=building.dot + +echo "digraph G +{ +rankdir=LR; +" > $DOT + +cat ./layers/building/mapping.yaml | grep "# etldoc:" | sed 's/# etldoc://g' >>$DOT +cat ./layers/building/building.sql | grep "\-\- etldoc:" | sed 's/-- etldoc://g' >>$DOT + +echo " +} +" >> $DOT + +cat $DOT + +dot -Tpng $DOT > layer_building_etl.png diff --git a/layers/building/building.sql b/layers/building/building.sql index 8f0c7fef..9de11ac2 100644 --- a/layers/building/building.sql +++ b/layers/building/building.sql @@ -1,11 +1,20 @@ + + + +-- etldoc: layer_building[shape=record fillcolor=lightpink, style="rounded,filled", +-- etldoc: label="layer_building | z13 | z14_ " ] ; + CREATE OR REPLACE FUNCTION layer_building(bbox geometry, zoom_level int) RETURNS TABLE(geom geometry, osm_id bigint, render_height numeric) AS $$ SELECT geometry, osm_id, least(greatest(3, COALESCE(height, levels*3.66,5)),400)^.7::int AS render_height FROM ( + + -- etldoc: osm_building_polygon_gen1 -> layer_building:z13 SELECT osm_id, geometry, height, levels FROM osm_building_polygon_gen1 WHERE zoom_level = 13 AND geometry && bbox AND area > 1400 UNION ALL + -- etldoc: osm_building_polygon -> layer_building:z14_ SELECT osm_id, geometry, height, levels FROM osm_building_polygon WHERE zoom_level >= 14 AND geometry && bbox ) AS zoom_levels diff --git a/layers/building/mapping.yaml b/layers/building/mapping.yaml index 3743f803..8974234b 100644 --- a/layers/building/mapping.yaml +++ b/layers/building/mapping.yaml @@ -1,9 +1,14 @@ generalized_tables: + + # etldoc: imposm3 -> osm_building_polygon_gen1 building_polygon_gen1: source: building_polygon sql_filter: area>1400.0 tolerance: 10.0 + tables: + + # etldoc: imposm3 -> osm_building_polygon building_polygon: fields: - name: osm_id