【发布时间】:2012-05-27 10:53:57
【问题描述】:
我正在尝试使用 Google Places API 找到离某个点最近的两条街道(基本上是为了指示最近的十字路口)。但是,任何结果都只会返回一个“路线”,如果有的话。
我想我可以在 + 或 X 模式下进行 5 次查询,但那很笨拙、不可靠,而且当然会很快达到查询限制。
我很想说这是一个深思熟虑的举动,因为 API 不打算用于导航系统之类的东西(我不想这样做),但我仍然希望有一种符合 TOS 的方式来找到路口。
旁注 - 似乎指定“types=route”永远不会返回任何结果,这进一步让我怀疑 Places 仅用于实际 POI,而不是用于导航,尽管 terms of service 不提及这方面的任何明确限制。
编辑:正如 Chris 所指出的,有专门为地理编码设计的地理编码 API,但除了通过多个查询之外,我仍然没有看到获得最近十字路口的方法。
【问题讨论】:
-
反向地理编码器总是只返回一个结果:它找到的最近的东西,所以你不能做你描述的事情。你到底想达到什么目的?
-
我正在尝试找到离我所在的点最近的交叉点。当我在十字路口时,至少我想要两条街道名称,但理想情况下我也想要最近的十字路口。我希望提供一定的半径大小会给我多个“路线”结果,我可以使用第二好的“路线”作为十字路口。
-
在测试中,我可以确认反向地理编码永远不会返回一个以上的结果:GoogleMap 认为最接近的结果。我也尝试了 google.maps.places.PlaceSearchRequest,但即使您要求“street_address”,它也不会返回任何内容(除非碰巧有人在附近标记了一个感兴趣的地方)。
-
是的,这与我在测试时得出的结论相同,这促使我发布了这个问题。我想知道除了提交多个查询之外是否有其他方法可以获得交叉点,或者如果除了通过多个查询之外没有其他方法可以做到这一点,那么查询数量最少的最有效的是什么。
-
有趣的问题,但我没有看到解决方案,即使有多个查询。假设您对最近的地址 N/S/E/W 进行 4 次查询,例如 200 米。当你在一个十字路口 200 米范围内时它会起作用,但当最近的十字路口在一公里之外时它就会失败。这让我回到了最初的问题:“最近的十字路口”有什么用处,什么时候它可能在几英里之外? IOW,底层用例是什么?如果您能解释您真正想要实现的目标,我们或许可以提供帮助。
标签: google-places-api google-geocoding-api