2013-10-09 127 views
0

谷歌地图API V3提供了两种方法将地址转换为LatLng:google.maps.Geocoder类和Google Geocoding API。虽然我发现当我尝试获取相同地址的LatLng时,这两种方法返回不同的结果。 google.maps.Geocoder更准确,因为我发现。这是为什么?为什么google.maps.Geocoder和Google Geocoding API返回不同的结果?

我需要制作一个应用程序来获取地址列表的LatLng,以便google.maps.Geocoder无法帮助您做到这一点,但Google Geocoding API并不准确。有任何想法吗?

例如:

下面的图片中,红色图标是google.maps.Geocoder的结果,蓝的是谷歌地理编码API的结果。他们都是从地址:“北京市新街口北街1号”

谢谢!

enter image description here

+0

作为尽管我知道它们是相同的,但我认为,如果您查看API http://**maps**.googleapis,则地理编码器不是独立服务。 com/** maps **/api/geocode/output?参数实际上它仍然赞同googlemaps API,您应该共享一些代码,以便我们可以检查它并找到可能的结果改变的结果,也许直接从API访问使用一些不同的默认值 – aleation

回答

0

他们都返回相同的坐标,对我来说:

http://www.geocodezip.com/v3_example_geo2.asp?addr1=1%20Xinjiekou%20North%20Street,%20Beijing,%20China&geocode=1

新街口1巷,西城区,北京,中国,100035(39.9416447,116.37176850000003)

http://maps.googleapis.com/maps/api/geocode/json?address=1%20Xinjiekou%20North%20Street,%20Beijing,%20China&sensor=false

 "location" : { 
      "lat" : 39.9416447, 
      "lng" : 116.3717685 
     }, 
+0

谢谢。但geocodezip如何工作?你如何获得坐标? –

+0

[That](http://www.geocodezip.com/v3_example_geo2.asp?addr1=1%20Xinjiekou%20North%20Street,%20Beijing,%20China&geocode=1)使用Google Maps JavaScript API v3 geocoder。 – geocodezip

+0

好的,谢谢。 –

0

看来的geometry.locationlatlng将被舍入到地理编码-API的7精度。

+0

谢谢你的答案! –

+0

这并不能解释地图中显示的差异。一个7位数的浮点数精确到0.1米(赤道约110.5公里/度)。显示的距离比这大。 – geocodezip

相关问题