15

根据各种 参考资料,谷歌地图有一个名为的查询参数sll,它执行以下操作:

应执行业务搜索的点的纬度、经度。您可以使用它来执行偏离中心的业务搜索。谷歌使用它,以便“链接到此页面”可以记录在执行业务搜索后已移动中心的地图。请求路由 map.getBounds().getSouthWest().toUrlValue()时返回 maps.google.com 使用的相同值。

因此,例如,如果(43.464258, -80.52041)恰好在安大略省的滑铁卢,并且 (42.24370, -82.98320)恰好在安大略省的温莎(数百公里之外),那么我对上述文档的解释将是以下查询:

https://maps.google.ca/maps?saddr=43.464258,-80.52041&daddr=mcdonalds&sll=42.24370,-82.98320

将搜索滑铁卢温莎的一些麦当劳的“麦当劳”。

不幸的是,事实并非如此(点击查看!)。它最终从该点搜索到离该saddr最近的麦当劳。的值根本不考虑它。sll

但这就是奇怪的地方!如果我完全忽略这个sll参数,那么 Maps 会做一些完全出乎意料的事情:它会随机选择多伦多的一些麦当劳(距离滑铁卢温莎很多公里的城市)。我需要添加一些sll参数(对于任何值)以使 Maps 返回滑铁卢的结果(即使我要求的是温莎的结果)。

我是否误解了有关此参数的所有各种文档来源?这是地图端的错误吗?而且,最重要的是,是否有任何可行的方法来做我想做的事情,即使它根本不涉及sll参数?

4

1 回答 1

2

我可以通过一个简单的查询让它工作:

从:43.464258,-80.52041 到:42.24370,-82.98320 附近的麦当劳

这给出了预期的结果。near如果没有which 是关键字,它将无法工作。

from:43.464258,-80.52041 to:mcdonalds, Windsor如果您有城市名称,您也可以搜索。

关于sll(and sspn) 参数,它不适用于方向 AFAIK。它仅适用于搜索单个位置。

于 2012-07-29T10:26:21.397 回答