Distance euclidienne (Spatial Analyst)

Disponible avec une licence Spatial Analyst.

Synthèse

Calcule pour chaque cellule la distance euclidienne par rapport à la source la plus proche.

Conseil :

L’outil Accumulation de distance fournit des fonctionnalités ou des performances améliorées.

En savoir plus sur l’analyse de distance euclidienne

Illustration

Illustration de l’outil Distance euclidienne
Euc_Dist = EucDistance(Source_Ras)

Utilisation

  • Les données source en entrée peuvent être une classe d’entités ou un raster. La classe d’entités peut être ponctuelle, linéaire ou surfacique.

  • Lorsque les données source en entrée correspondent à un raster, l'ensemble des cellules source englobe toutes les cellules du raster source comprenant des valeurs valides. Les cellules associées à la valeur NoData ne figurent pas dans la source. La valeur 0 est considérée comme une source normale. Vous pouvez créer un raster source à l’aide des outils d’extraction.

  • Lorsque les données source en entrée correspondent à une classe d’entités, les emplacements source sont convertis en raster en interne avant l’analyse.

  • Lorsque vous utilisez des données d’entité pour les données source en entrée, vous devez traiter la taille de cellule en sortie avec prudence si elle est grossière par rapport aux détails dans l’entrée. Le processus de tramage interne utilise la même valeur Type d’attribution de cellule par défaut que l’outil Entité vers raster, à savoir la méthode Centre de cellule. Cela signifie que les données ne figurant pas au centre de la cellule ne seront pas incluses dans la sortie source rasterisée intermédiaire ; elles ne seront donc pas représentées dans les calculs de distance. Par exemple, si vos sources sont représentées par une série de petits polygones (tels que des emprises de bâtiments) dont la taille est petite par rapport à la taille de cellule en sortie, il se peut que quelques-uns seulement apparaissent aux centres des cellules raster en sortie et que, vraisemblablement, la plupart des autres polygones soient perdus et exclus de l'analyse.

    Pour éviter cette situation, vous pouvez entre-temps rasteriser les entités en entrée directement avec l’outil Entité vers raster et définir le paramètre Champ. Ensuite, utilisez la sortie en entrée dans l'outil de distance que vous souhaitez utiliser. Vous pouvez également sélectionner une petite taille de cellule pour capturer le nombre de détails approprié à partir des entités en entrée.

  • La valeur Distance maximale est spécifiée dans les mêmes unités de carte que les données source en entrée.

  • La taille de cellule en sortie (champ Output cell size) peut être définie par une valeur numérique ou obtenue à partir d’un jeu de données raster. Si la taille de cellule n’a pas été spécifiée de manière explicite comme étant la valeur du paramètre, elle est dérivée de l’environnement de taille de cellule si celui-ci a été spécifié. Lorsque ni le paramètre ni l’environnement de taille de cellule n’a été spécifié, la taille de cellule en sortie par défaut est déterminée sur le type de jeu de données, comme suit :

    • Si le jeu de données en entrée est un raster, c’est la taille de cellule du jeu de données qui est utilisée.
    • Si le jeu de données en entrée est une entité et que l’environnement Snap Raster (Raster de capture) a été défini, c’est la taille de cellule du raster de capture qui est utilisée. Si aucun raster de capture n’a été défini, la taille de cellule est calculée à partir de la valeur la plus faible entre la largeur et la hauteur de l’étendue divisée par 250, où l’étendue correspond au système de coordonnées en sortie (option Output Coordinate System) spécifié dans l’environnement.
  • Si la taille de cellule est spécifiée à l’aide d’une valeur numérique, l’outil l’utilise directement pour le raster en sortie.

    Si la taille de cellule est spécifiée à l’aide d’un jeu de données raster, le paramètre affiche le chemin du jeu de données raster au lieu de la valeur de la taille de cellule. La taille de cellule de ce jeu de données raster sera utilisée directement dans l’analyse, à condition que la référence spatiale du jeu de données soit identique à la référence spatiale en sortie. Si la référence spatiale du jeu de données diffère de la référence spatiale en sortie, elle sera projetée d’après la valeur du champ Cell Size Projection Method (Méthode de projection de la taille de cellule).

  • L’étendue de traitement par défaut pour cet outil a pour valeur Union des entrées. L’étendue combinée des deux jeux de données en entrée sera traitée.

  • Cet outil prend en charge le traitement parallèle. Il est possible d’obtenir de meilleures performances, en particulier sur les jeux de données volumineux, si votre ordinateur est doté de plusieurs processeurs ou de processeurs multicœurs. Reportez-vous à la rubrique d’aide Traitement parallèle avec Spatial Analyst pour des détails sur cette fonctionnalité et comment la configurer.

    Lorsque vous utilisez le traitement parallèle, des données temporaires sont écrites afin de gérer les blocs de données en cours de traitement. L’emplacement par défaut du dossier temporaire se trouve sur votre disque C:. Vous pouvez contrôler l’emplacement de ce répertoire en définissant une variable d’environnement système appelée TempFolders et en spécifiant le chemin d’accès du répertoire à utiliser (par exemple, E:\RasterCache). Si vous disposez de privilèges administrateur sur votre ordinateur, vous pouvez également utiliser une clé de Registre (par exemple, [HKEY_CURRENT_USER\SOFTWARE\ESRI\ArcGISPro\Raster]).

    Par défaut, cet outil utilise 50 pourcent des cœurs disponibles. Si les données en entrée sont inférieures à 5 000 par 5 000 cellules en taille, le nombre de cœurs utilisé peut être moindre. Vous pouvez contrôler le nombre de cœurs que l’outil utilise à l’aide de l'environnement Facteur de traitement parallèle.

  • Pour plus d’informations sur les environnements de géotraitement qui s’appliquent à cet outil, reportez-vous à la rubrique Environnements d’analyse et Spatial Analyst.

