... the user friendly GPS tool


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Metadaten fehlen oder sind veraltet
#21
(04.04.2020, 21:36)IlmariKrebs Wrote: Hmm als C++ Programmierer kanns Du doch ein Kommandozeilentool schreiben, welches quasi wie touch den timestamp in metadata setzt.

Gute Idee, aber ein eigenes Tool ist gar nicht nötig, GPS Babel kann das out of the box. Einfach eine GPX-Datei in eine GPX-Datei "konvertieren", GPS Babel schreibt dann in das Ergebnis solch einen Metadaten-Block:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<gpx version="1.1" creator="GPSBabel - http://www.gpsbabel.org" xmlns="http://www.topografix.com/GPX/1/1" xmlns:gpxtpx1="http://www.garmin.com/xmlschemas/TrackPointExtension/v1" xmlns:trp="http://www.garmin.com/xmlschemas/TripExtensions/v1" xmlns:gpxx="http://www.garmin.com/xmlschemas/GpxExtensions/v3" xmlns:gpxtpx="http://www.garmin.com/xmlschemas/TrackPointExtension/v2">
  <metadata>
    <time>2020-04-05T06:51:03.237Z</time>
    <bounds minlat="54.141003000" minlon="9.654059000" maxlat="54.798429100" maxlon="9.957118000"/>
  </metadata>
  <trk>
    <name>Neue Positionsliste 1</name>
    <desc>Created at 2020-04-05T06:39:00Z</desc>
    <trkseg>
      <trkpt lat="54.141041100" lon="9.742668200">
...
Grüße
Hans

Reply
#22
(04.04.2020, 18:50)nordlicht Wrote:
(04.04.2020, 18:15)tkansgar Wrote: Dazu habe ich noch einen Vorschlag: Wenn du nicht möchtest, dass andere Anwender vom neuen Metadatenblock mit dem Speicherungszeitpunkt "überrascht" werden, könntest du doch eine Option einführen, die defaultmäßig den Metadatenblock weglässt und die ich dann anschalten müsste.

Das würde die Angelegenheit nur verkomplizieren. Wenn ein GPX-Track importiert wird, enthält er manchmal auch Metadaten, die dann beim Speichern auch bitte erhalten bleiben sollen, also nix mit default-mäßig weglassen. Daß beim Speichern <metadata><time> hinzugefügt oder überschrieben/aktualisiert wird, wäre für mich in Ordnung.

Nein, dass ein schon vorhandener Metadatenblock weggelassen werden soll, hatte ich natürlich nicht gemeint. Selbstverständlich müsste der erhalten bleiben. Das Weglassen bezog sich nur auf den Speicherungszeitpunkt. Und wenn schon einer drinsteht (wie gewöhnlich bei meinen alten Tracks), sollte der bei ausgeschalteter Option (wenn sie denn eingeführt wird) konsequenterweise auch erhalten bleiben. Was ansonsten (also bei eingeschalteter Option oder wenn sie nicht eingeführt wird) beim Speichern passieren sollte, dürfte inzwischen klar sein, denke ich.
Reply
#23
(05.04.2020, 07:56)nordlicht Wrote:
(04.04.2020, 21:36)IlmariKrebs Wrote: Hmm als C++ Programmierer kanns Du doch ein Kommandozeilentool schreiben, welches quasi wie touch den timestamp in metadata setzt.

Gute Idee, aber ein eigenes Tool ist gar nicht nötig, GPS Babel kann das out of the box. Einfach eine GPX-Datei in eine GPX-Datei "konvertieren", GPS Babel schreibt dann in das Ergebnis solch einen Metadaten-Block:

Code:
<?xml version="1.0" encoding="UTF-8"?>
<gpx version="1.1" creator="GPSBabel - http://www.gpsbabel.org" xmlns="http://www.topografix.com/GPX/1/1" xmlns:gpxtpx1="http://www.garmin.com/xmlschemas/TrackPointExtension/v1" xmlns:trp="http://www.garmin.com/xmlschemas/TripExtensions/v1" xmlns:gpxx="http://www.garmin.com/xmlschemas/GpxExtensions/v3" xmlns:gpxtpx="http://www.garmin.com/xmlschemas/TrackPointExtension/v2">
  <metadata>
    <time>2020-04-05T06:51:03.237Z</time>
    <bounds minlat="54.141003000" minlon="9.654059000" maxlat="54.798429100" maxlon="9.957118000"/>
  </metadata>
  <trk>
    <name>Neue Positionsliste 1</name>
    <desc>Created at 2020-04-05T06:39:00Z</desc>
    <trkseg>
      <trkpt lat="54.141041100" lon="9.742668200">
...

