Extraer por puntos (Spatial Analyst)

Disponible con una licencia de Spatial Analyst.

Resumen

Extrae las celdas de un ráster según un conjunto de puntos de coordenadas.

Ilustración

Ilustración de Extraer por puntos
OutRas = ExtractByPoints(InRas1, [Point(1.5,0.5),Point(1.5,4.5),Point(4.5,4.5),Point(4.5,0.5)], "INSIDE")

Uso

  • En caso de que el ráster de entrada contuviera atributos adicionales, estos se trasladarán tal cual a la tabla de atributos del ráster de salida. En función de la propiedad que se va a registrar, es posible que haya que recalcular los valores de algunos atributos.

  • Cuando se especifica un ráster multibanda como el Ráster de entrada (in_raster en Python), se utilizarán todas las bandas.

    Para procesar una selección de bandas a partir de un ráster multibanda, cree primero un dataset ráster nuevo formado por esas bandas concretas con la herramienta Bandas compuestas. A continuación, use el resultado como el Ráster de entrada (in_raster en Python).

    El formato de salida predeterminado es un ráster de geodatabase. Si se especifica una pila de Cuadrícula de Esri como formato de salida, el nombre de la pila no puede comenzar por un número, usar espacios ni tener más de nueve caracteres de longitud.

  • A las ubicaciones de las celdas que no están seleccionadas se les asigna el valor NoData.

  • Si el ráster de entrada es un entero, el ráster de salida será un entero. Si la entrada es de punto flotante, la salida será de punto flotante.

  • Consulte Entornos de análisis y Spatial Analyst para obtener detalles adicionales sobre los entornos de geoprocesamiento que se aplican a esta herramienta.

Sintaxis

ExtractByPoints(in_raster, points, {extraction_area})
ParámetroExplicaciónTipo de datos
in_raster

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

Raster Layer
points
[point,...]

Una lista de Python de objetos de clase de Point denota las ubicaciones de donde se extraerán los valores del ráster.

Los objetos de punto se especifican en una lista de pares de coordenadas x,y en las mismas unidades de mapa que el ráster de entrada.

El formato del objeto es:

  • [point(x1,y1), point(x2,y2),...]
Point
extraction_area
(Opcional)

Identifica si debe extraer celdas según los puntos de ubicación especificados (dentro) o fuera de los puntos de ubicación (fuera).

  • INSIDEUna palabra clave que especifica que la celda en la que cae el punto seleccionado se escribirá en el ráster de salida. Todas las celdas fuera del cuadro recibirán NoData en el ráster de salida.
  • OUTSIDEUna palabra clave que especifica que debe seleccionar las celdas fuera de los puntos de entrada y escribirlas 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

Muestra de código

Ejemplo 1 de ExtractByPoints (ventana de Python)

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

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
pointList = [arcpy.Point(743050, 4321275), arcpy.Point(743100, 4321200),
             arcpy.Point(734500,4322000)]
outPointExtract = ExtractByPoints("soil", pointList,"INSIDE")
outPointExtract.save("c:/sapyexamples/output/pntextract")
Ejemplo 2 de ExtractByPoints (secuencia de comandos independiente)

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

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

# Execute ExtractByPoints
outPointExtract = ExtractByPoints("soil", pointList,"INSIDE")

# Save the output 
outPointExtract.save("c:/sapyexamples/output/pntext")

Información de licenciamiento

  • Basic: Requiere Spatial Analyst
  • Standard: Requiere Spatial Analyst
  • Advanced: Requiere Spatial Analyst

Temas relacionados