Paramètres

ÉtiquetteExplicationType de données
Données raster ou d’entités sources en entrée

Emplacement des sources en entrée.

Il s’agit d’un raster ou d’une entité identifiant les cellules ou les emplacements qui seront utilisés afin de calculer la distance euclidienne pour chaque emplacement de cellule en sortie.

Pour les rasters, le type d'entrée peut être entier ou à virgule flottante.

Raster Layer; Feature Layer
Distance maximale
(Facultatif)

Le seuil que les valeurs de distance cumulée ne peuvent pas dépasser.

Si une valeur de distance euclidienne cumulée dépasse cette valeur, la valeur en sortie de l'emplacement de cellule sera NoData.

La distance par défaut va jusqu'à la bordure du raster en sortie.

Double
Taille de cellule en sortie
(Facultatif)

La taille de cellule du jeu de données raster en sortie sera créée.

Ce paramètre peut être défini par une valeur numérique ou obtenu à partir d’un jeu de données raster. Si la taille de cellule n’est pas explicitement spécifiée en tant que valeur de paramètre, la valeur de la taille de cellule de l’environnement sera utilisée dans la mesure où elle est définie. Dans le cas contraire, le calcul fera appel à des règles supplémentaires pour la déterminer à partir d’autres données en entrée. Pour en savoir plus, consultez la section relative à l’utilisation.

Analysis Cell Size
Raster de direction en sortie
(Facultatif)

Raster de direction euclidienne en sortie.

Le raster de direction contient la direction calculée, en degrés, de chaque centre de cellule par rapport au centre de cellule source le plus proche.

La plage de valeurs s’étend de 0 à 360 degrés, 0 étant réservé aux cellules sources. La direction plein Est (droite) est de 90 et les valeurs augmentent dans le sens horaire (180, Sud ; 270, Ouest et 360, Nord).

Le raster en sortie est un entier.

Raster Dataset
Méthode de distance
(Facultatif)

Indique si la distance sera calculée avec une méthode plane (Terre plate) ou géodésique (ellipsoïde).

  • PlanaireLe calcul de la distance est effectué sur une surface plane projetée à l’aide d’un système de coordonnées cartésiennes 2D. Il s’agit de l’option par défaut.
  • GéodésiqueLe calcul de la distance sera effectué sur l’ellipsoïde. Les résultats ne changent pas, quelle que soit la projection en entrée ou en sortie.
String
Données raster ou d’entités interruptions en entrée
(Facultatif)

Jeu de données qui définit les interruptions.

Les interruptions peuvent être définies par un raster d’entiers ou de valeurs à virgule flottante ou par une entité ponctuelle, linéaire ou surfacique.

Raster Layer; Feature Layer
Raster de direction arrière en sortie
(Facultatif)

Raster de direction arrière euclidienne en sortie.

Le raster de direction arrière contient la direction calculée, en degrés. La direction identifie la cellule suivante sur le chemin le plus court vers la cellule source la plus proche, en évitant toute interruption.

La plage de valeurs s’étend de 0 à 360 degrés, 0 étant réservé aux cellules sources. La direction plein Est (droite) est de 90 et les valeurs augmentent dans le sens horaire (180, Sud ; 270, Ouest et 360, Nord).

Le raster en sortie est de type réel.

Raster Dataset

Valeur renvoyée

ÉtiquetteExplicationType de données
Raster de distance en sortie

Raster de distance euclidienne en sortie.

Le raster de distance identifie, pour chaque cellule, la distance euclidienne de la cellule source la plus proche, du jeu de cellules source le plus proche ou de l'emplacement source le plus proche.

Le raster en sortie est de type virgule flottante.

Raster

