Differences between revisions 1 and 6 (spanning 5 versions)
Revision 1 as of 2011-01-04 01:48:40
Size: 410
Editor: SamatJain
Comment: First rev
Revision 6 as of 2011-01-29 00:43:01
Size: 1863
Editor: SamatJain
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
[[GpxSplitter|gpxsplitter]] splits multi-track GPX files, containing waypoints, into individual one-track GPX files with their respective waypoints.

GPX files containing multiple tracks and waypoints jumbled together are produced on export by many GPS units, particularly MTK chipset-based devices such as the Qstarz Q1000 and Transystem i-Blue 474. Separating tracks and their associated waypoints was a headache until gpxsplitter came along.

gpxsplitter depends on the Python 2.6 (or above in the 2.x series) and the modules:

 * lxml
 * mxDateTime

On Debian/Ubuntu, you can install the required dependencies with:

{{{
sudo aptitude install python-lxml python-egenix-mxdatetime
}}}

At some point, I'm going to refactor gpxsplitter to not need mxDateTime and depend on ElementTree in Python's stdlib, so script can work on Python 3.

[[http://gitorious.org/gpxsplitter/gpxsplitter/blobs/raw/master/gpxsplitter.py|Download gpxsplitter.py directly]] (this link will always download the latest version), or browse the [[http://gitorious.org/gpxsplitter|gpxsplitter repository on Gitorious]].

== Changelog ==

v0.1 — 04 Jan 2010 — First release.
Line 12: Line 35:
[[http://b42.cz/gpxsplit/|gpxsplit]] is a Haskell/Haxml-based GPX file splitter I found a few pre-existing programs that perform the same, or similar function:
Line 14: Line 37:
[[http://shallowsky.com/software/mapping/|gpxmgr]] is a Python/minidom-based GPX file splitter. Python's minidom is known for being notoriously slow.  * [[http://b42.cz/gpxsplit/|gpxsplit]] is a Haskell/Haxml-based GPX file splitter. On Ubuntu, required some 360 MB of dependencies (Haskell compilers, libraries, etc).
 * [[http://shallowsky.com/software/mapping/|gpxmgr]] is a Python/minidom-based GPX file splitter. Python's minidom is known for being notoriously slow.

As you can see in Benchmarks, gpxsplitter is significantly faster, and requires fewer dependencies.

gpxsplitter splits multi-track GPX files, containing waypoints, into individual one-track GPX files with their respective waypoints.

GPX files containing multiple tracks and waypoints jumbled together are produced on export by many GPS units, particularly MTK chipset-based devices such as the Qstarz Q1000 and Transystem i-Blue 474. Separating tracks and their associated waypoints was a headache until gpxsplitter came along.

gpxsplitter depends on the Python 2.6 (or above in the 2.x series) and the modules:

  • lxml
  • mxDateTime

On Debian/Ubuntu, you can install the required dependencies with:

sudo aptitude install python-lxml python-egenix-mxdatetime

At some point, I'm going to refactor gpxsplitter to not need mxDateTime and depend on ElementTree in Python's stdlib, so script can work on Python 3.

Download gpxsplitter.py directly (this link will always download the latest version), or browse the gpxsplitter repository on Gitorious.

Changelog

v0.1 — 04 Jan 2010 — First release.

Benchmarks

Very informal testing:

Program

Time

gpxsplit

24s

gpxmgr

32s

gpxsplitter

1s

Other programs

I found a few pre-existing programs that perform the same, or similar function:

  • gpxsplit is a Haskell/Haxml-based GPX file splitter. On Ubuntu, required some 360 MB of dependencies (Haskell compilers, libraries, etc).

  • gpxmgr is a Python/minidom-based GPX file splitter. Python's minidom is known for being notoriously slow.

As you can see in Benchmarks, gpxsplitter is significantly faster, and requires fewer dependencies.

SamatsWiki: GpxSplitter (last edited 2016-08-26 16:44:39 by SamatJain)