Vous pouvez également ordonner au service de géocodage de préférer les résultats
situés au sein d'une zone géographique donnée (exprimée sous la forme d'une
boîte englobante). Vous pouvez le faire en définissant le paramètre bounds
dans l'URL de la requête. Notez que seuls les résultats situés dans les limites
de la zone d'influence sont retenus, si des résultats plus pertinents existent
en dehors de ces limites, ils peuvent être inclus.
Le paramètre bounds définit les coordonnées latitude/longitude des coins Sud-Ouest et Nord-Est de cette boîte englobante en utilisant le caractère 'pipe' (|) pour séparer les coordonnées.
Géocodeur et zone d'influence réponse au format JSON
Par exemple, le géocodage de "Winnetka" renvoie généralement cette banlieue de Chicago :
Requête :
http://maps.googleapis.com/maps/api/geocode/json?address=Winnetka&sensor=true_OU_false
Important : dans la requête ci-dessus Le paramètre sensor a été laissé volontairement avec la variable true_OU_false afin de souligner que vous devez définir impérativement cette valeur de façon explicite sur true ou sur false.
Réponse :
/**
* Requête envoyée aux serveurs de Google :
*
* http://maps.googleapis.com/maps/api/geocode/json?address=Winnetka&sensor=false
*
* Ci-dessous la réponse retournée au format json :
*
*/
{
"results" : [
{
"address_components" : [
{
"long_name" : "Winnetka",
"short_name" : "Winnetka",
"types" : [ "locality", "political" ]
},
{
"long_name" : "New Trier",
"short_name" : "New Trier",
"types" : [ "administrative_area_level_3", "political" ]
},
{
"long_name" : "Comté de Cook",
"short_name" : "Comté de Cook",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Illinois",
"short_name" : "IL",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "États-Unis",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Winnetka, IL, États-Unis",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 42.12822690,
"lng" : -87.710960
},
"southwest" : {
"lat" : 42.0886090,
"lng" : -87.77086290
}
},
"location" : {
"lat" : 42.10808340000001,
"lng" : -87.7358950
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 42.1246370,
"lng" : -87.70388020
},
"southwest" : {
"lat" : 42.09152539999999,
"lng" : -87.76790980
}
}
},
"types" : [ "locality", "political" ]
}
],
"status" : "OK"
}
Cliquez sur le lien ci-desssous pour voir le résultat dans votre navigateur :
http://maps.googleapis.com/maps/api/geocode/json?address=Winnetka&sensor=false
Toutefois, l'ajout de l'argument bounds définissant une zone de délimitation de la vallée de San Fernando à Los Angeles des résultats dans ce géocode retourner le quartier nommé "Winnetka" à cet endroit :
Requête
http://maps.googleapis.com/maps/api/geocode/json?address=Winnetka&bounds=34.172684,-118.604794|34.236144,-118.500938&sensor=true_OU_false
Important : dans la requête ci-dessus Le paramètre sensor a été laissé volontairement avec la variable true_OU_false afin de souligner que vous devez définir impérativement cette valeur de façon explicite sur true ou sur false. Assurez-vous également qu'aucun espace existe entre les latitude et longitude passées dans le paramètre bounds.
Réponse
/**
* Requête envoyée aux serveurs de Google :
*
* http://maps.googleapis.com/maps/api/geocode/json?address=Winnetka&bounds=34.172684,-118.604794|34.236144,-118.500938&sensor=false
*
* Ci-dessous la réponse retournée au format json :
*
*/
{
"results" : [
{
"address_components" : [
{
"long_name" : "Winnetka",
"short_name" : "Winnetka",
"types" : [ "neighborhood", "political" ]
},
{
"long_name" : "Los Angèle",
"short_name" : "Los Angèle",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Vallée de San Fernando",
"short_name" : "Vallée de San Fernando",
"types" : [ "administrative_area_level_3", "political" ]
},
{
"long_name" : "Comté de Los Angeles",
"short_name" : "Comté de Los Angeles",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Californie",
"short_name" : "CA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "États-Unis",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Winnetka, Los Angeles, Californie, États-Unis",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 34.2353090,
"lng" : -118.55341910
},
"southwest" : {
"lat" : 34.1791050,
"lng" : -118.588320
}
},
"location" : {
"lat" : 34.20833330,
"lng" : -118.57527780
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 34.22678660,
"lng" : -118.5432630
},
"southwest" : {
"lat" : 34.1898760,
"lng" : -118.60729260
}
}
},
"types" : [ "neighborhood", "political" ]
}
],
"status" : "OK"
}
Cliquez sur le lien ci-desssous pour voir le résultat dans votre navigateur :
Géocodeur et zone d'influence réponse au format XML
Les exemples qui suivent sont identiques aux précédents. Seul le format de sortie change : XML.
Par exemple, le géocodage de "Winnetka" renvoie généralement cette banlieue de Chicago :
Requête :
http://maps.googleapis.com/maps/api/geocode/xml?address=Winnetka&sensor=true_OU_false
Important : dans la requête ci-dessus Le paramètre sensor a été laissé volontairement avec la variable true_OU_false afin de souligner que vous devez définir impérativement cette valeur de façon explicite sur true ou sur false.
Réponse :
/** * Requête envoyée aux serveurs de Google : * * http://maps.googleapis.com/maps/api/geocode/xml?address=Winnetka&sensor=false * * Ci-dessous la réponse retournée au format xml : * */ <?xml version="1.0" encoding="UTF-8"?> <GeocodeResponse> <status>OK</status> <result> <type>locality</type> <type>political</type> <formatted_address>Winnetka, IL, États-Unis</formatted_address> <address_component> <long_name>Winnetka</long_name> <short_name>Winnetka</short_name> <type>locality</type> <type>political</type> </address_component> <address_component> <long_name>New Trier</long_name> <short_name>New Trier</short_name> <type>administrative_area_level_3</type> <type>political</type> </address_component> <address_component> <long_name>Comté de Cook</long_name> <short_name>Comté de Cook</short_name> <type>administrative_area_level_2</type> <type>political</type> </address_component> <address_component> <long_name>Illinois</long_name> <short_name>IL</short_name> <type>administrative_area_level_1</type> <type>political</type> </address_component> <address_component> <long_name>États-Unis</long_name> <short_name>US</short_name> <type>country</type> <type>political</type> </address_component> <geometry> <location> <lat>42.1080834</lat> <lng>-87.7358950</lng> </location> <location_type>APPROXIMATE</location_type> <viewport> <southwest> <lat>42.0915254</lat> <lng>-87.7679098</lng> </southwest> <northeast> <lat>42.1246370</lat> <lng>-87.7038802</lng> </northeast> </viewport> <bounds> <southwest> <lat>42.0886090</lat> <lng>-87.7708629</lng> </southwest> <northeast> <lat>42.1282269</lat> <lng>-87.7109600</lng> </northeast> </bounds> </geometry> </result> </GeocodeResponse>
Cliquez sur le lien ci-desssous pour voir le résultat dans votre navigateur :
http://maps.googleapis.com/maps/api/geocode/xml?address=Winnetka&sensor=false
Toutefois, l'ajout de l'argument bounds définissant une zone de délimitation de la vallée de San Fernando à Los Angeles des résultats dans ce géocode retourner le quartier nommé "Winnetka" à cet endroit :
Requête
http://maps.googleapis.com/maps/api/geocode/xml?address=Winnetka&bounds=34.172684,-118.604794|34.236144,-118.500938&sensor=true_OU_false
Important : dans la requête ci-dessus Le paramètre sensor a été laissé volontairement avec la variable true_OU_false afin de souligner que vous devez définir impérativement cette valeur de façon explicite sur true ou sur false. Assurez-vous également qu'aucun espace existe entre les latitude et longitude passées dans le paramètre bounds.
Réponse
/** * Requête envoyée aux serveurs de Google : * * http://maps.googleapis.com/maps/api/geocode/xml?address=Winnetka&bounds=34.172684,-118.604794|34.236144,-118.500938&sensor=false * * Ci-dessous la réponse retournée au format xml : * */ <?xml version="1.0" encoding="UTF-8"?> <GeocodeResponse> <status>OK</status> <result> <type>neighborhood</type> <type>political</type> <formatted_address>Winnetka, Los Angeles, Californie, États-Unis</formatted_address> <address_component> <long_name>Winnetka</long_name> <short_name>Winnetka</short_name> <type>neighborhood</type> <type>political</type> </address_component> <address_component> <long_name>Los Angèle</long_name> <short_name>Los Angèle</short_name> <type>locality</type> <type>political</type> </address_component> <address_component> <long_name>Vallée de San Fernando</long_name> <short_name>Vallée de San Fernando</short_name> <type>administrative_area_level_3</type> <type>political</type> </address_component> <address_component> <long_name>Comté de Los Angeles</long_name> <short_name>Comté de Los Angeles</short_name> <type>administrative_area_level_2</type> <type>political</type> </address_component> <address_component> <long_name>Californie</long_name> <short_name>CA</short_name> <type>administrative_area_level_1</type> <type>political</type> </address_component> <address_component> <long_name>États-Unis</long_name> <short_name>US</short_name> <type>country</type> <type>political</type> </address_component> <geometry> <location> <lat>34.2083333</lat> <lng>-118.5752778</lng> </location> <location_type>APPROXIMATE</location_type> <viewport> <southwest> <lat>34.1898760</lat> <lng>-118.6072926</lng> </southwest> <northeast> <lat>34.2267866</lat> <lng>-118.5432630</lng> </northeast> </viewport> <bounds> <southwest> <lat>34.1791050</lat> <lng>-118.5883200</lng> </southwest> <northeast> <lat>34.2353090</lat> <lng>-118.5534191</lng> </northeast> </bounds> </geometry> </result> </GeocodeResponse>
Cliquez sur le lien ci-desssous pour voir le résultat dans votre navigateur :
