diff --git a/data.yml b/data.yml index 97fd346..83be3cb 100644 --- a/data.yml +++ b/data.yml @@ -288,6 +288,53 @@ Layer: properties: "buffer-size": 4 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 + - id: place + Datasource: + dbname: osm + extent: -20037508.34,-20037508.34,20037508.34,20037508.34 + geometry_field: geom + geometry_table: '' + host: db + key_field: '' + key_field_as_attribute: '' + max_size: 512 + password: osm + port: 5432 + srid: '' + table: |- + ( SELECT * + FROM ( + SELECT * FROM place_z3 + WHERE z(!scale_denominator!) = 3 + UNION ALL + SELECT * FROM place_z4 + WHERE z(!scale_denominator!) = 4 + UNION ALL + SELECT * FROM place_z5 + WHERE z(!scale_denominator!) = 5 + UNION ALL + SELECT * FROM place_z6 + WHERE z(!scale_denominator!) = 6 + UNION ALL + SELECT * FROM place_z7 + WHERE z(!scale_denominator!) = 7 + UNION ALL + SELECT * FROM place_z8 + WHERE z(!scale_denominator!) = 8 + ) AS place + WHERE geom && !bbox! + ) AS t + type: postgis + user: osm + description: Buildings + fields: + class: String + name: String + rank: String + scalerank: Number + properties: + "buffer-size": 4 + 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 maxzoom: 14 minzoom: 0 name: OSM2VectorTiles v3.0 diff --git a/schema/layers/place.sql b/schema/layers/place.sql new file mode 100644 index 0000000..5029a66 --- /dev/null +++ b/schema/layers/place.sql @@ -0,0 +1,32 @@ +CREATE OR REPLACE VIEW place_z3 AS ( + SELECT geom, name, 'settlement' AS class, 'city' AS rank, scalerank + FROM ne_10m_populated_places + WHERE scalerank <= 2 +); + +CREATE OR REPLACE VIEW place_z4 AS ( + SELECT geom, name, 'settlement' AS class, 'city' AS rank, scalerank + FROM ne_10m_populated_places + WHERE scalerank <= 5 +); + +CREATE OR REPLACE VIEW place_z5 AS ( + SELECT geom, name, 'settlement' AS class, 'city' AS rank, scalerank + FROM ne_10m_populated_places + WHERE scalerank <= 6 +); + +CREATE OR REPLACE VIEW place_z6 AS ( + SELECT geom, name, 'settlement' AS class, 'city' AS rank, scalerank + FROM ne_10m_populated_places + WHERE scalerank <= 7 +); + +CREATE OR REPLACE VIEW place_z7 AS ( + SELECT geom, name, 'settlement' AS class, 'city' AS rank, scalerank FROM ne_10m_populated_places +); + +CREATE OR REPLACE VIEW place_z8 AS ( + SELECT way AS geom, name, class::text, rank::text, NULL::integer AS scalerank FROM place_point + WHERE rank IN ('city', 'town') +);