diff --git a/ecologie.map b/ecologie.map new file mode 100644 index 00000000..a482f180 --- /dev/null +++ b/ecologie.map @@ -0,0 +1,754 @@ +# GENERATED BY gen_ecologie.py, DO NOT EDIT. + + +# TEAM: Bor + +MAP + NAME 'ecologie' + INCLUDE 'header.inc' + WEB + METADATA + 'team' 'BOR' + 'ows_title' 'Ecologie' + 'ows_abstract' 'Deze collectie bevat ecologische voorzieningen binnen gemeente Amsterdam. Dit zijn zowel ecologische objecten als ecologische gebieden. De ecologische objecten, zoals eekhoornbruggen en vispassages, zijn bedoeld voor dieren in de stad en zorgen ervoor dat zij zich veilig kunnen verplaatsen tussen verschillende leefgebieden. De ecologische gebieden zijn gericht op het vergroten van de biodiversiteit en zijn onderverdeeld in kerngebieden en verbindingszones. Kerngebieden bieden geschikte omstandigheden voor de permanente vestiging van soorten. Verbindingszones bieden geschikte omstandigheden voor tijdelijk verblijf, verbinden de kerngebieden met elkaar waardoor het leefgebied vergroot' + 'wms_extent' '100000 450000 150000 500000' + END + END + LAYER + NAME 'Loopplank' + GROUP 'faunameubilair' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunameubilair_v1 where type = 'Loopplank') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Loopplank' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunameubilair' + END + CLASS + NAME 'Loopplank' + STYLE + SYMBOL 'aanwezig_laag' + SIZE 20 + END + END + END + LAYER + NAME 'Vogelhut' + GROUP 'faunameubilair' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunameubilair_v1 where type = 'Vogelhut') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Vogelhut' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunameubilair' + END + CLASS + NAME 'Vogelhut' + STYLE + SYMBOL 'deels_bestreden' + SIZE 20 + END + END + END + LAYER + NAME 'Vogelkijktoren' + GROUP 'faunameubilair' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunameubilair_v1 where type = 'Vogelkijktoren') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Vogelkijktoren' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunameubilair' + END + CLASS + NAME 'Vogelkijktoren' + STYLE + SYMBOL 'niet_in_beheer' + SIZE 20 + END + END + END + LAYER + NAME 'Vogelscherm' + GROUP 'faunameubilair' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunameubilair_v1 where type = 'Vogelscherm') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Vogelscherm' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunameubilair' + END + CLASS + NAME 'Vogelscherm' + STYLE + SYMBOL 'aanwezig_urgent' + SIZE 20 + END + END + END + LAYER + NAME 'Bijenwand' + GROUP 'faunaverblijfplaatsen' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunaverblijfplaatsen_v1 where type = 'Bijenwand') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Bijenwand' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunaverblijfplaatsen' + END + CLASS + NAME 'Bijenwand' + STYLE + SYMBOL 'gemeld' + SIZE 20 + END + END + END + LAYER + NAME 'Broeihoop' + GROUP 'faunaverblijfplaatsen' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunaverblijfplaatsen_v1 where type = 'Broeihoop') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Broeihoop' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunaverblijfplaatsen' + END + CLASS + NAME 'Broeihoop' + STYLE + SYMBOL 'bestreden' + SIZE 20 + END + END + END + LAYER + NAME 'Insectenhotel' + GROUP 'faunaverblijfplaatsen' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunaverblijfplaatsen_v1 where type = 'Insectenhotel') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Insectenhotel' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunaverblijfplaatsen' + END + CLASS + NAME 'Insectenhotel' + STYLE + SYMBOL 'niet_aanwezig' + SIZE 20 + END + END + END + LAYER + NAME 'Ooievaarsnest' + GROUP 'faunaverblijfplaatsen' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunaverblijfplaatsen_v1 where type = 'Ooievaarsnest') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Ooievaarsnest' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunaverblijfplaatsen' + END + CLASS + NAME 'Ooievaarsnest' + STYLE + SYMBOL 'niet_bereikbaar' + SIZE 20 + END + END + END + LAYER + NAME 'Vleermuiskast' + GROUP 'faunaverblijfplaatsen' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunaverblijfplaatsen_v1 where type = 'Vleermuiskast') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Vleermuiskast' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunaverblijfplaatsen' + END + CLASS + NAME 'Vleermuiskast' + STYLE + SYMBOL 'aanwezig_standaard' + SIZE 20 + END + END + END + LAYER + NAME 'Vleermuiskelder' + GROUP 'faunaverblijfplaatsen' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunaverblijfplaatsen_v1 where type = 'Vleermuiskelder') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Vleermuiskelder' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunaverblijfplaatsen' + END + CLASS + NAME 'Vleermuiskelder' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Vleermuistoren' + GROUP 'faunaverblijfplaatsen' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunaverblijfplaatsen_v1 where type = 'Vleermuistoren') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Vleermuistoren' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunaverblijfplaatsen' + END + CLASS + NAME 'Vleermuistoren' + STYLE + SYMBOL 'aanwezig_standaard' + SIZE 20 + END + END + END + LAYER + NAME 'Winterverblijf' + GROUP 'faunaverblijfplaatsen' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunaverblijfplaatsen_v1 where type = 'Winterverblijf') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Winterverblijf' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunaverblijfplaatsen' + END + CLASS + NAME 'Winterverblijf' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Eekhoornbrug' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Eekhoornbrug') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Eekhoornbrug' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Eekhoornbrug' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Faunaduiker' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Faunaduiker') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Faunaduiker' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Faunaduiker' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Faunagoot' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Faunagoot') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Faunagoot' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Faunagoot' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Faunapassage' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Faunapassage') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Faunapassage' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Faunapassage' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Faunarichel' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Faunarichel') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Faunarichel' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Faunarichel' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Faunatunnel' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Faunatunnel') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Faunatunnel' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Faunatunnel' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Faunauittreedplaats' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Faunauittreedplaats') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Faunauittreedplaats' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Faunauittreedplaats' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Faunawand' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Faunawand') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Faunawand' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Faunawand' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Keienwal' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Keienwal') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Keienwal' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Keienwal' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Stobbenwal' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Stobbenwal') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Stobbenwal' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Stobbenwal' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Vispassage' + GROUP 'faunavoorziening' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = 'Vispassage') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Vispassage' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Faunavoorziening' + END + CLASS + NAME 'Vispassage' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Amfibieenscherm' + GROUP 'hekken' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM objectenopenbareruimte_hekken_v1 where type = 'Amfibieënscherm') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Amfibienscherm' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Hekken' + END + CLASS + NAME 'Amfibieenscherm' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Faunaraster' + GROUP 'hekken' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM objectenopenbareruimte_hekken_v1 where type = 'Faunaraster') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Faunaraster' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Hekken' + END + CLASS + NAME 'Faunaraster' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Wildrooster' + GROUP 'wildroosters' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie_punt FROM (SELECT * FROM public.objectenopenbareruimte_roosters_v1 where type = 'Wildrooster') AS sub USING srid=28992 USING UNIQUE id" + TYPE POINT + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Wildrooster' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Wildroosters' + END + CLASS + NAME 'Wildrooster' + STYLE + SYMBOL 'preventief' + SIZE 20 + END + END + END + LAYER + NAME 'Poel' + GROUP 'poelen' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA "geometrie FROM (SELECT * FROM public.objectenopenbareruimte_waterobjecten_v1 where type_gedetailleerd = 'Poel') AS sub USING srid=28992 USING UNIQUE id" + TYPE POLYGON + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Poel' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Poelen' + END + CLASS + NAME 'Poel' + STYLE + COLOR '#FF9100' + OPACITY 20 + END + STYLE + OUTLINECOLOR '#FF9100' + WIDTH 2 + END + END + END + LAYER + NAME 'Verbindingszone' + GROUP 'ecologische_gebieden' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA 'geometrie FROM (SELECT * FROM public.ecologie_verbindingszones_v3) AS sub USING srid=28992 USING UNIQUE id' + TYPE POLYGON + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Verbindingszone' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Ecologische gebieden' + END + CLASS + NAME 'Verbindingszone' + STYLE + COLOR '#FF9100' + OPACITY 20 + END + STYLE + OUTLINECOLOR '#FF9100' + WIDTH 2 + END + END + END + LAYER + NAME 'Kerngebied' + GROUP 'ecologische_gebieden' + PROJECTION + 'init=epsg:28992' + END + INCLUDE 'connection/dataservices.inc' + DATA 'geometrie FROM (SELECT * FROM public.ecologie_kerngebieden_v3) AS sub USING srid=28992 USING UNIQUE id' + TYPE POLYGON + METADATA + 'wfs_enable_request' '!*' + 'ows_title' 'Kerngebied' + 'wms_enable_request' '*' + 'ows_abstract' 'Ecologie amsterdam' + 'wms_format' 'image/png' + 'ows_group_title' 'Ecologische gebieden' + END + CLASS + NAME 'Kerngebied' + STYLE + COLOR '#FF9100' + OPACITY 20 + END + STYLE + OUTLINECOLOR '#FF9100' + WIDTH 2 + END + END + END +END diff --git a/gen_ecologie.py b/gen_ecologie.py new file mode 100644 index 00000000..1fed95e2 --- /dev/null +++ b/gen_ecologie.py @@ -0,0 +1,169 @@ +#!/usr/bin/env python + +# Generates the ziektenplagenexotengroen mapfile. + +from generate import block, header, p, q +import re + +def slugify(s: str) -> str: + # TODO would be cleaner to convert to NFD, then remove combining chars. + s = s.replace("ë", "e") + return re.sub(r"[^A-Za-z]+", "_", s).strip("_").lower() + +layers = [ + ("Faunameubilair","Loopplank", "Loopplank", "aanwezig_laag"), + ("Faunameubilair","Vogelhut", "Vogelhut", "deels_bestreden"), + ("Faunameubilair","Vogelkijktoren", "Vogelkijktoren", "niet_in_beheer"), + ("Faunameubilair","Vogelscherm", "Vogelscherm", "aanwezig_urgent"), + ("Faunaverblijfplaatsen","Bijenwand", "Bijenwand", "gemeld"), + ("Faunaverblijfplaatsen","Broeihoop", "Broeihoop", "bestreden"), + ("Faunaverblijfplaatsen","Insectenhotel", "Insectenhotel", "niet_aanwezig"), + ("Faunaverblijfplaatsen","Ooievaarsnest", "Ooievaarsnest", "niet_bereikbaar"), + ("Faunaverblijfplaatsen","Vleermuiskast", "Vleermuiskast", "aanwezig_standaard"), + ("Faunaverblijfplaatsen","Vleermuiskelder", "Vleermuiskelder", "preventief"), + ("Faunaverblijfplaatsen","Vleermuistoren", "Vleermuistoren", "aanwezig_standaard"), + ("Faunaverblijfplaatsen","Winterverblijf", "Winterverblijf", "preventief"), + ("Faunavoorziening","Eekhoornbrug", "Eekhoornbrug", "preventief"), + ("Faunavoorziening","Faunaduiker", "Faunaduiker", "preventief"), + ("Faunavoorziening","Faunagoot", "Faunagoot", "preventief"), + ("Faunavoorziening","Faunapassage", "Faunapassage", "preventief"), + ("Faunavoorziening","Faunarichel", "Faunarichel", "preventief"), + ("Faunavoorziening","Faunatunnel", "Faunatunnel", "preventief"), + ("Faunavoorziening","Faunauittreedplaats", "Faunauittreedplaats", "preventief"), + ("Faunavoorziening","Faunawand", "Faunawand", "preventief"), + ("Faunavoorziening","Keienwal", "Keienwal", "preventief"), + ("Faunavoorziening","Stobbenwal", "Stobbenwal", "preventief"), + ("Faunavoorziening","Vispassage", "Vispassage", "preventief"), + ("Hekken","Amfibieenscherm", "Amfibieënscherm", "preventief"), + ("Hekken","Faunaraster", "Faunaraster", "preventief"), + ("Wildroosters","Wildrooster", "Wildrooster", "preventief"), + ("Poelen","Poel", "Poel", "#FF9100"), + ("Ecologische gebieden","Verbindingszone", "Verbindingszone", "#FF9100"), + ("Ecologische gebieden","Kerngebied", "Kerngebied", "#FF9100") + ] + + +header("Bor") + +with block("MAP"): + p("NAME", "ecologie") + p("INCLUDE", "header.inc") + + with block("WEB"): + with block("METADATA"): + q("team", "BOR") + q("ows_title", "Ecologie") + q( + "ows_abstract", + "Deze collectie bevat ecologische voorzieningen binnen gemeente Amsterdam. Dit zijn zowel ecologische objecten als ecologische gebieden. De ecologische objecten, zoals eekhoornbruggen en vispassages, zijn bedoeld voor dieren in de stad en zorgen ervoor dat zij zich veilig kunnen verplaatsen tussen verschillende leefgebieden. De ecologische gebieden zijn gericht op het vergroten van de biodiversiteit en zijn onderverdeeld in kerngebieden en verbindingszones. Kerngebieden bieden geschikte omstandigheden voor de permanente vestiging van soorten. Verbindingszones bieden geschikte omstandigheden voor tijdelijk verblijf, verbinden de kerngebieden met elkaar waardoor het leefgebied vergroot", + ) + q("wms_extent", "100000 450000 150000 500000") + +# dit stuk is voor de eikenprogressierups + for group, name, filter, icon in layers: + with block("LAYER"): + p("NAME", name) + p("GROUP", slugify(group)) + with block("PROJECTION"): + q("init=epsg:28992") + + p("INCLUDE", "connection/dataservices.inc") + + #niet echt trots op deze if statements, door deze aanpak is het heel makkelijk aanpasbaar, maar alle functies zijn anders. + if group == "Faunameubilair": + p( + "DATA", + "geometrie_punt FROM" + f" (SELECT * FROM public.ecologie_faunameubilair_v1 where type = '{filter}') AS sub" + " USING srid=28992 USING UNIQUE id" + ) + p("TYPE POINT") + type = 'point' + if group == "Faunaverblijfplaatsen": + p( + "DATA", + "geometrie_punt FROM" + f" (SELECT * FROM public.ecologie_faunaverblijfplaatsen_v1 where type = '{filter}') AS sub" + " USING srid=28992 USING UNIQUE id" + ) + p("TYPE POINT") + type = 'point' + if group == "Faunavoorziening": + p( + "DATA", + "geometrie_punt FROM" + f" (SELECT * FROM public.ecologie_faunavoorzieningen_v1 where type = '{filter}') AS sub" + " USING srid=28992 USING UNIQUE id" + ) + p("TYPE POINT") + type = 'point' + if group == "Hekken": + p( + "DATA", + "geometrie_punt FROM" + f" (SELECT * FROM objectenopenbareruimte_hekken_v1 where type = '{filter}') AS sub" + " USING srid=28992 USING UNIQUE id" + ) + p("TYPE POINT") + type = 'point' + if group == "Wildroosters": + p( + "DATA", + "geometrie_punt FROM" + f" (SELECT * FROM public.objectenopenbareruimte_roosters_v1 where type = '{filter}') AS sub" + " USING srid=28992 USING UNIQUE id" + ) + p("TYPE POINT") + type = 'point' + if group == "Poelen": + p( + "DATA", + "geometrie FROM" + f" (SELECT * FROM public.objectenopenbareruimte_waterobjecten_v1 where type_gedetailleerd = '{filter}') AS sub" + " USING srid=28992 USING UNIQUE id" + ) + p("TYPE POLYGON") + type = 'polygon' + if group == "Ecologische gebieden": + if name == 'Verbindingszone': + p( + "DATA", + "geometrie FROM" + f" (SELECT * FROM public.ecologie_verbindingszones_v3) AS sub" + " USING srid=28992 USING UNIQUE id" + ) + if name == 'Kerngebied': + p( + "DATA", + "geometrie FROM" + f" (SELECT * FROM public.ecologie_kerngebieden_v3) AS sub" + " USING srid=28992 USING UNIQUE id" + ) + p("TYPE POLYGON") + type = 'polygon' + + with block("METADATA"): + q("wfs_enable_request", "!*") + q("ows_title", name) + q("wms_enable_request", "*") + q("ows_abstract", "Ecologie amsterdam") + q("wms_format", "image/png") + q("ows_group_title", group) + + + with block("CLASS"): + p("NAME", name) + + if type == 'polygon': + with block("STYLE"): + p("COLOR", icon) + p("OPACITY", 20) + + with block("STYLE"): + p("OUTLINECOLOR ", icon) + p("WIDTH ", 2) + + else: + with block("STYLE"): + p("SYMBOL", icon) + p("SIZE", 20)