-
Notifications
You must be signed in to change notification settings - Fork 67
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reason for not mapping all found TrackPointExtensions, and only keeping one? #124
Comments
Can you be a little more precise and maybe give an input file and an output file? This tool already parses all valid extensions under the Gpx namespace and includes all of them in feature properties. |
I think the problem is that the tool is accounting for the Garmin GpxExtensions, but not the Garmin TrackPointExtension, either because it is something new or was intentionally ignored or handled the way it is by design, hence why I thought I'd open an issue to ask. The XML schema URL for the namespace that is not handled as I expected is the following: You'll see that in the case of this file, it is deciding to read the atemp data, and ignores both HR and cadence. In my running and cycling activities, it prefers the HR data over the cadence, for example, but the data is not tagged in the output file in any way, just stored as an array of values with no indication of what it is holding. |
I have the same issue. Haven't deeply investigated but could this be caused by the xml schema url from garmin to be unexisting?
|
Can you provide an example file? Thanks! |
Sure, here it is. The issue is that the ns3:TrackPointExtension from the gpx file are not parsed correctly to the geojson coordinateProperties. Hope this helps and thanks for taking a look! |
Those ns3 trackextension properties have a value for each coordinate pair. Now only the initial value is stored as a main geojson property but all the other coordinate values are missing from the coordinateProperties. So just like the coordinateProperties property 'times' in your example you would expect arrays for hr, cadence, atemp,... Where for each coordinate the corresponding trackExtension value is stored. In my particular usecase I would like to style my geojson linestring on a map with a gradient by heartRate or cadence (or any other extension). Where red is highest value, blue lowest. But that heartrate data is now missing from the parsed geojson. Hope this makes sense! |
Hello, I was testing this library with some of my Garmin GPX files that include HR, cadence and temperature data in them, but I saw that only one of these data sequences is included in the output FeatureCollection. From reading the GeoJson spec, it seems the properties member cannot be an array, but it could contain a map with the key being the tag name (such as hr, cad, etc...), and the value being the data sequence, could it not? That way the data can be manipulated later, and it is tagged in some way, since currently you have no idea what the data sequence represents, it has no label. If performance or memory were a concern, perhaps an optional flag could be used to parse all extensions?
The text was updated successfully, but these errors were encountered: