Générer la table de proximité (Analyse)
Récapitulatif
Permet de déterminer les distances entre chaque entité des entités en entrée et une ou plusieurs entités rapprochées dans les entités de proximité, à l'intérieur du rayon de recherche. Les résultats sont enregistrés dans la table en sortie.
Pour en savoir plus sur le calcul de la proximité par les outils de géotraitement
Illustration
Utilisation
-
Cet outil a le même comportement que l'outil Proche. En revanche, au lieu de mettre à jour les entités en entrée, il crée une table en sortie. De plus, il permet de rechercher au maximum le nombre d'entités proches spécifié par le paramètre Nombre max. de résultats les plus proches.
Par défaut, la table en sortie contient trois champs : IN_FID, NEAR_FID et NEAR_DIST. Des champs supplémentaires sont ajoutés à la sortie en fonction des paramètres facultatifs sélectionnés, comme indiqué dans l'entrée de paramètre.
- IN_FID - Stocke l'ID d'entité de l'entité en entrée.
- NEAR_FID : stocke l'identifiant de l'entité la plus proche.
- NEAR_DIST : stocke la distance entre l'entité en entrée et l'entité la plus proche. La valeur de ce champ est exprimée dans l'unité linéaire du système de coordonnées des entités en entrée.
-
La table en sortie peut être jointe à la classe d'entités en entrée ou à une classe d'entités de proximité à l'aide des champs IN_FID ou NEAR_FID.
-
Les entités en entrée et les entités de proximité peuvent être des points, des multi-points, des lignes ou des polygones.
-
L'option par défaut pour cet outil correspond à déterminer la distance entre chaque entité en entrée et l'entité de proximité la plus rapprochée. Sélectionnez l'option ALL en désactivant le paramètre Rechercher uniquement l'entité la plus proche pour créer une table contenant la distance entre toutes les entités en entrée et toutes les entités de proximité.
-
NEAR_FID et NEAR_DIST ont la valeur -1 si aucune entité n'est trouvée dans le rayon de recherche.
-
Si aucune valeur Rayon de recherche n'est spécifiée, un rayon suffisamment grand est utilisé afin que toutes les entités de proximité puissent être intégrées dans le calcul de la distance. Si le rayon de recherche par défaut est utilisé (aucun rayon n'est spécifié), la table en sortie peut être assez grande. Par exemple, le calcul de distances de 1 000 points dans une classe d'entités à 1 000 points dans une autre classe d'entités peut produire une table en sortie contenant 1 million d'enregistrements. Utilisez le rayon de recherche pour limiter le nombre d'enregistrements en sortie.
-
Les Entités en entrée et les Entités de proximité peuvent correspondre au même jeu de données. Dans ce cas, lorsque les entités en entrée et de proximité correspondent au même enregistrement, ce résultat est ignoré afin de ne pas signaler que chaque entité est à 0 unité d'elle-même.
Les entités en entrée peuvent correspondre à une couche sur laquelle vous avez effectué une sélection. Les entités sélectionnées sont utilisées et mises à jour durant l'exécution de l'outil. La valeur des champs nouvellement créés (comme NEAR_FID et NEAR_DIST) pour les entités restantes est définie sur -1.
Les distances calculées par cet outil sont exprimées dans l'unité du système de coordonnées des entités en entrée. Si votre entrée se trouve dans un système de coordonnées géographiques et si vous souhaitez que les distances en sortie soient mesurées dans une unité linéaire (par opposition aux degrés décimaux), vous devez tout d'abord projeter votre entrée vers un système de coordonnées projetées à l'aide de l'outil Projeter. Pour des résultats optimaux, utilisez une projection équidistante ou une projection prévue pour votre zone d'étude (UTM, par exemple).
Syntaxe
Paramètre | Explication | Type de données |
in_features |
Entités en entrée qui peuvent être de type point, polyligne, polygone ou multi-points. | Feature Layer |
near_features [near_features,...] |
Valeur utilisée pour retrouver les entités les plus proches d'entités en entrée. Il peut y avoir une ou plusieurs entrées d'entités de proximité : chaque entrée peut être de type point, polyligne, polygone ou multi-points. Lorsque plusieurs entrées d'entités de proximité sont spécifiées, un nouveau champ, NEAR_FC, est ajouté à la table en entrée pour stocker les chemins de la classe d'entités source qui contient les entités les plus proches. | Feature Layer |
out_table |
Table en sortie devant accueillir les informations de proximité, telles que IN_FID, NEAR_FID et NEAR_DIST, et d'autres attributs, tels que l'emplacement (NEAR_X, NEAR_Y) et l'angle (NEAR_ANGLE), de l'entité de proximité, ainsi que NEAR_FC, si nécessaire. | Table |
search_radius (Facultatif) |
Spécifie le rayon utilisé pour rechercher les entités de proximité candidates. Les entités de proximité dans ce rayon sont prises en compte pour le calcul de l'entité la plus proche. Si aucune valeur n'est spécifiée, autrement dit si le rayon par défaut (vide) est utilisé, toutes les entités de proximité sont prises en compte pour le calcul. Par défaut, l'unité du rayon de recherche correspond à celles du système de coordonnées des unités en entrée. Vous pouvez changer les unités. Par défaut, cela n'a aucun impact sur les unités du champ NEAR_DIST qui est basé sur les unités du système de coordonnées des entités en entrée. | Linear unit |
location (Facultatif) |
Spécifie si les coordonnées x et y de l'emplacement le plus proche de l'entité de proximité sont écrites dans de nouveaux champs, à savoir respectivement NEAR_X et NEAR_Y.
| Boolean |
angle (Facultatif) |
Spécifie si les valeurs d'angle de proximité en degrés décimaux seront calculées et écrites dans un nouveau champ, NEAR_ANGLE. Un angle de proximité effectue une mesure à partir de l'axe des x (axe horizontal) dans la direction de la ligne qui connecte une entité en entrée à son entité la plus proche, à leurs emplacements les plus proches. Cette valeur est comprise entre 0 et 180 ou 0 et -180 degrés décimaux, -0 à l'est, 90 au nord, 180 (-180°) à l'ouest et -90 au sud.
| Boolean |
closest (Facultatif) |
Détermine s'il faut localiser et renvoyer uniquement les entités les plus proches ou toutes les entités situées dans le rayon de recherche.
| Boolean |
closest_count (Facultatif) |
Rechercher uniquement le nombre spécifié d'entités les plus proches. Ce paramètre n'est pas utilisé si l'option Rechercher uniquement l'entité la plus proche est activée. | Long |
Exemple de code
L'extrait ci-dessous illustre l'utilisation de la fonction GenerateNearTable dans la fenêtre Python.
import arcpy
arcpy.env.workspace = "C:/data/input/gnt.gdb"
arcpy.GenerateNearTable_analysis("campsites", ["parks", "trails"], "better_sites")
Le script Python ci-dessous illustre l'utilisation de la fonction GenerateNearTable dans un script autonome.
# Name: GenerateNearTable.py
# Description: Finds 3 nearest in the near feature class from the input feature class.
# import system modules
import arcpy
# set workspace environment
arcpy.env.workspace = "C:/data/input/gnt.gdb"
# set required parameters
in_features = "campsites"
near_features = ["parks", "trails"]
out_table = "near_parks_trails"
# optional parameters
search_radius = '1500 Meters'
location = 'NO_LOCATION'
angle = 'NO_ANGLE'
closest = 'ALL'
closest_count = 3
try:
# find crime locations within the search radius
arcpy.GenerateNearTable_analysis(in_features, near_features, out_table, search_radius,
location, angle, closest, closest_count)
except:
print arcpy.GetMessages()