Ebo*_*ike 13 google-geocoding-api google-places-api
我正在尝试使用Google Places API找到最近的两条街道(基本上是指示最近的交叉点).但是,任何结果只会返回一条"路线",如果有的话.
我想我可以用+或X模式做5个查询,但这很麻烦,不可靠,当然会更快地达到查询限制.
我很想说这是一个刻意的举动,因为API并不是用于导航系统之类的东西(我不想做),但我仍然希望有一种符合TOS标准的方式来获得交集.
旁注 - 似乎指定"types = route"永远不会返回任何结果,这进一步加剧了我的怀疑,即Places实际上只是用于实际的POI,而不是用于导航,尽管服务条款没有提及任何明确的在这方面的限制.
编辑:正如克里斯指出的那样,Geocoding API专门用于地理编码,但除了通过多个查询之外,我仍然没有看到获得最近的十字路口的方法.
dmz*_*zza 11
GeoNames为纬度/经度坐标的最近交点提供地理编码API.
http://www.geonames.org/maps/us-reverse-geocoder.html#findNearestIntersection
JSON响应如下所示:
{"intersection":
{"adminName2":"San Mateo",
"street2":"Curtis St",
"postalcode":"94025",
"street1":"Roble Ave",
"adminCode1":"CA",
"distance":"0.08",
"countryCode":"US",
"lng":"-122.180842",
"placename":"Menlo Park",
"lat":"37.450649",
"adminName1":"California"
},
"credits":"1.0"
}
Run Code Online (Sandbox Code Playgroud)
street1并且street2是十字路口.
一致认为,Google的反向地理编码器不够复杂,无法在一个查询中报告交叉点.也就是说,没有一个参数可以用来告诉他们你只想要结果"types" : [ "intersection" ].谷歌正在这里吃自己的狗食; 如果您在maps.google搜索框中输入纬度/经度,则总会得到一条街道(用谷歌的说法,即"路线").
正如您所指出的那样,您可以通过大量的启发式方法来获得令人垂涎的["intersection"]类型.
例如,第一世界城市的几个"主要"交叉路口都有描述交叉口的交通站点.如果任何结果都有 "types" : [ "bus_station", "transit_station" ]元素,您可以尝试将该"long_name"元素作为搜索词,并希望得到一个交集.smirkingman还提到了一个可行的解决方案.这两个问题都需要2个以上的查询.
总之,Google Geocoding API中没有latelngToIntersection(lat,lng)类型的函数.Google自己的maps.google页面中存在此证据.我会以不同方式攻击您的问题.如果您想获得GPS位置最近的主要交叉路口,可能有助于用户提供帮助.众所周知,地理编码充满了肮脏的人性.
| 归档时间: |
|
| 查看次数: |
21568 次 |
| 最近记录: |