You are not logged in.

#1 2012-07-01 13:16:01

softcake
Member
Registered: 2009-05-01
Posts: 214

Overpass API für dummies

Hallo,

möchte meine Kartendaten über die Overpass API herunterladen. Leider mag mir das nicht so recht gelingen. Die Datenmenge des downloads besitzt gerade mal ein Zehntel des Volumens, welches ich eigentlich erwarte. Es lässt sich damit auch keine Karte generieren (mkgmap). Splitter generiert gerade mal eine Kachel, anstatt wie gewohnt sechs.

Mein Ausschnitt hat die Dimensionen left=10.6 bottom=49.2 right=12.9 top=50.7, also gestalte ich die Abfrage an die Overpass API folgendermaßen:

(
  node(49.2,10.6,50.7,12.9);
  rel(bn)->.x;
  way(bn);
  rel(bw);
);
out meta;

Mein Ausschnitt hat normalerweise ca. 1.8GByte. Die Overpass-Daten kommen gerade mal auf 160MByte.

Was mache ich falsch?

Grüße, Thomas

Offline

#2 2012-07-01 13:18:14

aighes
Member
From: Shanghai
Registered: 2009-03-29
Posts: 5,313
Website

Re: Overpass API für dummies

roll

Schonmal von download.geofabrik.de gehört?


Viele Grüße
Henning, developer of RadReiseKarte

Offline

#3 2012-07-01 13:35:58

viw
Member
Registered: 2010-05-15
Posts: 2,623

Re: Overpass API für dummies

softcake wrote:

Mein Ausschnitt hat normalerweise ca. 1.8GByte. Die Overpass-Daten kommen gerade mal auf 160MByte.

Was mache ich falsch?

Grüße, Thomas

Als erstes ist die Datenmenge das Problem. Denn die 1,8 GB hat die Overpassapi nicht mal eben für dich frei. Das zweite Problem ist wie gesagt wenn du alles für deine Karte runterladen möchtestet, dann nimm statt dessen Extrakte und bearbeite filtere diese entsprechend. Das entlastet nicht nur die Overpassapi erheblich, sondern auch deine Nerven.

Offline

#4 2012-07-01 14:37:18

softcake
Member
Registered: 2009-05-01
Posts: 214

Re: Overpass API für dummies

aighes wrote:

roll

Schonmal von download.geofabrik.de gehört?

Ja. Das ist leider nur praktisch für Leute, die zufällig nicht an der Bundesgrenze wohnen. Hole aktuell meine Daten über http://140.78.94.22/osm/ (Germany+50). Wollte mir halt nur schnell mal aktuelle Daten saugen.

Thomas

Offline

#5 2012-07-01 14:39:03

softcake
Member
Registered: 2009-05-01
Posts: 214

Re: Overpass API für dummies

viw wrote:
softcake wrote:

Mein Ausschnitt hat normalerweise ca. 1.8GByte. Die Overpass-Daten kommen gerade mal auf 160MByte.

Was mache ich falsch?

Grüße, Thomas

Als erstes ist die Datenmenge das Problem. Denn die 1,8 GB hat die Overpassapi nicht mal eben für dich frei. Das zweite Problem ist wie gesagt wenn du alles für deine Karte runterladen möchtestet, dann nimm statt dessen Extrakte und bearbeite filtere diese entsprechend. Das entlastet nicht nur die Overpassapi erheblich, sondern auch deine Nerven.

Ok, also weiterhin Germany+50. Funktioniert ja auch gut. Hätte halt schnell mal aktuelle Daten gebraucht.

Grüße, Thomas

Offline

#6 2012-07-01 16:29:29

aighes
Member
From: Shanghai
Registered: 2009-03-29
Posts: 5,313
Website

Re: Overpass API für dummies

Es gibt dort auch Europa und wenn dir das jedesmal zuviel ist, dann kann man die Datei auch updaten...


Viele Grüße
Henning, developer of RadReiseKarte

Offline

#7 2012-07-01 21:18:47

Lübeck
Member
Registered: 2009-02-17
Posts: 2,748

Re: Overpass API für dummies

Hi!

Kurz gefragt wie kann man updaten ?

Ich dachte das geht nur beim Planet File ?!?

Gruß Jan


Redmi Note 9 Pro  mit Android 11 PC: Win10

Offline

#8 2012-07-01 21:29:08

aighes
Member
From: Shanghai
Registered: 2009-03-29
Posts: 5,313
Website

Re: Overpass API für dummies

