Disponible avec une licence Spatial Analyst.
Résumé
Calcule pour chaque cellule la distance euclidienne par rapport à la source la plus proche.
Pour en savoir plus sur l'analyse d'une distance euclidienne
Illustration
Utilisation
Les données source en entrée peuvent être une classe d'entités ou un raster.
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 facilement 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 interne en raster avant l'analyse. La résolution du raster peut être contrôlée à l'aide du paramètre Taille de cellule en sortie ou de l'environnement Taille de cellule. Par défaut, la résolution est déterminée par la valeur la plus petite entre la largeur et la hauteur de l'étendue de l'entité en entrée, dans la référence spatiale en entrée, divisée par 250.
Lorsque vous utilisez des données d’entité surfacique 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 au détail dans l’entrée. Le processus de tramage interne utilise la même méthode par défaut Type d'attribution de cellule que l'outil Polygones vers rasters, à 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 effectuer la rasterisation des entités en entrée directement avec l’outil Polygone vers raster et définir un Priority field (Champ Priorité). 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.
Le paramètre Distance maximale est spécifié dans les mêmes unités de carte que les données source en entrée.
L'allocation n'est pas une sortie disponible car aucune information à virgule flottante ne peut figurer dans les données source. Pour produire une sortie d'allocation, utilisez l'outil Allocation euclidienne qui peut générer les trois sorties (allocation, distance et direction) en même temps.
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. Pour plus d’informations concernant cette fonctionnalité et sa configuration, consultez la rubrique d’aide Traitement parallèle avec Spatial Analyst.
Lorsque vous utilisez le traitement parallèle, les données temporaires sont écrites pour gérer les blocs de données en cours de traitement. L’emplacement par défaut du dossier temporaire se trouve sur votre disque local 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é du Registre (par exemple, [HKEY_CURRENT_USER\SOFTWARE\ESRI\Desktop10.6\Raster]).
Par défaut, cet outil utilise 50 pour cent 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és 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.
Syntaxe
EucDistance (in_source_data, {maximum_distance}, {cell_size}, {out_direction_raster}, {distance_method})
Paramètre | Explication | Type de données |
in_source_data | Emplacement des sources en entrée. Un raster ou un jeu de classes d'entités identifie les cellules ou les emplacements par rapport auxquels la distance euclidienne pour chaque emplacement de cellule en sortie est calculée. Pour les rasters, le type d'entrée peut être entier ou à virgule flottante. | Raster Layer; Feature Layer |
maximum_distance (Facultatif) | Définit 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) | Taille des cellules qui sera utilisée pour la création du raster en sortie. Il s'agit de la valeur définie dans l'environnement, si l'environnement est défini de façon explicite. Si elle n'est pas définie dans l'environnement, la taille de cellule par défaut dépend du fait que les données source en entrée correspondent à un raster ou à une entité, comme suit :
| 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é pour aux cellules source. La direction plein Est (droite) est de 90 et les valeurs grandissent dans le sens horaire (180, Sud ; 270, Ouest et 360, Nord). Le raster en sortie est un entier. | Raster Dataset |
distance_method (Facultatif) | Détermine si la distance doit être calculée avec une méthode plane (Terre plate) ou géodésique (ellipsoïde).
| String |
Valeur renvoyée
Nom | Explication | Type 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"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute EucDistance
outEucDistance = EucDistance(inSourceData, maxDistance, cellSize, outDirectionRaster)
# Save the output
outEucDistance.save("C:/sapyexamples/output/eucdist")
Environnements
Informations de licence
- ArcGIS Desktop Basic: Requiert Spatial Analyst
- ArcGIS Desktop Standard: Requiert Spatial Analyst
- ArcGIS Desktop Advanced: Requiert Spatial Analyst