Générer la table de proximité (Analyse)

Synthèse

Calcule les distances et autres informations de proximité entre les entités dans une ou plusieurs classes d’entités ou couches. À la différence de l’outil Proche, qui modifie l’entrée, l’outil Générer la table de proximité écrit les résultats dans une nouvelle table autonome et permet de rechercher plusieurs entités de proximité.

En savoir plus sur le calcul de la proximité par les outils de géotraitement

Illustration

Générer la table de proximité

Utilisation

  • La table en sortie contiendra les champs suivants :

    • IN_FID— ObjectID de l'entité en entrée.
    • NEAR_FID— ObjectID de l'entité la plus proche.
    • NEAR_DIST— Distance de l’entité en entrée par rapport à l’entité de proximité. La valeur de ce champ est exprimée dans l’unité linéaire du système de coordonnées de l’entité en entrée ou en mètres si le paramètre Méthode est défini sur GEODESIC et que l’entrée est dans un système de coordonnées géographiques.
    • NEAR_FC— Chemin d'accès du catalogue à la classe d'entités qui contient l'entité de proximité. Ce champ est ajouté à la table en sortie uniquement lorsque plusieurs entités de proximité sont spécifiées.
    • NEAR_RANK— Valeur d’entier classant toutes les entités de proximité selon leur proximité par rapport à une entité en entrée individuelle. L'entité la plus proche obtient une valeur NEAR_RANK égale à 1, la deuxième plus proche obtient une valeur NEAR_RANK égale à 2, etc.

    Les champs suivants seront ajoutés à la table en sortie si le paramètre Emplacement est sélectionné (paramètre location défini sur LOCATION dans Python). L’unité des valeurs des champs dépend de la méthode sélectionnée dans le paramètre Method (Méthode). S'il est défini sur PLANAR, la valeur est exprimée dans l'unité linéaire du système de coordonnées de l'entité en entrée. S'il est défini sur GEODESIC, la valeur est exprimée dans le système de coordonnées géographiques associé au système de coordonnées de l'entité en entrée.

    • FROM_X— Coordonnée X de l'emplacement de l'entité en entrée la plus proche de l'entité de proximité. FROM_X— Coordonnée Y de l'emplacement de l'entité en entrée la plus proche de l'entité de proximité.
    • NEAR_X— Coordonnée X de l’emplacement de l’entité de proximité la plus proche de l’entité en entrée.
    • NEAR_Y— Coordonnée Y de l’emplacement de l’entité de proximité la plus proche de l’entité en entrée.

    Le champ suivant sera ajouté à la table en sortie si le paramètre Angle est sélectionné (paramètre angle défini sur ANGLE dans le script).

    • NEAR_ANGLE— Angle de la ligne aux emplacements FROM_X et FROM_Y qui relie les entités en entrée à l'entité de proximité.

  • Lorsque l'entité en entrée et l'entité de proximité s'intersectent, les valeurs suivantes sont écrites dans la table en sortie :

    • NEAR_ANGLE etNEAR_DIST sont définis sur 0.0.
    • FROM_X et FROM_Y sont identiques à NEAR_X et NEAR_Y est un emplacement dans l'intersection des deux entités.

  • Les valeurs du champ NEAR_DIST sont exprimées dans l’unité linéaire du système de coordonnées des entités en entrée. SI l’entrée se trouve dans un système de coordonnées géographiques et que le paramètre Méthode est défini sur GEODESIC, les unités de NEAR_DIST sont des mètres.

  • La table en sortie peut être jointe aux entités en entrée grâce au champ IN_FIDou aux entités de proximité grâce au champ NEAR_FID.

  • Si un Search Radius (Rayon de recherche) est spécifié et qu’aucune entité de proximité n’est trouvée, aucun enregistrement n’est généré en sortie.

  • Si aucun Search Radius (Rayon de recherche) n’est spécifié, toutes les entités de proximité sont considérées comme des candidats.

  • Si aucun rayon de recherche n'est spécifié, que la case Rechercher uniquement l’entité la plus proche n'est pas sélectionnée (closest défini sur ALL dans Python), et que l'option Nombre max. de résultats les plus proches demeure définie sur la valeur par défaut (0 ou vide), la table en sortie contient des calculs de distance entre toutes les entités en entrée et toutes les entités de proximité. Ce type de processus peut prendre du temps et créer une table en sortie volumineuse. Par exemple, si vous avez mille entités en entrée et mille entités de proximité, la table en sortie contient un million d'enregistrements.

  • La même classe d'entités ou couche peut être utilisée à la fois sur des entités en entrée et de proximité. Dans ce cas, l'entité en entrée en cours d'évaluation est exclue des candidats d'entités en entrée, afin d'éviter que toutes les entités soient les plus proches d'elles-mêmes.

  • Lorsque vous utilisez l’option Planar (Planaire) pour le paramètre Method (Méthode), les entités en entrée doivent se trouver dans une projection adéquate pour la mesure de distance (par exemple, une projection équidistante).

    En savoir plus sur les systèmes de coordonnées et projections

  • Pour visualiser les emplacements FROM_X, FROM_Y, NEAR_X et NEAR_Y, la table en sortie peut être utilisée en tant qu'entrée pour l'outil Générer une couche d’événements XY ou XY vers lignes.

