1

我很惊讶我是否做错了什么。当我在谷歌地图上找到两个位置之间的距离时,说 maps.google.co.uk,当我查询他们的 API 时,我得到不同的结果。我错过了什么吗?

起点:英国伦敦骑士桥海德公园角站目的地:英国伦敦丽兹酒店结果:1.2 英里

当我使用 api 时:

http://maps.googleapis.com/maps/api/directions/json?origin=Hyde%20Park%20Corner%20Station,%20Knightsbridge,%20London,%20United%20Kingdom&destination=The%20Ritz%20London,%20United%20Kingdom®ion= gb&sensor=false&alternatives=true&units=英制

结果:4.3 英里或 5.0 英里等。

为什么会有这么大的区别。我是不是错过了什么。

4

1 回答 1

3

谷歌地图和路线(或地理编码)等服务之间存在显着差异

Google Maps 最初是 Google Places 的一个实现,这就是这里的问题。方向服务使用地理编码来解析地址,而谷歌地图使用 PlacesService。

当您使用方向渲染器绘制路线时,您会看到有不同的起点和终点位置。

但是当你第一次请求 PlacesService 获取地点的坐标,并使用这些坐标来请求方向服务时,你会得到一个接近谷歌地图结果的结果(持续时间可能不同,因为方向服务默认不会返回结果取决于当前流量)

于 2013-02-06T13:18:41.373 回答