Ne...das geht mit kleineren Extrakten ganz ähnlich. Es gibt allerdings Probleme, wenn ein Objekt von außen in das Extrakt reingeschoben wird. Das Objekt sollte dann fehlen. Aber wenn du Europe aktualisierst und dann D+50 ausschneidest sollte man das egtl. vernachlässigen können. Auf der anderen Seite sehe ich egtl. auch nicht so das Problem, den ganzen Planeten zu aktualisieren. Den Plattenspeicher sollte egtl. jeder haben, der auch Garminkarten von ganz Deutschland rechnen kann.


Viele Grüße
Henning, developer of RadReiseKarte

Offline

#9 2015-11-09 11:13:18

hurdygurdyman
Member
Registered: 2009-12-10
Posts: 2,850

Re: Overpass API für dummies

Bevor ich einen neuen thread eröffne, mache ich hier weiter.
Wer kann mir vom Schlauch helfen?
Ich benötige die Syntax, mit der ich nodes finde, die den gemeinsamen Verbindungspunkt von ways mit verschiedenen Eigenschaften eines tags gehören und farbig hervorgehoben werden sollen. Gleichzeitig ist dieser node das Ende eines bestimmten way-typs.

Beispiel:
Der node verbindet einen highway=unclassified mit highway=residential und es schließt am node kein weiterer highway=unclassified an.
way: http://www.openstreetmap.org/way/269418 … 8/11.41728
am node: https://www.openstreetmap.org/node/261017204


Gruß Michael (hurdygurdyman)
Ich mappe für Menschen, die Karten verwenden, welche aus OSM-Daten gerendert wurden tongue http://de.wikipedia.org/wiki/KISS-Prinzip cool

Offline

#10 2015-11-09 12:18:18

mmd
Member
Registered: 2010-11-06
Posts: 1,877

Re: Overpass API für dummies

hurdygurdyman wrote:

Wer kann mir vom Schlauch helfen?

Das geht schlicht und ergreifend nicht mit Overpass.

Gruß,
mmd

Offline

#11 2015-11-09 12:25:05

wambacher
Member
From: Schlangenbad/Wambach, Germany
Registered: 2009-12-16
Posts: 16,655
Website

Re: Overpass API für dummies

mmd wrote:

Das geht schlicht und ergreifend nicht mit Overpass.

Für die ganz Mutigen: Das geht mit PostGIS-Topology. Das ist eine PostGIS-Erweiterung, die für solche Aufgaben geschaffen wurde. Es werden dort Graphen aufgebaut, die die geometrischen Zusammenhänge zwischen den Objekten berücksichtigen. Beim Routing werden ähnliche Datenstrukturen verwendet.

Der Einstig ist nicht einfach und ich hab das auch noch nicht richtig geschnallt. Aber das ist der Weg.

Gruss
walter

Offline

#12 2015-11-09 12:32:34

hurdygurdyman
Member
Registered: 2009-12-10
Posts: 2,850

Re: Overpass API für dummies

wambacher wrote:
mmd wrote:

Das geht schlicht und ergreifend nicht mit Overpass.

Für die ganz Mutigen: Das geht mit PostGIS-Topology.
...

Schade...
und für fehlt mir der Mut sad


Gruß Michael (hurdygurdyman)
Ich mappe für Menschen, die Karten verwenden, welche aus OSM-Daten gerendert wurden tongue http://de.wikipedia.org/wiki/KISS-Prinzip cool

Offline

#13 2015-11-09 15:15:21

woodpeck
Member
Registered: 2009-12-02
Posts: 1,108

Re: Overpass API für dummies

hurdygurdyman wrote:

Ich benötige die Syntax, mit der ich nodes finde, die den gemeinsamen Verbindungspunkt von ways mit verschiedenen Eigenschaften eines tags gehören und farbig hervorgehoben werden sollen. Gleichzeitig ist dieser node das Ende eines bestimmten way-typs.

Nimm doch eine Programmiersprache Deiner Wahl und schreibe folgendes:

1. Lies einen Way ein
2. Ist der Way eine Straße, wenn ja, merke Dir Highway-Typ, sonst gehe zu 1
3. Nimm die erste und letzte Node-ID des Ways, und merke Dir "an dieser Node-Id endet/beginnt ein Way vom Typ X". In den meisten Skriptsprachen würdest Du dafür ein Hash von Arrays einsetzen, also in Perl zum Beispiel

$highwaytypes{$startnode} = [] unless defined($highwaytypes{$startnode}) # mit leerem Array initialisieren
push(@{$highwaytypes{$startnode}}, $aktueller_highwaytyp);

und ebenso für den Endnode. Später hast Du dann in $highwaytype eine Struktur, die in JSON-Notation so aussieht:

highwaytype: {
   "1234567" : [ "residential", "residential" ],
   "424242" : [ "tertiary" ],
   "11111" : [ "motorway_link", "motorway_link", "motorway" ],
  ...
}