Paramètres

ÉtiquetteExplicationType de données
Entités en entrée

Entités en entrée qui peuvent être de type point, polyligne, polygone ou multi-points.

Feature Layer
Entités de proximité

Une ou plusieurs couches de classes d’entités contenant des candidats d’entités de proximité. Les entités en entrée de proximité peuvent être de type point, polyligne, polygone ou multi-points. Si plusieurs couches ou classes d’entités sont spécifiées, un champ nommé NEAR_FC est ajouté à la table en entrée pour stocker les chemins de la classe d’entités source contenant l’entité la plus proche trouvée. La même classe d'entités ou couche peut être utilisée à la fois sur des entités en entrée et de proximité.

Feature Layer
Table en sortie

Table en sortie contenant le résultat de l'analyse.

Table
Rayon de recherche
(Facultatif)

Rayon utilisé pour rechercher les entités de proximité. Si aucune valeur n’est spécifiée, toutes les entités de proximité sont candidates. Si une distance est saisie, mais que l’unité est laissée vide ou définie comme étant inconnue, les unités du système de coordonnées des entités en entrée sont utilisées. Si l’option Geodesic (Géodésique) est utilisée dans le paramètre Method (Méthode), vous devez utiliser une unité linéaire telle que le kilomètre ou le mile.

Linear Unit
Emplacement
(Facultatif)

Spécifie si les coordonnées x et y de l'emplacement de l'entité en entrée et de l'emplacement le plus proche de l'entité de proximité sont écrites dans des champs FROM_X, FROM_Y, NEAR_X et NEAR_Y.

  • Non sélectionnée : les emplacements ne sont pas écrits dans la table en sortie. Il s’agit de l’option par défaut.
  • Sélectionnée : les emplacements sont écrits dans la table en sortie.
Boolean
Angle
(Facultatif)

Spécifie si les valeurs d’angle de proximité sont calculées et écrites dans un champ NEAR_ANGLEdans la table en sortie. Un angle de proximité mesure la direction de la ligne qui connecte une entité en entrée avec son entité la plus proche à leurs emplacements les plus proches. Lorsque la méthode planaire est utilisée dans le paramètre Méthode, l'angle se situe dans la plage -180° à 180°, avec 0° à l'est, 90° au nord, 180° (ou -180°) à l'ouest et -90° au sud. Lorsque la méthode Géodésique est utilisée, l'angle se situe dans la plage -180° à 180°, avec 0° au nord, 90° à l'est, 180° (ou -180°) au sud et -90° à l'ouest.

  • Non sélectionnée : la valeur NEAR_ANGLE n'est pas ajoutée à la table en sortie. Il s’agit de l’option par défaut.
  • Sélectionnée : la valeur NEAR_ANGLE est ajoutée à la table en sortie.
Boolean
Rechercher uniquement l'entité la plus proche
(Facultatif)

Indique si les entités les plus proches ou plusieurs entités uniquement doivent être retournées.

  • Sélectionnée : seul l’emplacement de l’entité la plus proche est écrit dans la table en sortie. Il s’agit de l’option par défaut.
  • Désélectionnée : plusieurs entités de proximité sont écrites dans la table en sortie (vous pouvez préciser une limite dans le paramètre Maximum number of closest matches (Nombre max. de résultats les plus proches)).
Boolean
Nombre maximal de résultats les plus proches
(Facultatif)

Limitez le nombre d’entités de proximité signalées pour chaque entité en entrée. Ce paramètre est désactivé si l’option Find only closest feature (Rechercher uniquement l’entité la plus proche) est sélectionnée.

Long
Méthode
(Facultatif)

Détermine s’il convient d’utiliser un plus court chemin sur une sphéroïde (géodésique) ou une méthode de terre plate (plane). Il est fortement conseillé d’utiliser la méthode Geodesic (Géodésique) avec des données stockées dans un système de coordonnées non approprié pour les mesures de distance (par exemple, Web Mercator et tout système de coordonnées géographiques) ou tout jeu de données couvrant une zone géographique importante.

  • planeUtilise des distances planes entre les entités. Il s’agit de l’option par défaut.
  • GéodésiqueUtilise des distances géodésiques entre les entités. Cette méthode tient compte de la courbure de la sphéroïde et gère correctement les données situées près de la ligne de changement de jour et des pôles.
