Nettoyage de limites (Spatial Analyst)
Récapitulatif
Permet de lisser la limite entre les zones en l'allongeant et en la rétrécissant.
Pour en savoir plus sur le fonctionnement de l'outil Nettoyage de limites
Illustration
Utilisation
-
Toutes les régions de moins de trois cellules dans la direction x ou y sont modifiées.
Le rétrécissement induit par le processus ONE_WAY (une session d'expansion-rétrécissement) ou la première session lorsque le processus de lissage TWO_WAY est différent du rétrécissement qui se produit lorsque vous utilisez le paramètre TWO_WAY pour la deuxième fois.
Lors de la première session, si toutes les cellules de traitement figurant dans le raster développé qui est doté d'un voisin de la valeur initiale de la cellule de traitement, cette dernière est rétablie. Lors d'une deuxième session avec TWO_WAY, les cellules dans le raster développé qui ne sont pas entièrement entourées par huit cellules de même valeur récupèrent la valeur initiale.
-
L'expansion est identique pour le premier et deuxième passage.
-
Les cellules en entrée dotées de la valeur NoData ont la priorité la plus faible avec le type de tri ONE_WAY ou avec TWO_WAY (première session). Lors d'une deuxième session avec TWO_WAY, les cellules NoData ont la priorité la plus élevée.
Syntaxe
Paramètre | Explication | Type de données |
in_raster |
Le raster en entrée dont la limite entre les zones doit être lissée. Il doit être de type entier. | Raster Layer |
sort_type (Facultatif) |
Indique le type de tri à utiliser dans le processus de lissage. Celui-ci définit la priorité des cellules à étendre dans leur voisinage.
| String |
number_of_runs (Facultatif) |
Précise le nombre de directions dans lesquelles le processus de lissage doit être effectué.
| Boolean |
Valeur renvoyée
Nom | Explication | Type de données |
out_raster |
Raster généralisé en sortie. Les limites entre zones dans l'entrée seront lissées. | Raster |
Exemple de code
Cet exemple décrit le lissage de la limite entre des zones dans un ordre décroissant avec un passage bidirectionnel.
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" OutBndCln = BoundaryClean("land", "DESCEND", "TWO_WAY") OutBndCln.save("c:/sapyexamples/output/bndcln_des2")
Cet exemple décrit le lissage de la limite entre des zones dans un ordre décroissant avec un passage bidirectionnel.
# Name: BoundaryClean_Ex_02.py # Description: Smoothes the boundary between zones # by expanding and shrinking it. # 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 inRaster = "land" # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute BoundaryClean OutBndCln = BoundaryClean(inRaster, "ASCEND", "TWO_WAY") # Save the output OutBndCln.save("c:/sapyexamples/output/bndcln_asc2")