GPXParser.js
GPXParser.js is a lightweight JS library wich parse .gpx file and get or compute various datas like
GPX metadata
total and cumulate distances
min, max, average, positive and negative height différence
GPX ? What is this ?
Wikipedia say :
GPX, or GPS Exchange Format, is an XML schema designed as a common GPS data format for software applications.
gpx files are based on xml with specific tags and attributes
For more information about gpx format see http://www.topografix.com/gpx_manual.asp
How to do
Install from npm
npm install --save gpxparser
Load JavaScript file
From an HTML document :
< script src ="./js/GPXParser.js "> </ script >
From a node.js script :
let gpxParser = require ( 'gpxparser' ) ;
Create and parse file
var gpx = new gpxParser ( ) ; //Create gpxParser Object
gpx . parse ( "<xml><gpx></gpx></xml>" ) ; //parse gpx file from string data
Use the gpx Object
var totalDistance = gpx . tracks [ 0 ] . distance . total ;
Export gpxParser Objecto to GeoJSON
let geoJSON = gpx . toGeoJSON ( ) ;
Documentation
Property
Type
Description
xmlSource
XML
XML Object parsed from gpx string file
metadata
Metadata object
File metadata
waypoints
Array of Waypoint object
Array of waypoints
tracks
Array of Track object
Array of waypoints of tracks
routes
Array of Route object
Array of waypoints of routes
Metadata object
Property
Type
Description
name
String
File name
desc
String
Description
link
Link object
Web address
author
Float
Author object
time
DateTime
Time
Waypoint object
Property
Type
Description
name
String
Point name
cmt
String
Comment
desc
String
Point description
lat
Float
Point latitute
lon
Float
Point longitude
ele
Float
Point elevation
time
Date
Point time
Track object
Property
Type
Description
name
String
Point name
cmt
String
Comment
desc
String
Point description
src
String
Used device
number
String
Track identifier
link
String
Link to a web address
type
String
Track type
points
Array
Points object array
distance
Distance Object
Distance informations about the Route
elevation
Elevation Object
Elevation informations about the Route
slopes
Float Array
Slope of each sub-segment
Route object
Property
Type
Description
name
String
Point name
cmt
String
Comment
desc
String
Point description
src
String
Used device
number
String
Track identifier
link
String
Link to a web address
type
String
Route type
points
Array
Points object array
distance
Distance Object
Distance informations about the Route
elevation
Elevation Object
Elevation informations about the Route
slopes
Float Array
Slope of each sub-segment
Point object
Property
Type
Description
lat
Float
Point latitute
lon
Float
Point longitude
ele
Float
Point elevation
time
Date
Point time
Distance object
Property
Type
Description
total
Float
Total distance of the Route/Track
cumul
Float
Cumulative distance at each point of the Route/Track
Elevation object
Property
Type
Description
max
Float
Maximum elevation
min
Float
Minimum elevation
pos
Float
Positive elevation difference
neg
Float
Negative elevation difference
avg
Float
Average elevation
Author object
Property
Type
Description
name
String
Author name
email
Email object
Email address of the author
link
Link object
Web address
Email object
Property
Type
Description
id
String
Email id
domain
String
Email domain
Link object
Property
Type
Description
href
String
Web address
text
String
Link text
type
String
Link type