String

arcpy.analysis.GenerateNearTable(in_features, near_features, out_table, {search_radius}, {location}, {angle}, {closest}, {closest_count}, {method})
NomExplicationType 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,...]

Une ou plusieurs couches de classes d’entités contenant des candidats d’entités de proximité. Les entités en entrée de proximité peuvent être de type point, polyligne, polygone ou multi-points. Si plusieurs couches ou classes d’entités sont spécifiées, un champ nommé NEAR_FC est ajouté à la table en entrée pour stocker les chemins de la classe d’entités source contenant l’entité la plus proche trouvée. La même classe d'entités ou couche peut être utilisée à la fois sur des entités en entrée et de proximité.

Feature Layer
out_table

Table en sortie contenant le résultat de l'analyse.

Table
search_radius
(Facultatif)

Rayon utilisé pour rechercher les entités de proximité. Si aucune valeur n’est spécifiée, toutes les entités de proximité sont candidates. Si une distance est saisie, mais que l’unité est laissée vide ou définie comme étant inconnue, les unités du système de coordonnées des entités en entrée sont utilisées. Si l’option GEODESIC est utilisée dans le paramètre method, une unité linéaire telle que le kilomètre ou le mile doit être utilisée.

Linear Unit
location
(Facultatif)

Spécifie si les coordonnées x et y de l'emplacement de l'entité en entrée et de l'emplacement le plus proche de l'entité de proximité sont écrites dans les champs FROM_X, FROM_Y, NEAR_X et NEAR_Y.

  • NO_LOCATIONLes emplacements ne sont pas écrits dans la table en sortie. Il s’agit de l’option par défaut.
  • LOCATIONLes emplacements sont écrits dans la table en sortie.
Boolean
angle
(Facultatif)

Spécifie si les valeurs d’angle de proximité sont calculées et écrites dans un champ NEAR_ANGLEdans la table en sortie. Un angle de proximité mesure la direction de la ligne qui connecte une entité en entrée avec son entité la plus proche à leurs emplacements les plus proches. Lorsque la méthode PLANAR est utilisée dans le paramètre method, l'angle se situe dans la plage -180° à 180°, avec 0° à l'est, 90° au nord, 180° (ou -180°) à l'ouest et -90° au sud. Lorsque la méthode GEODESIC est utilisée, l'angle se situe dans la plage -180° à 180°, avec 0° au nord, 90° à l'est, 180° (ou -180°) au sud et -90° à l'ouest.

  • NO_ANGLENEAR_ANGLE La valeur n'est pas ajoutée à la table en sortie. Il s’agit de l’option par défaut.
  • ANGLENEAR_ANGLE La valeur est ajoutée à la table en sortie.
Boolean
closest
(Facultatif)

Indique si les entités les plus proches ou plusieurs entités uniquement doivent être retournées.

  • CLOSESTSeul l’emplacement de l’entité la plus proche est écrit dans la table en sortie. Il s’agit de l’option par défaut.
  • ALLPlusieurs entités de proximité sont écrites dans la table en sortie (vous pouvez préciser une limite dans le paramètre closest_count).
Boolean
closest_count
(Facultatif)

Limitez le nombre d’entités de proximité signalées pour chaque entité en entrée. Ce paramètre est ignoré si le paramètre closest est défini sur CLOSEST.

Long
method
(Facultatif)

Détermine s’il convient d’utiliser un plus court chemin sur une sphéroïde (géodésique) ou une méthode de terre plate (plane). Il est fortement conseillé d’utiliser la méthode GEODESIC avec des données stockées dans un système de coordonnées non approprié pour les mesures de distance (par exemple, Web Mercator et tout système de coordonnées géographiques) ou tout jeu de données couvrant une zone géographique importante.

  • PLANARUtilise des distances planes entre les entités. Il s’agit de l’option par défaut.
  • GEODESICUtilise des distances géodésiques entre les entités. Cette méthode tient compte de la courbure de la sphéroïde et gère correctement les données situées près de la ligne de changement de jour et des pôles.
String

Exemple de code

1er exemple d'utilisation de l'outil GenerateNearTable (fenêtre Python)

L’exemple 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.analysis.GenerateNearTable("campsites", ["parks", "trails"], "better_sites")
Exemple 2 d’utilisation de l’outil GenerateNearTable (script autonome)

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

# find crime locations within the search radius
arcpy.analysis.GenerateNearTable(in_features, near_features, out_table, search_radius, 
                                 location, angle, closest, closest_count)

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes