diff --git a/layers_addons/tree/README.md b/layers_addons/tree/README.md new file mode 100644 index 00000000..1d344a8e --- /dev/null +++ b/layers_addons/tree/README.md @@ -0,0 +1,7 @@ +## Trees + +### Mapping Diagram +![Mapping diagram for trees](mapping_diagram.png?raw=true) + +### ETL diagram +![ETL diagram for trees](etl_diagram.png?raw=true) diff --git a/layers_addons/tree/etl_diagram.png b/layers_addons/tree/etl_diagram.png new file mode 100644 index 00000000..9aad9b72 Binary files /dev/null and b/layers_addons/tree/etl_diagram.png differ diff --git a/layers_addons/tree/layer.sql b/layers_addons/tree/layer.sql new file mode 100644 index 00000000..6288e3d8 --- /dev/null +++ b/layers_addons/tree/layer.sql @@ -0,0 +1,16 @@ +-- etldoc: layer_tree[shape=record fillcolor=lightpink, +-- etldoc: style="rounded,filled", label="layer_tree | z14+" ] ; +CREATE OR REPLACE FUNCTION layer_tree(bbox geometry, zoom_level integer, pixel_width numeric) +RETURNS TABLE( + osm_id bigint, + geometry geometry, + leaf_type text +) AS $$ + -- etldoc: osm_tree -> layer_tree:z14_ + SELECT osm_id, geometry, leaf_type + FROM osm_tree + WHERE zoom_level >= 14 + AND geometry && bbox; +$$ LANGUAGE SQL STABLE + -- STRICT + PARALLEL SAFE; diff --git a/layers_addons/tree/mapping.yaml b/layers_addons/tree/mapping.yaml new file mode 100644 index 00000000..3cab8b61 --- /dev/null +++ b/layers_addons/tree/mapping.yaml @@ -0,0 +1,15 @@ +tables: + # etldoc: imposm3 -> osm_tree + tree: + type: point + fields: + - name: osm_id + type: id + - name: geometry + type: geometry + - name: leaf_type + tag: leaf_type + type: string + mapping: + natural: [tree] + leaf_type: [broadleaved, needleleaved] diff --git a/layers_addons/tree/mapping_diagram.png b/layers_addons/tree/mapping_diagram.png new file mode 100644 index 00000000..bc3e8947 Binary files /dev/null and b/layers_addons/tree/mapping_diagram.png differ diff --git a/layers_addons/tree/tree.yaml b/layers_addons/tree/tree.yaml new file mode 100644 index 00000000..9ba4f86b --- /dev/null +++ b/layers_addons/tree/tree.yaml @@ -0,0 +1,20 @@ +layer: + id: "tree" + description: | + [Trees](http://wiki.openstreetmap.org/wiki/Tag:natural%3Dtree) + buffer_size: 4 + fields: + leaf_type: + description: | + Type of leaf from [OSM](https://wiki.openstreetmap.org/wiki/Key:leaf_type). + values: + - broadleaved + - needleleaved + datasource: + geometry_field: geometry + query: (SELECT geometry, leaf_type FROM layer_tree(!bbox!, z(!scale_denominator!), !pixel_width!)) AS t +schema: + - ./layer.sql +datasources: + - type: imposm3 + mapping_file: ./mapping.yaml diff --git a/openmaptiles_addons.yaml b/openmaptiles_addons.yaml new file mode 100644 index 00000000..1a1aeb0b --- /dev/null +++ b/openmaptiles_addons.yaml @@ -0,0 +1,102 @@ +tileset: + layers: + - layers/water/water.yaml + - layers/waterway/waterway.yaml + - layers/landcover/landcover.yaml + - layers/landuse/landuse.yaml + - layers/mountain_peak/mountain_peak.yaml + - layers/park/park.yaml + - layers/boundary/boundary.yaml + - layers/aeroway/aeroway.yaml + - layers/transportation/transportation.yaml + - layers/building/building.yaml + - layers/water_name/water_name.yaml + - layers/transportation_name/transportation_name.yaml + - layers/place/place.yaml + - layers/housenumber/housenumber.yaml + - layers/poi/poi.yaml + - layers/aerodrome_label/aerodrome_label.yaml + - layers_addons/tree/tree.yaml + name: OpenMapTiles + Addons + version: 3.11.0+addons + id: openmaptiles+addons + description: "A tileset showcasing all base layers and addons in OpenMapTiles. https://openmaptiles.org" + attribution: '© OpenMapTiles © OpenStreetMap contributors' + center: [-12.2168, 28.6135, 4] + bounds: [-180.0,-85.0511,180.0,85.0511] + maxzoom: 14 + minzoom: 0 + pixel_scale: 256 + languages: + - am # Amharic + - ar # Arabic + - az # Azerbaijani, Latin + - be # Belorussian + - bg # Bulgarian + - br # Breton, Latin + - bs # Bosnian, Latin + - ca # Catalan, Latin + - co # Corsican, Latin + - cs # Czech, Latin + - cy # Welsh, Latin + - da # Danish, Latin + - de # German, Latin + - el # Greek + - en # English, Latin + - eo # Esperanto, Latin + - es # Spanish, Latin + - et # Estonian, Latin + - eu # Basque, Latin + - fi # Finnish, Latin + - fr # French, Latin + - fy # Western Frisian, Latin + - ga # Irish, Latin + - gd # Scottish Gaelic, Latin + - he # Hebrew + - hi # Hindi + - hr # Croatian, Latin + - hu # Hungarian, Latin + - hy # Armenian + - id # Indonesian, Latin + - is # Icelandic, Latin + - it # Italian, Latin + - ja # Japanese + - ja_kana # Japanese Kana form + - ja_rm # romanization of Japanese, Latin + - ka # Georgian + - kk # Kazakh + - kn # Kannada + - ko # Korean + - ko_rm # romanization of Korean, Latin + - ku # Kurdish, Latin + - la # Latin, Latin + - lb # Luxembourgish, Latin + - lt # Lithuanian, Latin + - lv # Latvian, Latin + - mk # Macedonian + - mt # Maltese, Latin + - ml # Malayalam + - nl # Dutch, Latin + - "no" # Norwegian, Latin + - oc # Occitan (post 1500), Latin + - pl # Polish, Latin + - pt # Portuguese, Latin + - rm # Romansh, Latin + - ro # Romania, Latin + - ru # Russian + - sk # Slovak, Latin + - sl # Slovene, Latin + - sq # Albanian, Latin + - sr # Serbian, Cyrillic + - sr-Latn # Serbian, Latin + - sv # Swedish, Latin + - ta # Tamil + - te # Telugu + - th # Thai + - tr # Turkish, Latin + - uk # Ukrainian + - zh # Chinese + defaults: + srs: +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs +over + datasource: + srid: 900913