Von solchen Notlösungen halte ich nichts. Derzeit denke ich darüber nach, ob ich Christian die Arbeit abnehme, falls er nicht dazu kommt. Er fordert ja sogar dazu auf das zu tun (s. https://www.routeconverter.com/development/de). Java ist zwar nicht so ganz meine Welt, aber so schwer kann das eigentlich nicht sein. Aber beschlossen ist das noch lange nicht. Auch mich würde das viel Zeit kosten, die ich eigentlich nicht habe.
Reply
#24
(05.04.2020, 10:06)tkansgar Wrote: Von solchen Notlösungen halte ich nichts.

Für mich ist das keine Notlösung, GPS Babel hat mir schon öfter exotische Probleme gelöst. Zuletzt habe ich einen Dreizeiler-Batchjob damit geschrieben, der mir per Drag&Drop den GPS Week Rollover in den Tracks korrigiert, die zwei meiner Altgeräte liefern. Sowas kostet ein paar Minuten in der Doku von GPS Babel nachlesen, eine Batch-Datei und eine Verknüpfung auf dem Desktop erzeugen, danach ist alles mit einem Mausklick und Ziehen erledigt. Für den Metadatenblock habe ich das auch mal kurz gemacht und in den Anhang gestellt. Die Datei auspacken, ins GPS Babel Programmverzeichnis legen und eine Verknüpfung dazu an den Desktop senden, danach kannst du beliebig viele GPX-Dateien in einem Rutsch da drauf ziehen und mit Metadaten versehen.


Attached Files
.zip   GPX_Metadaten.zip (Size: 205 bytes / Downloads: 89)
Grüße
Hans

Reply
#25
(04.04.2020, 18:15)tkansgar Wrote: da muss ich wiederum widersprechen: Die <time> Einträge für Trackpoints trägt RouteConverter nur ein, wenn man selbst Zeitpunkte setzt oder explizit erzeugen lässt. Ansonsten fehlen sie (s. Minibeispiel in #13).

Korrekt. RouteConverter soll keine Daten "erfinden".

(04.04.2020, 18:15)tkansgar Wrote: Aber du hast Recht, in <metadata> muss meinetwegen außer dem Speicherungszeitpunkt nichts weiter rein.

Dann könnte ich ja statt <desc> einfach <time> "beschreiben" lassen.

(04.04.2020, 18:15)tkansgar Wrote: Dazu habe ich noch einen Vorschlag: Wenn du nicht möchtest, dass andere Anwender vom neuen Metadatenblock mit dem Speicherungszeitpunkt "überrascht" werden, könntest du doch eine Option einführen, die defaultmäßig den Metadatenblock weglässt und die ich dann anschalten müsste.

Die versteckte Option zum Weglassen von <metadata> gibt es bereits.

(04.04.2020, 18:15)tkansgar Wrote: Habe ich eine Chance, dass du mein Anliegen irgendwann realisierst? Ich wäre dir sehr dankbar.

Im Moment stehen die Chancen gut. Erst Arbeit, dann Familie, dann Sport, dann Hobbies...
--
Christian
Reply
#26
Bitte probier mal die neueste Vorabversion aus, die ich gerade hochgeladen habe. Sie schreibt <time> von <metadata> bei GPX 1.1 und <time> von <gpx> bei GPX 1.0 – bei jedem Schreiben.
--
Christian
Reply
#27
Christian, du erstaunst mich immer wieder! Das ist schon der zweite Wunsch innerhalb weniger Wochen, den du mir erfüllt hast. Und dabei ist Ostern doch erst nächstes Wochenende. Big Grin 
Der <time> Eintrag mit dem aktuellen Speicherungszeitpunkt ist drin, und zwar sowohl bei einer neu gespeicherten alten Datei mit vorhandenem  Eintrag (bei der der Rest des Metadatenblocks wie bisher erhalten bleibt) als auch bei einer ganz neuen.

Tausend Dank, Christian! Ich hatte mich schon geistig darauf eingestellt, mir eine für Java geeignete Entwicklungsumgebung installieren und meine Java-Kenntnisse auffrischen zu müssen.

Viele Grüße
tkansgar
Reply
#28
(05.04.2020, 20:33)tkansgar Wrote: Christian, du erstaunst mich immer wieder! Das ist schon der zweite Wunsch innerhalb weniger Wochen, den du mir erfüllt hast. Und dabei ist Ostern doch erst nächstes Wochenende. Big Grin 

Manchmal sind Dinge sehr einfach. Du kannst ja eine neue Sprache zu RouteConverter hinzufügen, im Forum aufpassen oder auf den Paypal-Button drücken Big Grin
--
Christian
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)