DE:Overpass API/Sparse Editing

From OpenStreetMap Wiki
Jump to navigation Jump to search
Overpass API logo.svg
edit
Overpass API · Referenz der Sprache · Leitfaden der Sprache · Technical terms · Bereiche · Beispielabfragen · Sparse Editing · Permanent ID · FAQ · mehr (Deutsch) · Web site
Servers status · Versions · Development · Technical design · Installation · XAPI compatibility layer · Public transport sketch lines · Anwendungen · Source code and issues
Overpass turbo · Wizard · Overpass turbo shortcuts · MapCSS stylesheets · Export to GeoJSON · mehr (Deutsch) · Development · Source code and issues · Web site
Overpass Ultra · Overpass Ultra extensions · MapLibre stylesheets ·mehr (Deutsch) · Source code and issues · Web site

Wenn die OSM-Daten in einem Gebiet eine hohe Dichte erreicht haben, ist es mitunter mühselig, einfache Edits vorzunehmen. Im Zusammenspiel von JOSM und der Overpass API gibt es nun Abhilfe: Das Plugin mirrored_download vereinfacht den richtigen Download. Das Arbeiten ähnelt dann stärker dem Konzept der "Layer" in klassischen GIS-Systemen. Vorsicht: So zu editieren erfordert mehr Sorgfalt als üblich. Siehe den nächsten Abschnitt.

Wir wollen als Beispiel überprüfen, welche Geschäfte in Bonn bereits ein Wheelmap-Tag haben und es ggf. ergänzen.

Dazu installieren wir in JOSM das Plugin "mirrored_download" sowie als Hintergrund die Standard-OSM-Karte als Schwarz-Weiß und laden dann eine Auswahl an Daten herunter.

NEU: Video von der SotM EU 2014: Sparse Editing (in englisch)


Warnhinweise

Diese Art zu editieren erfordert mehr Sorgfalt als üblich, da man durch Ändern einer Geometrie ein nicht-sichtbares Objekt überdecken könnte. Ebenso können Nodes auch noch zu benachbarten Wegen gehören; diese Problem tritt sonst nur am Rand der Bounding Box von JOSM auf. Lösche daher weder Nodes noch verschiebe sie. Das Ändern von Tags und Splitten von Wegen ist dagegen beides möglich, was zahlreiche Editier-Szenarien abdeckt.

Das Plugin mirrored_download installieren

Dieser Schritt muss wie der folgende Schritt nur einmal ausgeführt werden, da JOSM die Einstellungen und heruntergeladenen Plugins lokal speichert.

Nach dem Start von JOSM rufe "Bearbeiten > Einstellungen ..." auf.

Wähle den Stecker in der Leiste links.

Wähle dann "Liste herunterladen ...".

Gib unter Suche die Buchstaben "mirr" ein und wähle dann den einzigen verbleibenden Eintrag "mirrored_download".

"OK". "Neu starten" und den Neustart abwarten.

Den Hintergrund installieren

Rufe "Bearbeiten > Einstellungen ..." auf.

Wähle "TMS/WMS", den untersten Eintrag in der Leiste links.

Wähle unter "Verfügbare Standardeinträge" den Eintrag "OpenStreetMap (schwarz/weiß)" aus und klicke auf die Schaltfläche "Aktivieren" unter der Liste, dann "OK".

Wähle dann "Hintergrund > OpenStreetMap (Mapnik schwarz/weiß)". Es erscheint ein helleres Grau im Hintergrund. Die eigentliche Karte erscheint, sobald wir im nächsten Schritt Koordinaten gewählt haben.

Daten herunterladen

Rufe "Datei > Mittels Overpass-API laden" auf.

Wähle in der "Interaktive Karte" das gewünschte Gebiet aus. Das Mausrad zoomt heraus und hinein, und mit gedrückter rechter Maustaste kann die Karte bewegt werden. Mit gedrückter linker Maustaste wird ein Bereich markiert.

Gib unter "Overpass-Abfrage" eine Abfrage ein. In unserem Beispiel verwenden wir:

( node[shop];
  way[shop];>;
  rel[shop];>;);
(._;rel(bn););
(._;rel(bw););
(._;rel(br););
out meta;

Die Syntax wird weiter unten erklärt. Die Bounding Box wird automatisch bei allen Abfragen ergänzt. Wichtig ist, dass wir insbesondere Relationen mit herunterladen, damit JOSM diese beim Editieren anpassen kann.

Klicke "Daten herunterladen" an und warte ab, bis der Download abgeschlossen ist. Bei Testen hat dies für Bonn etwa 5-15 Sekunden gedauert.

Josm shops in bonn.png

Denke beim Editieren an die Warnhinweise. Oder benutze es als bequeme, benutzerdefinierte Ansicht für OSM-Objekte ausgewählter Kategorien.

Mehr nützliche Abfragen

Das gesamte Straßennetz:

( way[highway];>;);
(._;rel(bn););
(._;rel(bw););
(._;rel(br););
out meta;

Alle ÖPNV-relevanten Daten:

( way[highway];>;
  way[railway];>;
  node[public_transport];
  node[highway=bus_stop];);
(._;rel(bn););
(._;rel(bw););
(._;rel(br););
out meta;

Die Technik dahinter

Benutzt wird das neue Feature der Global Bbox für die Overpass API: dies ermöglicht, die von JOSM gelieferte Bounding Box automatisch auf alle Teilabfragen innerhalb der Abfrage auszudehnen.

Der OSM-Hintergrund kommt tatsächlich direkt vom OSM-Tile-Server, so dass kein Bildversatz auftreten kann.

Der hintere Teil aller Abfragen

(._;rel(bn););
(._;rel(bw););
(._;rel(br););

stellt sicher, dass auch alle Relationen gefunden werden, die auf die gewählten Objekte verweisen. Das verringert das Konfliktpotential. Es bleiben die unter Warnhinweise aufgezählten Punkte. Die Abfragen würden auch ohne diese Zeilen funktionieren, solange man nicht editiert.

Es muss osm meta gewählt werden, da JOSM zur Konfliktvermeidung darauf besteht, zu den Objekten auch die Versionsdaten herunterzuladen.

Reproduzierbarkeit

Getestet ist das Beispiel mit der derzeit aktuellen JOSM-Tested-Version 6060 und Plugin-Version 29753.