Google Maps API-检测何时越过状态线并计算每种状态下的行进距离

gra*_*ero 5 google-maps-api-3

我正在使用Google Maps API计算我的公司的车辆在一段时间内在每个州行驶的里程数。对于这段时间内的旅行,用户将在地图上创建路线,程序应能够生成一些输出,例如:“马里兰:100英里,弗吉尼亚:500英里”,等等。

我很确定我可以通过发送DirectionsService请求并遍历response.routes[i].legs[i].steps[i].path数组来做到这一点,但是不幸的是,这需要Geocoder在数千个LatLngs 上发送请求,这很快使我超出了配额。有没有更好的方法来解决这个问题?我真的只需要检测路线何时越过状态线并将其分成单独的路线,但是我不知道如果不遍历path数组怎么做。

Sni*_*gus 2

如果路径数组中有 1000 个元素,并且进行二分搜索(而不是迭代),则只需调用 12 次 LatLng 即可确定路径穿过边界的位置。

当你超过配额时,你会得到什么样的反馈?如果是异常返回,您始终可以仅在收到配额推迟时等待 3.5 秒。