Mix maritime boundaries with NE and switch to OSM earlier

pull/135/head
Lukas Martinelli 2017-01-16 20:50:56 +01:00
rodzic 8874140207
commit d9f791e11e
1 zmienionych plików z 49 dodań i 43 usunięć

Wyświetl plik

@ -3,7 +3,7 @@
-- etldoc: ne_110m_admin_0_boundary_lines_land -> boundary_z0
CREATE OR REPLACE VIEW boundary_z0 AS (
SELECT geometry, 2 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
SELECT geometry, 2 AS admin_level, false AS disputed, false AS maritime
FROM ne_110m_admin_0_boundary_lines_land
);
@ -11,10 +11,10 @@ CREATE OR REPLACE VIEW boundary_z0 AS (
-- etldoc: ne_50m_admin_1_states_provinces_lines -> boundary_z1
CREATE OR REPLACE VIEW boundary_z1 AS (
SELECT geometry, 2 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
SELECT geometry, 2 AS admin_level, false AS disputed, false AS maritime
FROM ne_50m_admin_0_boundary_lines_land
UNION ALL
SELECT geometry, 4 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
SELECT geometry, 4 AS admin_level, false AS disputed, false AS maritime
FROM ne_50m_admin_1_states_provinces_lines
WHERE scalerank <= 2
);
@ -24,92 +24,98 @@ CREATE OR REPLACE VIEW boundary_z1 AS (
-- etldoc: ne_50m_admin_1_states_provinces_lines -> boundary_z3
CREATE OR REPLACE VIEW boundary_z3 AS (
SELECT geometry, 2 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
SELECT geometry, 2 AS admin_level, false AS disputed, false AS maritime
FROM ne_50m_admin_0_boundary_lines_land
UNION ALL
SELECT geometry, 4 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
SELECT geometry, 4 AS admin_level, false AS disputed, false AS maritime
FROM ne_50m_admin_1_states_provinces_lines
);
-- etldoc: ne_10m_admin_0_boundary_lines_land -> boundary_z4
-- etldoc: ne_10m_admin_1_states_provinces_lines_shp -> boundary_z4
-- etldoc: osm_border_linestring_gen10 -> boundary_z4
CREATE OR REPLACE VIEW boundary_z4 AS (
SELECT geometry, 2 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
SELECT geometry, 2 AS admin_level, false AS disputed, false AS maritime
FROM ne_10m_admin_0_boundary_lines_land
UNION ALL
SELECT geometry, 4 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
SELECT geometry, 4 AS admin_level, false AS disputed, false AS maritime
FROM ne_10m_admin_1_states_provinces_lines_shp
WHERE scalerank <= 3 AND featurecla = 'Adm-1 boundary'
UNION ALL
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen10
WHERE maritime=true AND admin_level <= 2
);
-- etldoc: ne_10m_admin_0_boundary_lines_land -> boundary_z5
-- etldoc: ne_10m_admin_1_states_provinces_lines_shp -> boundary_z5
-- etldoc: osm_border_linestring_gen9 -> boundary_z5
CREATE OR REPLACE VIEW boundary_z5 AS (
SELECT geometry, 2 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
SELECT geometry, 2 AS admin_level, false AS disputed, false AS maritime
FROM ne_10m_admin_0_boundary_lines_land
UNION ALL
SELECT geometry, 4 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
SELECT geometry, 4 AS admin_level, false AS disputed, false AS maritime
FROM ne_10m_admin_1_states_provinces_lines_shp
WHERE scalerank <= 7 AND featurecla = 'Adm-1 boundary'
UNION ALL
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen9
WHERE maritime=true AND admin_level <= 2
);
-- etldoc: ne_10m_admin_0_boundary_lines_land -> boundary_z6
-- etldoc: ne_10m_admin_1_states_provinces_lines_shp -> boundary_z6
-- etldoc: osm_border_linestring_gen8 -> boundary_z6
CREATE OR REPLACE VIEW boundary_z6 AS (
SELECT geometry, 2 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
FROM ne_10m_admin_0_boundary_lines_land
UNION ALL
SELECT geometry, 4 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
FROM ne_10m_admin_1_states_provinces_lines_shp
WHERE scalerank <= 9 AND featurecla = 'Adm-1 boundary'
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen8
WHERE admin_level <= 4
);
-- etldoc: ne_10m_admin_0_boundary_lines_land -> boundary_z7
-- etldoc: ne_10m_admin_1_states_provinces_lines_shp -> boundary_z7
-- etldoc: osm_border_linestring_gen7 -> boundary_z7
CREATE OR REPLACE VIEW boundary_z7 AS (
SELECT geometry, 2 AS admin_level, NULL::bool AS disputed, NULL::bool AS maritime
FROM ne_10m_admin_0_boundary_lines_land
UNION ALL
SELECT geometry, 4 AS admin_level, NULL AS disputed, NULL AS maritime
FROM ne_10m_admin_1_states_provinces_lines_shp
WHERE featurecla = 'Adm-1 boundary'
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen7
WHERE admin_level <= 4
);
-- etldoc: osm_border_linestring_gen5 -> boundary_z8
-- etldoc: osm_border_linestring_gen6 -> boundary_z8
CREATE OR REPLACE VIEW boundary_z8 AS (
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen5
WHERE admin_level <= 4 AND ST_Length(geometry) > 1000
FROM osm_border_linestring_gen6
WHERE admin_level <= 4
);
-- etldoc: osm_border_linestring_gen4 -> boundary_z9
-- etldoc: osm_border_linestring_gen5 -> boundary_z9
CREATE OR REPLACE VIEW boundary_z9 AS (
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen5
WHERE admin_level <= 6
);
-- etldoc: osm_border_linestring_gen4 -> boundary_z10
CREATE OR REPLACE VIEW boundary_z10 AS (
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen4
WHERE admin_level <= 6
);
-- etldoc: osm_border_linestring_gen3 -> boundary_z10
CREATE OR REPLACE VIEW boundary_z10 AS (
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen3
WHERE admin_level <= 6
);
-- etldoc: osm_border_linestring_gen2 -> boundary_z11
-- etldoc: osm_border_linestring_gen3 -> boundary_z11
CREATE OR REPLACE VIEW boundary_z11 AS (
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen2
FROM osm_border_linestring_gen3
WHERE admin_level <= 8
);
-- etldoc: osm_border_linestring_gen1 -> boundary_z12
-- etldoc: osm_border_linestring_gen2 -> boundary_z12
CREATE OR REPLACE VIEW boundary_z12 AS (
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen2
);
-- etldoc: osm_border_linestring_gen1 -> boundary_z12
CREATE OR REPLACE VIEW boundary_z13 AS (
SELECT geometry, admin_level, disputed, maritime
FROM osm_border_linestring_gen1
);
@ -156,7 +162,7 @@ RETURNS TABLE(geometry geometry, admin_level int, disputed int, maritime int) AS
-- etldoc: boundary_z12 -> layer_boundary:z12
SELECT * FROM boundary_z12 WHERE geometry && bbox AND zoom_level = 12
UNION ALL
-- etldoc: boundary_z12 -> layer_boundary:z13
SELECT * FROM boundary_z12 WHERE geometry && bbox AND zoom_level >= 13
-- etldoc: boundary_z13 -> layer_boundary:z13
SELECT * FROM boundary_z13 WHERE geometry && bbox AND zoom_level >= 13
) AS zoom_levels;
$$ LANGUAGE SQL IMMUTABLE;