1

我正在使用距离矩阵 api 计算 LatLng(通过拖动标记)指定的用户之间的路线距离和运输时间。但有时我的距离错误,看起来像是不小心使用了收费站(或高速公路)。

首先我尝试过:

通过使用 ROOF_TOP 选项对 LatLng 进行反向地理编码来舍入起点(和终点)位置,以避免用户在高速公路上指定起点。

我的工作就像一个魅力来避开高速公路的起点(或目的地)。

但后来我遇到了一个问题,即距离矩阵计算的路线太长,看起来像是使用高速公路。

我已经用谷歌地图检查了估计路线,然后谷歌返回了使用高速公路的路线。

但是当我检查具有相同起点和目的地的优步应用程序时(我假设他们使用谷歌地图的 api !!)他们返回正常价格。所以我认为有一个解决方案......但我找不到......

我发现移动原点可以解决这个问题(谷歌似乎意外地假设了单向流量),但我该如何以编程方式解决它?

4

1 回答 1

2

您可以在请求中避免使用 Highways avoid参数。该参数支持tolls, highways, ferries and indoors.

可以计算遵循某些限制的方向。限制是通过使用avoid参数来指示的,并且该参数的自变量指示要避免的限制。通过将这两个限制都传递给避免参数,可以请求路线避开收费、高速公路和渡轮的任何组合。

例如:

avoid=tolls|highways|ferries

avoid=tolls

avoid=highways

avoid=ferries
于 2016-04-29T14:40:24.973 回答