首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Strava API -如何获取路由图像

Strava API -如何获取路由图像
EN

Stack Overflow用户
提问于 2017-12-29 13:26:22
回答 3查看 5.7K关注 0票数 9

有谁知道如何在用户在Strava上发布他们的活动后获得完成路线图图像。我读过Strava API文档,但还没有找到

我使用https://strava.github.io/api/v3/activities/:id来获取一个活动,有一个"map“字段,但是我仍然找不到这个字段的描述。

谢谢大家。

EN

回答 3

Stack Overflow用户

发布于 2018-11-19 22:43:25

Strava获取记录的经纬度集,并使用GOOGLE POLYLINE ENCODING算法对其进行编码。这是为了减少通过应用程序和WEB服务传输的数据。

如果需要绘制路线,则需要

  1. 获取多段线字符串。
  2. 对其进行解码以获取经度/经度数组。
  3. 遍历该数组并在地图上绘制折线。

我使用了javascript中的@mapbox/polyline npm模块来解码折线。

另一种更好的方法是使用google地图静态api。在那里你将输入一条折线,并得到一张绘制了路线的图像。静态api将如下所示

https://maps.googleapis.com/maps/api/staticmap?size=600x300&maptype=roadmap&path=enc:GIVE_YOUR_POLYLINE_DATA&key=GIVE_YOUR_API_KEY

票数 7
EN

Stack Overflow用户

发布于 2018-04-10 09:00:12

summary_polyline可以被解码成一组坐标。用于折线的算法是here描述的,很多库都可以处理它。

例如,您还可以使用Google Maps静态API而不进行解码。

slack bot for Strava中的This Ruby代码可以做到这一切。

票数 3
EN

Stack Overflow用户

发布于 2020-10-01 12:43:00

用于在安卓中获取路由图像

  1. 将所有经度和经度添加到列表中,然后在谷歌折线编码技术的帮助下,将完整的经度和经度列表转换为编码的折线字符串。

  1. 之后,创建地图框帐户并使用具有有效令牌

地图框静态图像应用编程接口

现在使用StaticPolylineAnnotation:的

代码语言:javascript
复制
List<StaticPolylineAnnotation> list = new ArrayList<>();    
list.add(StaticPolylineAnnotation.builder()
    .polyline(polilineString)
    .strokeWidth(1.0)
    .strokeColor(56, 69, 181)
    .build()); 

注意: PolilineString是从Google Poly line Encoding技术获得的编码字符串

创建MapboxStaticMap:的

代码语言:javascript
复制
MapboxStaticMap staticImage = MapboxStaticMap.builder().user("mapboxaccountusename")
    .accessToken("Mapbox Token")
    .styleId("Your Style id")
    .staticPolylineAnnotations(list)
    .cameraAuto(true)
    .retina(true)
    .build();

  1. 使用

获取图像的url

代码语言:javascript
复制
String imageUrl = staticImage.url().toString();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48017792

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档