Skip to content

burrscurr/linesman

Repository files navigation

linesman

test coverage Documentation Status

linesman is a small python command line tool calculating quality measures for the straightness of a gpx track. The project is inspired by the "I attempted to cross <country> in a completely straight line" series of youtuber GeoWizard.

Installation

As a python package, linesman is installed with pip. The package is named gpx-linesman:

pip install gpx-linesman

After installing the package, you should be able to run linesman:

linesman --help

Usage

linesman must be passed a gpx file with the recorded track and a quality measure that shall be used to compare the gpx track against the reference line:

linesman path/to/file.gpx <measure>

Currently, the following quality measures are implemented:

  • MAX: maximum deviation from the reference line in meters
  • AVG: average deviation in meters
  • SQ-AVG: squared deviation average in meters

Development

Python dependencies are managed with poetry and can be installed from poetry.lock by running:

poetry install

Then, the CLI tool can be started with poetry run linesman. Run tests with poetry run pytest.

Documentation

Conceptual documentation can be found on readthedocs.