Generate a 3D Skyline in STL format and from Strava
or GPX
- Make sure your python >= 3.6
- pip install -r requirements.txt
- Install OpenSCAD and ensure that openSCAD executable
You have two ways to use
- From strava
Get your Strava
auth
-
Sign in/Sign up Strava account
-
Open after successful Signin Strava Developers -> Create & Manage Your App
-
Create
My API Application
: Enter the following information
- Use the link below to request all permissions: Replace
${your_id}
in the link withMy API Application
Client ID
https://www.strava.com/oauth/authorize?client_id=${your_id}&response_type=code&redirect_uri=http://localhost/exchange_token&approval_prompt=force&scope=read_all,profile:read_all,activity:read_all,profile:write,activity:write
- Get the
code
value in the link
example:
http://localhost/exchange_token?state=&code=1dab37edd9970971fb502c9efdd087f4f3471e6e&scope=read,activity:write,activity:read_all,profile:write,profile:read_all,read_all
code
value:
1dab37edd9970971fb502c9efdd087f4f3471e6
- Use
Client_id
、Client_secret
、Code
getrefresch_token
: Execute inTerminal/iTerm
curl -X POST https://www.strava.com/oauth/token \
-F client_id=${Your Client ID} \
-F client_secret=${Your Client Secret} \
-F code=${Your Code} \
-F grant_type=authorization_code
example:
curl -X POST https://www.strava.com/oauth/token \
-F client_id=12345 \
-F client_secret=b21******d0bfb377998ed1ac3b0 \
-F code=d09******b58abface48003 \
-F grant_type=authorization_code
use this command line to generate stl file
python3 skyline.py --type strava --client_id xxxxxx --client_secret xxxx --refresh_token xxxxxx --year {year} --runner {your_name}
- From
GPX
You can generate your running gpx from my other repo -- running_page than copy the whole gpx files to GPX_DIR
use this command line to generate stl file
python3 skyline.py --type gpx --year {year} --runner {your_name}
Please make sure your name length < 10
- Any Issues PR welcome.
Before submitting PR:
- Format Python code with Black
- @felixgomez great repo