User:Hugi99/Workbench/uMap Feuerwehrstandorte und Hydranten

From OpenStreetMap Wiki
Jump to navigation Jump to search

The beef

Ziel ist eine interaktive uMap Karte mit Feuerwehrstandorten und Hydranten in der Schweiz dynamisch zu generieren.

Im Bedarfsfall können daraus durch Anpassung des Codes weitere Karten für Kantone / Gemeinden generiert werden oder die Daten können für umfassende Emergency Karten genutzt werden.

Bereits bekannte OSM Hydranten/Feuerwehr Karten

Schrittweise Anleitung

Grundlage

Using Overpass with uMap - Step-by-step tutorial - source: mappa-mercia.org (quite cool Community initiative)


Anleitung für uMap mit zwei Ebenen - Ebene 1 amenity=fire_station und Ebene 2 emergency=fire_hydrant

Für Hydranten wird nur das Schlüssel/Wert (key/value) Paar emergency=fire_hydrant verwendet. Das Paar amenity=fire_hydrant wird nicht verwendet. - taginfo: Verwendung weltweit 351'150 emergency=fire_hydrant und 12'021 amenity=fire_hydrant per 2015-05-01 - Im Vergleich dazu die Schweiz am selben Datum: 13'457 emergency=fire_hydrant vs 402 amenity=fire_hydrant emergency=fire_hydrant. Alle 402 sind doppelt getaggt, nur amenity=fire_hydrant ist nicht vorhanden.

1. Online Werkezug OverPass Turbo Swiss edition aufrufen oder alternativ Overpass Turbo. - Quellen: overpass-turbo.osm.ch oder overpass-turbo.eu

2.1. Wizard anklicken und im Pop-up Fenster amenity=fire_station eingeben. Damit wird eine erste Abfrage im Gebiet des Browser Fensters gemacht und gleichzeitig ein Teil des nachfolgenden Codes für weitere Abfragen erzeugt. Dort die Linien node, way und relation kopieren und gleich darunter einfügen und "amenity"="fire_station" durch "emergency"="fire_station" ersetzen; somit wird die Abrage für beide Schlüssel (amenity=fire_station und emergency=fire_station) auf einmal gemacht.

Ausgabe im Teilfenster links im Browser:

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“amenity=fire_station” and "emergency"="fire_station"
*/
[out:json][timeout:25];
// gather results
(
  // query part for: “amenity=fire_station” and "emergency"="fire_station"
  node["amenity"="fire_station"]({{bbox}});
  way["amenity"="fire_station"]({{bbox}});
  relation["amenity"="fire_station"]({{bbox}});
  node["emergency"="fire_station"]({{bbox}});
  way["emergency"="fire_station"]({{bbox}});
  relation["emergency"="fire_station"]({{bbox}});
);
// print results
out center;

2.3. Export anklicken und im Pop-up Fenster Abfarage (engl.: Query) wählen und dort Nach OverpassQL konvertieren (kompakte Variante) (engl.: convert to (compact)) anklicken.

2.4. Der, durch anklicken von von Nach OverpassQL konvertieren (kompakte Variante) (engl.: convert to (compact)) erzeugte Link zeigt unter Your query in compact Overpass QL::

https://overpass.osm.ch/api/interpreter?data=%5Bout%3Ajson%5D%5Btimeout%3A25%5D%3B%28node%5B%22amenity%22%3D%22fire%5Fstation%22%5D%2845%2E583289756006316%2C5%2E756835937499999%2C48%2E07807894349862%2C10%2E997314453125%29%3Bway%5B%22amenity%22%3D%22fire%5Fstation%22%5D%2845%2E583289756006316%2C5%2E756835937499999%2C48%2E07807894349862%2C10%2E997314453125%29%3Brelation%5B%22amenity%22%3D%22fire%5Fstation%22%5D%2845%2E583289756006316%2C5%2E756835937499999%2C48%2E07807894349862%2C10%2E997314453125%29%3Bnode%5B%22emergency%22%3D%22fire%5Fstation%22%5D%2845%2E583289756006316%2C5%2E756835937499999%2C48%2E07807894349862%2C10%2E997314453125%29%3Bway%5B%22emergency%22%3D%22fire%5Fstation%22%5D%2845%2E583289756006316%2C5%2E756835937499999%2C48%2E07807894349862%2C10%2E997314453125%29%3Brelation%5B%22emergency%22%3D%22fire%5Fstation%22%5D%2845%2E583289756006316%2C5%2E756835937499999%2C48%2E07807894349862%2C10%2E997314453125%29%3B%29%3Bout%20center%3B%0A

