Proche (Analyse)
Récapitulatif
Détermine la distance entre chaque entité dans les entités en entrée et l'entité la plus proche dans les entités de proximité, à l'intérieur du rayon de recherche.
Illustration
Utilisation
-
Les deux champs suivants sont ajoutés à la table attributaire des Entités en entrée. Si les champs existent déjà, les valeurs de champ sont mises à jour.
- NEAR_FID : stocke l'identifiant d'entité de l'entité la plus proche.
- NEAR_DIST : stocke la distance entre une entité en entrée et l'entité la plus proche.
-
NEAR_FID et NEAR_DIST ont la valeur -1 si aucune entité n'est trouvée dans le rayon de recherche.
Par ailleurs, les champs NEAR_X, NEAR_Y, NEAR_ANGLE et NEAR_FC peuvent éventuellement être ajoutés à la table attributaire des entités en entrée, comme indiqué dans les entrées concernant les entités de proximité et les paramètres facultatifs. Si un champ existe déjà, sa valeur est mise à jour. Si aucune entité ne figure dans le rayon de recherche, les valeurs de ces champs sont -1 pour NEAR_X et NEAR_Y, 0 pour NEAR_ANGLE et nul pour NEAR_FC.
-
Les entités en entrée et les entités de proximité peuvent être des points, des multi-points, des lignes ou des polygones.
-
Les Entités de proximité peuvent comprendre une ou plusieurs classes d'entités ayant des types de forme différents.
-
Un même jeu de données peut être utilisé à la fois pour les Entités en entrée et les Entités de proximité. Lorsque l'entité la plus proche d'une entité en entrée est elle-même (NEAR_DIST égal à 0), cette entité est ignorée du calcul et la prochaine entité la plus proche est recherchée.
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,...] |
Entités de proximité utilisées 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 d'accès de la classe d'entités source qui contient les entités les plus proches. | Feature Layer |
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. Vous pouvez spécifier toute unité de distance qui remplace l'unité par défaut des entités en entrée. | Linear unit |
location (Facultatif) |
Spécifie si les coordonnées y et y de l'emplacement le plus proche de l'entité de proximité seront é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 de l'axe des x (axe horizontal) dans la direction de la ligne qui connecte une entité en entrée avec son entité la plus proche à leurs emplacements les plus proches ; cette valeur est comprise dans une plage allant de 0 à 180 ou de 0 à -180 degrés décimaux.
| Boolean |
Exemple de code
Le script de fenêtre interactive Python ci-dessous illustre l'utilisation de la fonction Proche en mode immédiat.
import arcpy arcpy.env.workspace = "C:/data/city.gdb" ## find the nearest road from each house arcpy.Near_analysis('houses', 'roads')
Le script Python ci-dessous illustre l'utilisation de la fonction Proche dans un script autonome.
# Name: Near.py # Description: Finds nearest features from input feature class to near feature class. # Author: ESRI import arcpy from arcpy import env # Set workspace environment env.workspace = "C:/data/city.gdb" # set local variables inFeatures = "houses" nearFeatures = "parks" # find features only within search radius searchRadius = "5000 Meters" # find location & angle of nearest features location = "true" angle = "true" # execute the function arcpy.Near_analysis(inFeatures, nearFeatures, searchRadius, location, angle)