Extraction par polygone (Spatial Analyst)

Niveau de licence :BasicStandardAdvanced

Récapitulatif

Extrait les cellules d’un raster selon un polygone.

Utilisation

Syntaxe

ExtractByPolygon (in_raster, polygon, {extraction_area})
ParamètreExplicationType de données
in_raster

Raster en entrée à partir duquel les cellules seront extraites.

Raster Layer
polygon
[point,...]

Un polygone (ou plusieurs) qui définit la surface du raster en entrée à extraire.

Chaque partie d'un polygone est une liste de sommets définie par les classes Point. Le cas échéant, une classe Polygone peut permettre de définir une liste de parties de polygone.

Les points sont spécifiés sous forme de paires de coordonnées x,y. L'objet a la forme suivante :

  • [[point(x1,y1), point(x2,y2), point(xn,yn), ..., point(x1,y1)], [point(x'1,y'1), point(x'2,y'2), point(x'n,y'n), ..., point(x'1,y'1)], ...]

Notez que la dernière coordonnée doit être la même que la première pour fermer le polygone.

Point
extraction_area
(Facultatif)

Détermine l'extraction des cellules à l'intérieur ou à l'extérieur du polygone en entrée.

  • INSIDE Mot-clé spécifiant que les cellules situées à l'intérieur du polygone en entrée doivent être sélectionnées et enregistrées dans le raster en sortie. Toutes les cellules situées à l'extérieur du polygone adoptent les valeurs NoData sur le raster en sortie.
  • OUTSIDE Mot-clé spécifiant que les cellules situées à l'extérieur du polygone en entrée doivent être sélectionnées et enregistrées dans le raster en sortie. Toutes les cellules situées à l'intérieur du polygone adoptent les valeurs NoData sur le raster en sortie.
String

Valeur renvoyée

NomExplicationType de données
out_raster

Raster en sortie contenant les valeurs de cellule extraites du raster en entrée.

Raster

Exemple de code

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

Cet exemple décrit l'extraction des cellules d'un raster selon les coordonnées du polygone que vous avez indiquées.

import arcpy
from arcpy import env
from arcpy.sa import *
polyPoints = [arcpy.Point(743050, 4321275), arcpy.Point(743100, 4321200), 
             arcpy.Point(743500, 4322000),arcpy.Point(742900, 4321800)]
env.workspace = "C:/sapyexamples/data"
extPolygonOut = ExtractByPolygon("soil", polyPoints, "INSIDE")
extPolygonOut.save("c:/sapyexamples/output/extpoly")
Deuxième exemple d'utilisation de l'outil ExtractByPolygon (script autonome)

Cet exemple décrit l'extraction des cellules d'un raster selon les coordonnées du polygone que vous avez indiquées.

# Name: ExtractByPolgyon_Ex_02.py
# Description: Extracts the cells of a raster based on a polygon.
# 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 = "soil"
polyPoints = [arcpy.Point(743050, 4321275), arcpy.Point(743100, 4321200), 
             arcpy.Point(743500, 4322000),arcpy.Point(742900, 4321800)]

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute ExtractByPolygon
extPolygonOut = ExtractByPolygon(inRaster, polyPoints, "INSIDE")

# Save the output 
extPolygonOut.save("c:/sapyexamples/output/extpoly02")

Environnements

Thèmes connexes

Informations de licence

ArcGIS for Desktop Basic: Requis ArcGIS Spatial Analyst
ArcGIS for Desktop Standard: Requis ArcGIS Spatial Analyst
ArcGIS for Desktop Advanced: Requis ArcGIS Spatial Analyst
5/10/2014