Résumé
Crée des adresses à partir des emplacements de points d’une classe d’entités. Le processus de géocodage inverse recherche l'adresse ou l'intersection la plus proche pour l'emplacement de point, d'après la distance de recherche spécifiée. Lors de l’utilisation de ArcGIS World Geocoding Service, cette opération peut consommer des crédits.
Les opérations de géocodage faisant appel à ArcGIS World Geocoding Service requièrent un abonnement d’organisation ArcGIS Online et consomment des crédits. Le compte d’organisation doit être muni d’un nombre suffisant de crédits pour répondre à l’intégralité de la demande de géocodage.
Utilisation
La classe d’entités en entrée doit contenir des formes de point avec des coordonnées x, y valides. Les adresses ne seront pas retournées sur des points aux coordonnées nulles.
La classe d'entités en sortie contiendra le même nombre d'enregistrements que la classe d'entités en entrée. Des champs supplémentaires contenant les adresses des résultats sont ajoutés à la classe d’entités. Les noms des champs reçoivent le préfixe REV_. Si une adresse est introuvable, les champs contiendront des valeurs vides.
Si la référence spatiale de la classe d'entités en entrée est différente de celle du localisateur d'adresses, ce dernier transforme les coordonnées à la volée et tente de trouver une correspondance. La référence spatiale de la classe d'entités en sortie sera enregistrée dans la même référence spatiale que celle de la classe d'entités en entrée. Pour modifier la référence spatiale de la classe d’entités en sortie, définissez un système de coordonnées en sortie différent dans les paramètres d’environnement de l’outil.
Si un point dans la classe d’entités en entrée ne retourne pas d’adresse, cela signifie que le localisateur d’adresse ne contient aucune entité pouvant être associée au point en entrée. Voici les raisons courantes du non-appariement des points :
- La distance de recherche est trop réduite pour que le point puisse trouver les entités les plus proches.
- Le point contient des coordonnées nulles.
- Les coordonnées du point sont incorrectes et ne peuvent pas être transformées en référence spatiale utilisée dans le localisateur d'adresses.
- Le localisateur d'adresses ne contient aucune entité de référence dans la zone pouvant être associée au point.
Vous pouvez augmenter la distance de recherche pour accroître la possibilité de trouver l’adresse la plus proche ou utiliser un localisateur d’adresses différent qui contient davantage d’entités ou qui couvre une zone plus étendue, de manière à apparier les points en entrée.
Un abonnement ArcGIS Online for organizations est nécessaire pour inverser le géocode d’une classe d’entités à l’aide de ArcGIS World Geocoding Service.
Syntaxe
arcpy.geocoding.ReverseGeocode(in_features, in_address_locator, out_feature_class, {address_type}, search_distance, {feature_type}, {location_type})
Paramètre | Explication | Type de données |
in_features | Classe ou couche d'entités ponctuelles à partir de laquelle les adresses sont retournées, d'après l'emplacement des points de l'entité. | Feature Layer |
in_address_locator | Localisateur d’adresses à utiliser pour inverser le géocodage de la couche ou classe d’entités en entrée. | Address Locator |
out_feature_class | Classe d'entités en sortie. | Feature Class |
address_type (Facultatif) | Indique si les adresses des points sont renvoyées sous forme d’adresses de rues ou d’adresses d’intersections si le localisateur prend en charge l’appariement d’intersections. Héritage :Ce paramètre ne concerne que les localisateurs créés avec l’outil Créer un localisateur d’adresses ou les localisateurs composites contenant des localisateurs créés avec l’outil Créer un localisateur d’adresses.
| String |
search_distance | Distance utilisée pour rechercher l'adresse ou l'intersection la plus proche pour l'emplacement de point. Certains localisateurs utilisent des valeurs de distance optimisées qui ne permettent pas de remplacer le paramètre de distance de recherche. La distance de recherche par défaut des localisateurs créés avec l’outil Créer un localisateur d’adresses est de 100 mètres. | Linear Unit |
feature_type [feature_type,...] (Facultatif) | Indique les types d’appariement possibles renvoyés. Une value unique ou plusieurs valeurs peuvent être sélectionnées. Lorsqu'une seule valeur est sélectionnée, la tolérance de recherche pour le type d'entité en entrée est de 500 mètres. Si plusieurs valeurs sont sélectionnées, alors les distances de recherche spécifiées dans la table hiérarchique du type d’entité s’appliquent. Consultez l’aide Web de l’API REST pour en savoir plus sur le paramètre featureTypes dans le cadre de l’opération reverseGeocode. Ce paramètre n’est pas pris en charge pour tous les localisateurs.
| String |
location_type (Facultatif) | Spécifie la géométrie de sortie préférée des correspondances POINT_ADDRESS. Les options de ce paramètre sont ROUTING_LOCATION, le côté d’une rue qui peut être utilisé pour le calcul de l’itinéraire ou ADDRESS_LOCATION, l’emplacement représentant le toit, le centroïde de parcelle de l’adresse ou la porte principale. Si l’emplacement préféré n’existe pas dans les données, l’emplacement par défaut de ROUTING_LOCATION est renvoyé à la place. Pour les résultats de géocodage avec Addr_type = "PointAddress", les valeurs attributaires x,y décrivent les coordonnées de l’adresse le long de la rue, tandis que les valeurs DisplayX et DisplayY décrivent les coordonnées du toit ou du centroïde du bâtiment. Consultez l’aide Web de l’API REST pour en savoir plus sur le paramètre locationType dans le cadre de l’opération reverseGeocode. Ce paramètre n’est pas pris en charge pour tous les localisateurs.
| String |
Exemple de code
Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction ReverseGeocode en mode immédiat.
import arcpy
arcpy.env.workspace = "C:/data/locations.gdb"
# Set local variables:
input_feature_class = "customers"
address_locator = "e:/StreetMap/data/Street_Addresses_US"
result_feature_class = "customers_with_address"
arcpy.ReverseGeocode_geocoding(input_feature_class, address_locator,
result_feature_class, "ADDRESS", "100 Meters")
Le script Python ci-dessous illustre l'utilisation de l'outil ReverseGeocode dans un script autonome.
# Description:
# Reverse Geocode customer point locations using a locator created with
# the Create Locator tool.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "c:/data/Atlanta.gdb"
# Set local variables
input_features = "MyCustomers"
locator = "c:/data/Atlanta/Atlanta_StreetAddress.loc"
reverse_output = "MyCustomers_Reverse_Streets"
addr_type = "ADDRESS"
search_distance = "0 Unknown"
feature_type = "STREET_INTERSECTION;STREET_ADDRESS"
location_type = "ROUTING_LOCATION"
# Execuste ReverseGeocode
arcpy.geocoding.ReverseGeocode(input_features, locator, reverse_output,
addr_type, search_distance, feature_type,
location_type)
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?