Dann schreibst Du noch etwas Code, der diese Struktur untersucht, und der Dir diejenigen Nodes rausfiltert, bei denen die Liste "nicht aufgeht" (also 2x "residential" ist ok, und wenn ich Dich richtig verstehe, ist 2x "residential" und 1x "tertiary" auch ok, aber 1x "residential" und 1x "tertiary" nicht...)

Um dann die Node-Koordinaten dieser Nodes herauszufinden, könntest Du natürlich Overpass bemühen, oder Du liest Dein File einfach ein zweites Mal ein und schnappst Dir die notwendigen Koordinaten. Das erspart Dir, im ersten Durchgang *alle* Koordinaten "auf Vorrat" zu speichern, was u.U. viel Platz braucht.

Diesen Code kriegst Du in so ziemlich jeder Sprache einigermassen einfach hin. Wenn Du keine PBFs einlesen kannst/willst, kannst Du ja XML verwenden, das lässt sich notfalls auch ohne XML-Parser lesen.

Bye
Frederik

Offline

#14 2015-11-09 16:38:34

hurdygurdyman
Member
Registered: 2009-12-10
Posts: 2,850

Re: Overpass API für dummies

woodpeck wrote:
hurdygurdyman wrote:

Ich benötige die Syntax, mit der ich nodes finde, die den gemeinsamen Verbindungspunkt von ways mit verschiedenen Eigenschaften eines tags gehören und farbig hervorgehoben werden sollen. Gleichzeitig ist dieser node das Ende eines bestimmten way-typs.

Nimm doch eine Programmiersprache Deiner Wahl und schreibe folgendes:

1. Lies einen Way ein
2. Ist der Way eine Straße, wenn ja, merke Dir Highway-Typ, sonst gehe zu 1
3. ...
Bye
Frederik

Das ist ja lieb gemeint, aber selbst wenn ich meinem Hirnschmalz zutraue, nach einer Nutzungsdauer von sechzig Jahren noch eine Programmiersprache zu erlernen, stellt sich die Frage, ob dies bei der Restnutzungszeit sinnvoll ist.
Aber man hat ja seine Kontakte...


Gruß Michael (hurdygurdyman)
Ich mappe für Menschen, die Karten verwenden, welche aus OSM-Daten gerendert wurden tongue http://de.wikipedia.org/wiki/KISS-Prinzip cool

Offline

#15 2015-11-09 19:36:29

mmd
Member
Registered: 2010-11-06
Posts: 1,877

Re: Overpass API für dummies

hurdygurdyman wrote:

Das ist ja lieb gemeint, aber selbst wenn ich meinem Hirnschmalz zutraue, nach einer Nutzungsdauer von sechzig Jahren noch eine Programmiersprache zu erlernen, stellt sich die Frage, ob dies bei der Restnutzungszeit sinnvoll ist.
Aber man hat ja seine Kontakte...

Ich hab mich ja schon etwas gefragt, warum man genau so eine Anfrage stellen möchte cool

Vielleicht gibt es für das eigentliche Problem ja noch eine andere Möglichkeit.

Gruß,
mmd

Offline

#16 2015-11-09 19:39:52

hurdygurdyman
Member
Registered: 2009-12-10
Posts: 2,850

Re: Overpass API für dummies

mmd wrote:

Ich hab mich ja schon etwas gefragt, warum man genau so eine Anfrage stellen möchte cool

Vielleicht gibt es für das eigentliche Problem ja noch eine andere Möglichkeit.

Guggsdu
http://forum.openstreetmap.org/viewtopi … 16#p560216 smile


Gruß Michael (hurdygurdyman)
Ich mappe für Menschen, die Karten verwenden, welche aus OSM-Daten gerendert wurden tongue http://de.wikipedia.org/wiki/KISS-Prinzip cool

Offline

#17 2015-11-09 19:46:39

mmd
Member
Registered: 2010-11-06
Posts: 1,877

Re: Overpass API für dummies

hurdygurdyman wrote:
mmd wrote:

Ich hab mich ja schon etwas gefragt, warum man genau so eine Anfrage stellen möchte cool

Vielleicht gibt es für das eigentliche Problem ja noch eine andere Möglichkeit.

Guggsdu
http://forum.openstreetmap.org/viewtopi … 16#p560216 smile

Gut, was man noch recht einfach machen könnte, wären die Übergänge zwischen unclassified und residential anzuzeigen:

http://overpass-turbo.eu/s/cyS

Mit dem Abzählen klappt's dann aber definitiv nicht mehr, auch nicht mit dem ersten oder letzten Knoten im Weg als Einschränkung...

Gruß,
mmd

Last edited by mmd (2015-11-09 19:48:26)

Offline

Board footer

Powered by FluxBB