dieser Link wird als Text:

[out:json][timeout:25];(node["amenity"="fire_station"](45.583289756006316,5.756835937499999,48.07807894349862,10.997314453125);way["amenity"="fire_station"]
(45.583289756006316,5.756835937499999,48.07807894349862,10.997314453125);relation["amenity"="fire_station"]
(45.583289756006316,5.756835937499999,48.07807894349862,10.997314453125);node["emergency"="fire_station"]
(45.583289756006316,5.756835937499999,48.07807894349862,10.997314453125);way["emergency"="fire_station"]
(45.583289756006316,5.756835937499999,48.07807894349862,10.997314453125);relation["emergency"="fire_station"](45.583289756006316,5.756835937499999,48.07807894349862,10.997314453125););out center;

in einen beliebigen Editor zur weiteren Verarbeitung kopiert. - Achtung: Am Schluss muss out center und nicht out body stehen, da sonst relationen (z.B. Gebäude, die als Feuerwehrmagazin dienen) nicht gerendert / auf der Karte dargestellt werden.

2.5.

https://overpass.osm.ch/api/interpreter?data=[out:json][timeout:25];(node["amenity"="fire_station"]({south},{west},{north},{east});
way["amenity"="fire_station"]({south},{west},{north},{east});
relation["amenity"="fire_station"]({south},{west},{north},{east});
node["emergency"="fire_station"]({south},{west},{north},{east});
way["emergency"="fire_station"]({south},{west},{north},{east});
relation["emergency"="fire_station"]({south},{west},{north},{east}););out center;


3.1 Wizard anklicken und im Pop-up Fenster emergency=fire_hydrant eingeben. Damit wird eine erste Abfrage im Gebiet des Brower Fensters gemacht und gleichzeitig der nachfolgende Code für weitere Abragen für erzeugt

Ausgabe im Teilfenster links im Browser:

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“emergency=fire_hydrant”
*/
[out:json][timeout:25];
// gather results
(
  // query part for: “emergency=fire_hydrant”
 node["emergency"="fire_hydrant"]({{bbox}});
 way["emergency"="fire_hydrant"]({{bbox}});
 relation["emergency"="fire_hydrant"]({{bbox}});
);
// print results
out center;

QA

Im Fall von Hydranten mit gleicher Nummer in uMap, kann man sich diese in OverPass Turbo gleichzeitig anzeigen lassen. Beispiel:

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“emergency=fire_hydrant”
*/
[out:json][timeout:25];
// gather results
(
  // query part for: “emergency=fire_hydrant”
 node["emergency"="fire_hydrant"]["ref"="15"]({{bbox}});
);
// print results
out center;

Anschliessend vor Ort kontrollieren und in osm.org korrigieren.


Liste Betreiber

Betreiber der Hydranten (operator) in den Gemeinden in und um Bern im Uhrzeigersinn.

key=operator key=contact:phone key=website Gemeinde / Anmerkungen
Energie Wasser Bern +41 31 3213111 http://www.ewb.ch Bern - Firma Energie Wasser Bern gemäss Handelsregister. Online HR-Auszug, Zugang auch via zefix.ch
Gemeinde Ostermundigen - Dienststelle Wasserversorgung +41 31 9301111 http://www.ostermundigen.ch/de/verwaltung/tiefbau-und-betriebe/betriebe/wasserversorgung/ Ostermundigen -
Muri bei Bern -
Köniz -
Neuenegg -
Mühleberg -
Frauenkappelen -
Wohlen bei Bern -
Kirchlindach -
Bremgarten bei Bern -
Zollikofen -
Ittigen -

Weitere Betreiber

key=operator key=contact:phone key=website Gemeinde / Anmerkungen
Energie Thun AG +41 33 2252200 http://www.energiethun.ch/de/Produkte/Wasser Thun -

Auszeichnung je Hydrant

Details hier


Geographische Eingrenzung

Die Karte kann auch nur für eine Gemeinde oder Kanton (oder die Schweiz) gemacht werden. Folgendes Beispiel ist für die Gemeinde Bern.

