Ich benutze für die Darstellung meiner Inlineskatekarte umap.

Ich habe hier auf der Internetseite bereits beschrieben, wie man Fotos in umap elegant integrieren kann.

In diesem Beitrage erläutere ich, wie man öffentliche POI’s (Points of Interest) in umap integrieren kann.

POI’s sind z.B. Supermärkte, Parkplätze, Eisenbahnstationen, Gaststätten, Hotels u.v.m.

Man kann sich openpoi.org diverse POI’s nach verschiedenen Kategorien anzeigen lassen. Diese stammen aus dem Netzwerk von Open Street Map (OSM).

Die Anleitung basiert auf folgenden Informationen:

https://wiki.openstreetmap.org/wiki/DE:UMap/overpass

http://www.mappa-mercia.org/2014/09/creating-an-always-up-to-date-map.html

Beispiel 1 – Supermärkte

Für Demonstrationszwecke habe ich eine neue umap-Seite veröffentlicht:

https://umap.openstreetmap.fr/de/map/pois_301289

Hier gibt es u.a. die Ebene „POI – Supermärkte“.

Diese Ebene zeigt alle Supermärkte an, die in der Datenbank von OSM enthalten sind. Allerdings erst ab einer Zoomstufe von 14. D.h., man muss etwas in die Karte hineinzoomen, bevor die POI’s erscheinen.

Man kann am Link erkennen, welche Zoomstufe gerade aktiv ist:

Bei diesem Beispiel sieht man, dass die Zoomstufe 14 aktiv ist und somit die Supermärkte auch angezeigt werden.

„Ausgelagerte Daten“ einrichten

Alle weiteren Einstellungen sind dem Bild zu entnehmen.

  • Format: osm (muss so eingestellt werden!)
  • Von Zoomstufe: Optional -> hier im Beispiel auf 14, ansonsten leer
  • Dynamisch: Ein (muss so eingestellt werden!)
  • Proxyanforderung: Ein (muss so eingestellt werden!)

Entscheidend ist die URL. Die variablen Teile dieses Links habe ich rot und fett markiert.

http://overpass-api.de/api/interpreter?data=[out:json][timeout:25];node["shop"="supermarket"]({south},{west},{north},{east});out;

Woher erfährt man wie die Attribute heißen, damit man tatsächlich Supermärkte angezeigt bekommt?

Ich habe diese Information von openpoimap.org übernommen. Hier ein Beispiel:

http://openpoimap.org/?map=food&zoom=14&lat=47.64484&lon=9.17238&layers=B00FFFFFFFFFFFFFTF

Klickt man dann auf das Symbol mit dem Einkaufswagen, erhält man die gewünschten Informationen. Hier sind auch noch andere Informationen enthalten (insofern diese angegeben wurden), wie z.B. die Öffnungszeiten des Supermarktes.

Möchte man, dass alle Supermärkte in der umap-Karte angezeigt werden, muss der Link folgendes enthalten, wie oben auch angezeigt: {south},{west},{north},{east}

Festlegen eines Symbols

Unter „Formeigenschaften“ legt man ein passendes Symbol fest. Ich habe mich für einen Einkaufswagen entschieden.

Einrichtung der Popup-Informationen

Ich habe hier zu Demonstrationszwecken mal alle möglichen Informationen angegeben:

  • # {name} – Der Name des POI’s bzw. des Supermarktes. Das #-Zeichen formatiert den Eintrag fett
  • {opening_hours} – Öffnungszeiten
  • {shop} – Die Art des Ladens, hier kommt als Ergebnis natürlich Supermarkt
  • {wheelchair} – Falls die Information zur Verfügung steht erscheint hier, ob der Laden geeignet für Rollstuhlfahrer ist mit Ergebnis yes oder no.
  • Link: https://www.openstreetmap.org/{id} –  Das ist der Link zur Originalseite des POI’s auf OSM.
  • {description} – Falls eine Beschreibung verfügbar ist, wird diese mit diesem Tag angezeigt.
  • Breitengrad: {lat}
  • Längengrad: {lon}
  • https://maps.google.com/?q={lat},{lon}Link zu Google Maps

Und hier nochmal komplett zum Mitschreiben:

# {name}
Öffnungszeiten: {opening_hours}
Art: {shop}
Barrierefrei?: {wheelchair}
Link: https://www.openstreetmap.org/{id}
{description}
Breitengrad: {lat}
Längengrad: {lon}
Google Maps:
https://maps.google.com/?q={lat},{lon}

Beispiel 2 – Eisenbahnstationen

Im zweiten Beispiel verwende ich zu Demonstrationszwecken andere Einstellungen. Und zwar soll das Gebiet in dem die POI’s der Eisenbahnstationen angezeigt werden, innerhalb eines Rahmens eingeschränkt werden.

Zudem gibt es keinen Zoomlevel ab dem die POI’s angezeigt werden.

Wie man das Gebiet einschränkt

Um das Gebiet einzuschränken braucht man insgesamt vier Koordinaten:

  • Den Breiten- und den Längengrad des ersten Eckpunktes
  • Den Breiten- und Längengrad des zweiten Eckpunktes

Entweder wählt man die Daten der blauen oder der grünen Ecken. Das ist egal. Anhand der gegenüberliegenden Eckpunkte wird ein Rechteck aufgespannt, welches das Gebiet der POI’s eingrenzt, sodass alle außerhalb des Rechtecks liegende POI’s nicht in umap angezeigt werden.

Die Daten holt man sich z.B. aus Google Maps. Man klickt in Google Maps mit der rechten Maustaste auf den ersten Eckpunkt, den man setzen möchte und wählt dann „Was ist hier?“ und erhält als Ergebnis den Breiten- und den Längengrad des Punktes.

Breitengrad: 50.226644 (Nördliche Begrenzung)

Längengrad: 8.414319 (Westliche Begrenzung)

Dann klickt man den zweiten Eckpunkt an und sucht sich die Daten raus.

Breitengrad: 50.044787 (Südliche Begrenzung)

Längengrad: 8.913849 (Östliche Begrenzung)

Nun muss man bei dem Einsetzen der Daten in den Link auf die richtige Reihenfolge achten, wie es hier exemplarisch dargestellt ist:

http://overpass-api.de/api/interpreter?data=[out:json][timeout:25];node["railway"="station"](Süd,West,Nord,Ost);out;

Die URL, die nun unter „ausgelagerte Daten“ einzustellen ist, sieht dann wie folgt aus:

http://overpass-api.de/api/interpreter?data=[out:json][timeout:25];node["railway"="station"](50.044787,8.414319,50.226644,8.913849);out;

Das war es auch schon!

Print Friendly, PDF & Email
0

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.