[Talk-de] Ich verzeifle daran eine .osc-Datei zu filtern

Kevin Hemker hemker.kh at gmail.com
Do Aug 3 20:40:05 UTC 2017


Hallo an alle!

eigentlich ja keine große Sache, aber nach etlichen Stunden Verzweiflung 
wende ich mich an euch und hoffe auf Hilfe:

Ausgangspunkt: .osc-Datei vom osm-Server. Das Filtern soll folgendes 
Ergebnis liefern:

  * keine Relationen mehr
  * alle ways zu nodes konvertiert
  * nur nodes behalten, die ein paar bestimmte keys haben.

Meine erster Ansatz:

    - erst mit osmconvert alle Relationen rauswerfen und alle ways zu
    nodes umwandeln:

        osmconvert Ausgangsdatei.osc --drop-relations --all-to-nodes
        --out-osc >Zwischendatei.osc

        klappt einwandfrei.

    - dann mit osmfilter alle nodes rausschmeißen, die die Kriterien
    nicht erfüllen:

        osmfilter Zwischendatei.osc --parameter-file=parameter.txt >
        Ergebnis.osc
        meckert (wegen dem addierten Offset vom all-to-nodes-Befehl -
        was ich für spätere Zwecke brauche) bei einigen nodes 'wrong
        sequence'; diese werden ignoriert, obwohl sie ins Profil passen.

Spontaner Gedanke zur Lösung:

    - erst filtern, dann ways umwandeln. Problem: alles was zuvor ein
    way war ist jetzt komplett weg, vermutlich weil ja der filter alle
    tag-losen Wegpunkte rausschmeisst und osmconvert sie entsprechend
    nicht mehr finden kann.

Also wieder zurück zum ersten Ansatz, und osmosis dazwischensetzen um 
die Daten vorm filtern zu sortieren:

    osmosis --read-xml-change file="Zwischendatei.osc" --simc --sc
    --write-xml-change file="vorbereitetZumFiltern.osc"

-> Bricht mit einer NullPointerException während 
FloatingDecimal.parseDouble() ab...

Was mache ich falsch??? Ich glaub ich sehe vor lauter stundemlangem 
probieren und googlen die Lösung nicht.

Ich hoffe ihr könnt mir weiterhelfen oder Tipps geben...


LG Kevin

PS: warum meckert osmfilter bei jeder osc-Datei eigentlich 'unerwartetes 
Ende der Datei'??





Mehr Informationen über die Mailingliste Talk-de