2013-02-06 62 views
1

我很惊讶我是否做错了或没有。当我找到谷歌地图上的两个位置之间的距离说maps.google.co.uk,当我查询他们的API我得到不同的结果。我错过了somethng?谷歌地图和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&region=gb&sensor=false&alternatives=true&units=imperial

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

为什么会有这么多差异。我错过了什么。

+0

您的[第一个查询(在maps.google.co.uk上)](https://maps.google.co.uk/maps?saddr=Hyde+Park+角+站+骑士+伦敦+美国+英国及DADDR =的+丽思+伦敦+美国+英国和HL = EN&LL = 51.505323,-0.150375和SPN = 0.128005,0.220757&SLL = 32.824552,-117.108978&SSPN = 0.691256,0.883026和地理编码= %3BFfDvEQMd5tb9_yEUQAQegTVhWSlXyA_TKQV2SDEUQAQegTVhWQ&mra = mdsmb&disamb = 0&t = m&z = 12)不会为我返回任何路线。 – geocodezip

+0

总是有[Google Maps JavaScript API常见问题](https://developers.google.com/maps/faq#geocoder_differences) – geocodezip

回答

1

有谷歌地图和路线一样(或地理编码)服务

谷歌地图在第一是谷歌的地方实现之间显著的差异,这里这是个问题。 directions-service使用地址解析来解析地址,而Google地图使用PlacesService。

使用directionsRenderer绘制路线时,您会看到有不同的开始位置和结束位置。

但是,当您首次请求PlacesService获取地点的坐标并使用这些坐标请求directionsService时,您会在Google地图的结果附近获得结果(持续时间可能不同,因为directionsService by默认不会返回结果,具体取决于当前的流量)

+0

有没有什么方法可以获取与maps.google相同的准确距离。 co.uk – Amazert

+0

就像我在我的回答中所说的,首先请求placesService的坐标,并使用这些坐标来请求directionsService –