我有26个坐标的列表,将来坐标可能会增加。我基本上是想在澳大利亚周围画一条路线/折线。我想在单个路线构建器调用中绘制整个路线/折线。现在有两个限制。
val routeBuilder = NavigationRoute.builder(mContext).accessToken(MapBoxUtils.MAP_KEY).origin(startPoint!!).destination(it)
.profile(DirectionsCriteria.PROFILE_CYCLING)
val endIndex = checkPointList.size - 1
for ((index, point) in checkPointList.withIndex()) {
if (index != 0 && index < endIndex) {
routeBuilder.addWaypoint(Point.fromLngLat(point.coordinates.longitude.toDouble(), point.coordinates.latitude.toDouble()))
}
}
routeBuilder.build().getRoute(object:Callback<DirectionsResponse> {
override fun onFailure(call: Call<DirectionsResponse>, t: Throwable) {
Timber.e("Error: " + t.message)
}
override fun onResponse(call: Call<DirectionsResponse>, response: Response<DirectionsResponse>) {
if (response.body() == null) {
showToast(getErrorMessage(response.errorBody()!!.string()))
return
} else if (response.body()!!.routes().size < 1) {
showToast("No routes found")
return
} else{
//draw route here
}
})
此处https://docs.mapbox.com/api/navigation/
我已经联系技术支持,他们没有回复我的要求。让我知道是否有任何解决方法,否则我必须打两个电话才能实现此目的。
答案 0 :(得分:0)
我终于收到了MapBox技术支持的答复。
感谢您使用Mapbox!正如我们的文档中所述 Directions API限制和限制,限制为300 每分钟请求数,每条路线上最多25个航路点。的 所有航点之间的10,000公里的限制无法更改。 但是,您可以考虑向路线发出多个请求 API,然后将结果串联在一起。例如,“端口 “ Hedland”可能是传递给一个API请求的最后一个目的地,并且 也是传递到下一个API请求的第一个目标。 将生成的路线串联起来会产生一条连续的线。