Gemeinde Bern

Für Feuerwehstützpunkte:

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“amenity=fire_station” and "emergency"="fire_station" for the Community of Bern
*/
[out:json][timeout:25];
// gather results
(
  // query part for: “amenity=fire_station” and "emergency"="fire_station"
  area[name="Bern"][admin_level=8][boundary=administrative]->.gemeinde;
  node(area.gemeinde)
  ["amenity"="fire_station"]({{bbox}});
  area[name="Bern"][admin_level=8][boundary=administrative]->.gemeinde;
  way(area.gemeinde)
  ["amenity"="fire_station"]({{bbox}});
  area[name="Bern"][admin_level=8][boundary=administrative]->.gemeinde;
  relation(area.gemeinde)
  ["amenity"="fire_station"]({{bbox}});
  area[name="Bern"][admin_level=8][boundary=administrative]->.gemeinde;
  node(area.gemeinde)
  ["emergency"="fire_station"]({{bbox}});
  area[name="Bern"][admin_level=8][boundary=administrative]->.gemeinde;
  way(area.gemeinde)
  ["emergency"="fire_station"]({{bbox}});
  area[name="Bern"][admin_level=8][boundary=administrative]->.gemeinde;
  relation(area.gemeinde)
  ["emergency"="fire_station"]({{bbox}});
);
// print results
out center;

Für Hydranten:

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“emergency"="fire_hydrant" for the Community of Bern
*/
[out:json][timeout:25];
// gather results
(
  // query part for: “emergency"="fire_hydrant"
  area[name="Bern"][admin_level=8][boundary=administrative]->.gemeinde;
  node(area.gemeinde)
  ["emergency"="fire_hydrant"]({{bbox}});
);
// print results
out center;

Land Schweiz

Für Feuerwehstützpunkte:

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“amenity=fire_station” and "emergency"="fire_station" for the Country of Switzerland
*/
[out:json][timeout:25];
// gather results
(
  // query part for: “amenity=fire_station” and "emergency"="fire_station"
  area[name="Schweiz, Suisse, Svizzera, Svizra"][admin_level=2][boundary=administrative]->.land;
  node(area.land)
  ["amenity"="fire_station"]({{bbox}});
  area[name="Schweiz, Suisse, Svizzera, Svizra"][admin_level=2][boundary=administrative]->.land;
  way(area.land)
  ["amenity"="fire_station"]({{bbox}});
  area[name="Schweiz, Suisse, Svizzera, Svizra"][admin_level=2][boundary=administrative]->.land;
  relation(area.land)
  ["amenity"="fire_station"]({{bbox}});
  area[name="Schweiz, Suisse, Svizzera, Svizra"][admin_level=2][boundary=administrative]->.land;
  node(area.land)
  ["emergency"="fire_station"]({{bbox}});
  area[name="Schweiz, Suisse, Svizzera, Svizra"][admin_level=2][boundary=administrative]->.land;
  way(area.land)
  ["emergency"="fire_station"]({{bbox}});
  area[name="Schweiz, Suisse, Svizzera, Svizra"][admin_level=2][boundary=administrative]->.land;
  relation(area.land)
  ["emergency"="fire_station"]({{bbox}});
);
// print results
out center;

Für Hydranten:

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“emergency"="fire_hydrant" for the Country of Switzerland
*/
[out:json][timeout:25];
// gather results
(
  // query part for: “emergency"="fire_hydrant"
  area[name="Schweiz, Suisse, Svizzera, Svizra"][admin_level=2][boundary=administrative]->.land;
  node(area.land)
  ["emergency"="fire_hydrant"]({{bbox}});
);
// print results
out center;


uMap Hilfen

Differenzen suchen

  • Alle Hydranten ohne ref Tag in der Gemeinde Bern
 /*
 This has been generated by the overpass-turbo wizard.
 The original search was:
 “emergency"="fire_hydrant" without "ref=" for the Community of Bern
 */
 [out:json][timeout:25];
 // gather results
 (
   // query part for: “emergency"="fire_hydrant"
   area[name="Bern"][admin_level=8][boundary=administrative]->.gemeinde;
   node(area.gemeinde)
   ["emergency"="fire_hydrant"]["ref"!~".*"]({{bbox}});
 );
 // print results
 out center;