在Google Maps API文档中,我可以在哪里找到一张表格来解释Geocode查询的accuracy
值?
V2和V3之间的值范围是否有变化?
在Google Maps API文档中,我可以在哪里找到一张表格来解释Geocode查询的accuracy
值?
V2和V3之间的值范围是否有变化?
这里是来自 geocoder
的真实状态回答:
您可以在地理编码函数内输出status
:
myMap.geocoder.geocode(
{ address: someAdress } ),
function ( responses, status ) {
console.log( status );
}
);
在传递 status
时,您可以切换这四个值:
switch ( status )
{
case 'ROOFTOP' :
var precision = 'precise';
break;
case 'RANGE_INTERPOLATED' :
var precision = 'interpolated';
break;
case 'APPROXIMATE' :
var precision = 'approximately';
break;
case 'ZERO_RESULTS' :
var precision = 'no address';
break;
}
@Pekka
我不知道你是否注意到,但是 V3 不再包括准确度。然而,似乎有一种不同的方法。如果您将 address_component 元素的结果相加,您将获得类似的结果。免责声明:我并不 100% 确定这一点,但看起来他们是通过这种方式包含了准确度。我目前正在进行一些测试,看看这是否是正确的方法。
以下是一个示例:
我搜索的地址是:555 Pearl Street, Boulder。
这里是具有地址级别准确度(深度为 8 级)的结果。
[address_component] => Array
(
[0] => SimpleXMLElement Object
(
[long_name] => 555
[short_name] => 555
[type] => street_number
)
[1] => SimpleXMLElement Object
(
[long_name] => Pearl St
[short_name] => Pearl St
[type] => route
)
[2] => SimpleXMLElement Object
(
[long_name] => Boulder
[short_name] => Boulder
[type] => Array
(
[0] => locality
[1] => political
)
)
[3] => SimpleXMLElement Object
(
[long_name] => Boulder
[short_name] => Boulder
[type] => Array
(
[0] => administrative_area_level_3
[1] => political
)
)
[4] => SimpleXMLElement Object
(
[long_name] => Boulder
[short_name] => Boulder
[type] => Array
(
[0] => administrative_area_level_2
[1] => political
)
)
[5] => SimpleXMLElement Object
(
[long_name] => Colorado
[short_name] => CO
[type] => Array
(
[0] => administrative_area_level_1
[1] => political
)
)
[6] => SimpleXMLElement Object
(
[long_name] => United States
[short_name] => US
[type] => Array
(
[0] => country
[1] => political
)
)
[7] => SimpleXMLElement Object
(
[long_name] => 80302
[short_name] => 80302
[type] => postal_code
)
)
accuracy
已经消失了。它似乎被一个新的值所取代,出现在geometrics
部分(或者叫做其他分支在同一XML输出中,我没有数据方便查看),当地址完全编码时,它会显示为ROOFTOP
,而当地址不是精确的时候,它会显示一系列其他值,以及你引用的地址组件。 - Pekka