Extraer por polígono (Spatial Analyst)

Resumen

Extrae las celdas de un ráster según un polígono.

Uso

Sintaxis

ExtractByPolygon (in_raster, polygon, {extraction_area})
ParámetroExplicaciónTipo de datos
in_raster

El ráster de entrada desde el cual se extraerán las celdas.

Raster Layer
polygon
[point,...]

Un polígono (o polígonos) que define el área del ráster de entrada que se extraerá.

Cada parte del polígono es una lista de vértices definidos por clases de Punto Opcionalmente una clase de Polígono se puede usar para definir una lista de partes de polígono.

Los puntos se especifican como pares de coordenadas x,y. El formato del objeto es:

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

Tenga en cuenta que la última coordenada debe ser igual que la primera para cerrar el polígono.

Point
extraction_area
(Opcional)

Identifica si debe extraer celdas dentro o fuera del polígono de entrada.

  • INSIDE Una palabra clave que especifica que debe seleccionar las celdas dentro del polígono de entrada y escribirlas en el ráster de salida. Todas las celdas fuera del polígono recibirán valores NoData en el ráster de salida.
  • OUTSIDE Una palabra clave que especifica que debe seleccionar las celdas fuera del polígono de entrada y escribirlas en el ráster de salida. Todas las celdas dentro del polígono recibirán valores NoData en el ráster de salida.
String

Valor de retorno

NombreExplicaciónTipo de datos
out_raster

Ráster de salida que contiene los valores de las celdas extraídos del ráster de entrada.

Raster

Ejemplo de código

Ejemplo 1 de ExtractByPolygon (ventana de Python)

En este ejemplo se extraen celdas de un ráster en función de las coordenadas de polígonos especificadas.

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")
Ejemplo 2 de ExtractByPolygon (secuencia de comandos independiente)

En este ejemplo se extraen celdas de un ráster en función de las coordenadas de polígonos especificadas.

# 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")

Entornos

Temas relacionados

Información de licencia

ArcView: Requiere Análisis espacial
ArcEditor: Requiere Análisis espacial
ArcInfo: Requiere Análisis espacial

7/11/2012