EucDistance(in_source_data, {maximum_distance}, {cell_size}, {out_direction_raster}, {distance_method}, {in_barrier_data}, {out_back_direction_raster})
NomExplicationType de données
in_source_data

Emplacement des sources en entrée.

Il s’agit d’un raster ou d’une entité identifiant les cellules ou les emplacements qui seront utilisés afin de calculer la distance euclidienne pour chaque emplacement de cellule en sortie.

Pour les rasters, le type d'entrée peut être entier ou à virgule flottante.

Raster Layer; Feature Layer
maximum_distance
(Facultatif)

Le seuil que les valeurs de distance cumulée ne peuvent pas dépasser.

Si une valeur de distance euclidienne cumulée dépasse cette valeur, la valeur en sortie de l'emplacement de cellule sera NoData.

La distance par défaut va jusqu'à la bordure du raster en sortie.

Double
cell_size
(Facultatif)

La taille de cellule du jeu de données raster en sortie sera créée.

Ce paramètre peut être défini par une valeur numérique ou obtenu à partir d’un jeu de données raster. Si la taille de cellule n’est pas explicitement spécifiée en tant que valeur de paramètre, la valeur de la taille de cellule de l’environnement sera utilisée dans la mesure où elle est définie. Dans le cas contraire, le calcul fera appel à des règles supplémentaires pour la déterminer à partir d’autres données en entrée. Pour en savoir plus, consultez la section relative à l’utilisation.

Analysis Cell Size
out_direction_raster
(Facultatif)

Raster de direction euclidienne en sortie.

Le raster de direction contient la direction calculée, en degrés, de chaque centre de cellule par rapport au centre de cellule source le plus proche.

La plage de valeurs s’étend de 0 à 360 degrés, 0 étant réservé aux cellules sources. La direction plein Est (droite) est de 90 et les valeurs augmentent dans le sens horaire (180, Sud ; 270, Ouest et 360, Nord).

Le raster en sortie est un entier.

Raster Dataset
distance_method
(Facultatif)

Indique si la distance sera calculée avec une méthode plane (Terre plate) ou géodésique (ellipsoïde).

  • PLANARLe calcul de la distance est effectué sur une surface plane projetée à l’aide d’un système de coordonnées cartésiennes 2D. Il s’agit de l’option par défaut.
  • GEODESICLe calcul de la distance sera effectué sur l’ellipsoïde. Les résultats ne changent pas, quelle que soit la projection en entrée ou en sortie.
String
in_barrier_data
(Facultatif)

Jeu de données qui définit les interruptions.

Les interruptions peuvent être définies par un raster d’entiers ou de valeurs à virgule flottante ou par une entité ponctuelle, linéaire ou surfacique.

Raster Layer; Feature Layer
out_back_direction_raster
(Facultatif)

Raster de direction arrière euclidienne en sortie.

Le raster de direction arrière contient la direction calculée, en degrés. La direction identifie la cellule suivante sur le chemin le plus court vers la cellule source la plus proche, en évitant toute interruption.

La plage de valeurs s’étend de 0 à 360 degrés, 0 étant réservé aux cellules sources. La direction plein Est (droite) est de 90 et les valeurs augmentent dans le sens horaire (180, Sud ; 270, Ouest et 360, Nord).

Le raster en sortie est de type réel.

Raster Dataset

Valeur renvoyée

NomExplicationType de données
out_distance_raster

Raster de distance euclidienne en sortie.

Le raster de distance identifie, pour chaque cellule, la distance euclidienne de la cellule source la plus proche, du jeu de cellules source le plus proche ou de l'emplacement source le plus proche.

Le raster en sortie est de type virgule flottante.

Raster

Exemple de code

Premier exemple d'utilisation de l'outil EucDistance (fenêtre Python)

Le script dans la fenêtre Python ci-après explique comment utiliser l'outil EuclideanDistance.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outEucDistance = EucDistance("rec_sites.shp", 5000, 5, 
                             "c:/sapyexamples/output/EucDirOut")
outEucDistance.save("C:/sapyexamples/output/eucdist")
Deuxième exemple d'utilisation de l'outil EucDistance (script autonome)

Calcule la distance en ligne droite par rapport à la source la plus proche pour chaque cellule.

# Name: EucDistance_Ex_02.py
# Description: Calculates for each cell the Euclidean distance to the nearest source.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inSourceData = "rec_sites.shp"
maxDistance = 4000
cellSize = 4
outDirectionRaster = "C:/sapyexamples/output/eucdirect"

# Execute EucDistance
outEucDistance = EucDistance(inSourceData, maxDistance, cellSize, outDirectionRaster)

# Save the output 
outEucDistance.save("C:/sapyexamples/output/eucdist")

Informations de licence

  • Basic: Nécessite Spatial Analyst
  • Standard: Nécessite Spatial Analyst
  • Advanced: Nécessite Spatial Analyst

Rubriques connexes