【发布时间】:2017-04-14 04:04:59
【问题描述】:
今天我遇到了一个肯定不常见的问题,但我整天都在解决这个问题,但没有任何结果。
我想要什么:我想在多个点之间绘制一条折线,考虑到路线必须是其中 LESS DISTANCE 的路线,而不是用户选择目的地的方式。
上下文:我有一个 LatLng ArrayList,当用户点击地图时,它会被填充,点击的 LatLng 会自动存储到 ArrayList 中。然后,我将其转换为 Position 数组列表以使用 setCoordinates() 方法。 另外,我有一个“原点”,这将是用户的当前位置。我已经建立了一个普通的来做测试。
问题:当用户单击目的地时,ArrayList 以他单击的方式填充,而不考虑最近的目的地是什么,这就是我想要实现的目标,跟踪路线只考虑到点之间的距离必须是最短的。
这是我的示例代码(请注意,如果可以在考虑距离的情况下订购“al”ArrayList,则路线可能会成功):
for (int i=0; i<= direcciones.size() - 1; i++) {
LatLng tri = direcciones.get(i);
Position p = Position.fromCoordinates(tri.getLongitude(), tri.getLatitude());
al.add(i, p);
}
MapboxDirections client = new MapboxDirections.Builder()
.setAccessToken(Mapbox.getAccessToken())
.setOrigin(Position.fromCoordinates(-56.1645, -34.9011))
.setCoordinates(al)
.setProfile(DirectionsCriteria.PROFILE_DRIVING)
.build();
提前谢谢你!
【问题讨论】:
标签: android arraylist mapbox direction driving-directions