diff options
| author | Daniel Schadt <kingdread@gmx.de> | 2025-10-27 21:04:40 +0100 |
|---|---|---|
| committer | Daniel Schadt <kingdread@gmx.de> | 2025-10-28 21:06:37 +0100 |
| commit | cb889cacd3e362e0bfe5ea2e241706777331de94 (patch) | |
| tree | f0acccf5ff9ee31f510445e614fce18263802973 /fietsboek/convert.py | |
| parent | 9dfe8c6282a38805ceb11ac9b9bbc848955ab785 (diff) | |
| download | fietsboek-cb889cacd3e362e0bfe5ea2e241706777331de94.tar.gz fietsboek-cb889cacd3e362e0bfe5ea2e241706777331de94.tar.bz2 fietsboek-cb889cacd3e362e0bfe5ea2e241706777331de94.zip | |
add waypoints to database
Diffstat (limited to 'fietsboek/convert.py')
| -rw-r--r-- | fietsboek/convert.py | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/fietsboek/convert.py b/fietsboek/convert.py index 5115dd7..04c7e73 100644 --- a/fietsboek/convert.py +++ b/fietsboek/convert.py @@ -6,7 +6,7 @@ import fitparse import gpxpy from . import geo, util -from .models import Track +from .models import Track, Waypoint FIT_RECORD_FIELDS = ["position_lat", "position_long", "altitude", "timestamp"] @@ -103,6 +103,25 @@ def from_gpx(data: bytes) -> Track: track.title = track_name track.description = track_desc track.date = date + + for waypoint in gpx.waypoints: + desc = None + # GPX waypoints can have both description and comment. It seems like + # comment is what is usually used (GPXViewer only shows the comment), + # so we'll prioritize that. + if waypoint.comment: + desc = waypoint.comment + if not desc and waypoint.description: + desc = waypoint.description + wpt = Waypoint( + longitude=waypoint.longitude, + latitude=waypoint.latitude, + elevation=waypoint.elevation, + name=waypoint.name, + description=desc, + ) + track.waypoints.append(wpt) + return track |
