Strava (GPX) <type></type> 元素是啥意思?
Posted
技术标签:
【中文标题】Strava (GPX) <type></type> 元素是啥意思?【英文标题】:What do the Strava (GPX) <type></type> elements mean?Strava (GPX) <type></type> 元素是什么意思? 【发布时间】:2020-09-06 05:58:57 【问题描述】:起亚欧拉,
我从 Strava 导出了所有 GPX 文件,因此我可以对它们进行一些分析,但我一直试图弄清楚每个文件的活动类型。
我的文件如下所示,例如,<type>
元素似乎定义了活动类型。
<?xml version="1.0" encoding="UTF-8"?>
<gpx creator="StravaGPX iPhone" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd" version="1.1" xmlns="http://www.topografix.com/GPX/1/1">
<metadata>
<time>2014-03-21T22:44:39Z</time>
</metadata>
<trk>
<name>Sugar Loaf</name>
<type>9</type>
<trkseg>
...
我知道(在我的脑海中)该活动是一次跑步,但我找不到所有数字及其相应活动类型的任何文档。
Strava says:
Strava 努力遵守官方 FIT SDK 中定义的 FIT 活动文件 (FIT_FILE_TYPE = 4) 规范。
这很好,但如果我查询 FIT SDK,我可以在 fit_profile.hpp
文件中找到以下内容:
typedef FIT_ENUM FIT_SPORT;
#define FIT_SPORT_INVALID FIT_ENUM_INVALID
#define FIT_SPORT_GENERIC ((FIT_SPORT)0)
#define FIT_SPORT_RUNNING ((FIT_SPORT)1)
#define FIT_SPORT_CYCLING ((FIT_SPORT)2)
#define FIT_SPORT_TRANSITION ((FIT_SPORT)3) // Mulitsport transition
#define FIT_SPORT_FITNESS_EQUIPMENT ((FIT_SPORT)4)
#define FIT_SPORT_SWIMMING ((FIT_SPORT)5)
#define FIT_SPORT_BASKETBALL ((FIT_SPORT)6)
#define FIT_SPORT_SOCCER ((FIT_SPORT)7)
#define FIT_SPORT_TENNIS ((FIT_SPORT)8)
#define FIT_SPORT_AMERICAN_FOOTBALL ((FIT_SPORT)9)
#define FIT_SPORT_TRAINING ((FIT_SPORT)10)
#define FIT_SPORT_WALKING ((FIT_SPORT)11)
...
我也可以在同一个fit_profile.hpp
文件中找到:
#define FIT_FILE_ACTIVITY ((FIT_FILE)4) // Read/erase, multiple files. Directory=Activities
这将向我确认它确实是一个活动文件。
有谁知道我在哪里可以找到这些整数的参考资料?
【问题讨论】:
【参考方案1】:通过实验,我制作了这个列表。
1: Ride
2: Alpine Ski
3: Backcountry Ski
4: Hike
5: Ice Skate
6: Inline Skate
7: Nordic Ski
8: Roller Ski
9: Run
10: Walk
11: Workout
12: Snowboard
13: Snowshoe
14: Kitesurf
15: Windsurf
16: Swim
17: Virtual Ride
18: E-Bike Ride
19: Velomobile
21: Canoe
22: Kayaking
23: Rowing
24: Stand Up Paddling
25: Surfing
26: Crossfit
27: Elliptical
28: Rock Climb
29: Stair-Stepper
30: Weight Training
31: Yoga
51: Handcycle
52: Wheelchair
53: Virtual Run
我怀疑 20 是用于航海,但 Strava 不允许我将任何活动设置为航海检查。
【讨论】:
以上是关于Strava (GPX) <type></type> 元素是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章
使用 python 模块请求上传 Strava GPX 时出现 ValueError - 为啥?