Mit Kreis extrahieren (Spatial Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Zusammenfassung

Extrahiert die Zellen eines Rasters basierend auf einem Kreis durch Festlegung des Mittelpunktes und Radius des Kreises.

Abbildung

Abbildung: Mit Kreis extrahieren
OutRas = ExtractByCircle(InRas1, Point(2.5,2.5), 2, "INSIDE")

Verwendung

  • Zusätzliche Attribute aus dem Eingabe-Raster, sofern vorhanden, werden unverändert in die Attributtabelle des Ausgabe-Rasters übernommen. Je nach Eigenschaft, die erfasst wird, müssen einige der Attributwerte möglicherweise neu berechnet werden.

  • Wenn ein Multiband-Raster als Eingabe-Raster (in_raster in Python) angegeben wird, werden alle Bänder verwendet.

    Wenn eine Auswahl von Bändern aus einem Multiband-Raster verarbeitet werden soll, erstellen Sie zunächst mit dem Werkzeug Bänder zusammensetzen ein neues Raster-Dataset, das aus den betreffenden Bändern besteht. Verwenden Sie dann das Ergebnis als Eingabe-Raster (in_raster in Python).

    Das Standardausgabeformat ist ein Geodatabase-Raster. Wenn ein Esri Grid Stack als Ausgabeformat angegeben wurde, beachten Sie, dass der Stack-Name nicht mit einer Zahl beginnen, keine Leerzeichen enthalten und nicht mehr als 9 Zeichen aufweisen darf.

  • Der Mittelpunkt der Zelle wird verwendet, um zu bestimmen, ob eine Zelle innerhalb oder außerhalb eines Kreises liegt. Wenn sich der Mittelpunkt innerhalb des Kreisbogens befindet, gilt die Zelle als vollständig innerhalb des Kreises, auch wenn Teile der Zelle außerhalb des Kreises liegen.

  • Zellenpositionen, die nicht ausgewählt wurden, wird der Wert "NoData" zugewiesen.

  • Bei einem ganzzahligen Eingabe-Raster ist auch das Ausgabe-Raster ganzzahlig. Wenn die Eingaben Gleitkommawerte sind, ist die Ausgabe ebenfalls ein Gleitkommawert.

  • Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.

Syntax

ExtractByCircle(in_raster, center_point, radius, {extraction_area})
ParameterErklärungDatentyp
in_raster

Das Eingabe-Raster, aus dem Zellen extrahiert werden.

Raster Layer
center_point

Die Point-Klasse gibt die mittlere Koordinate (X, Y) des Kreises vor, der den zu extrahierenden Bereich definiert.

Die Klasse weist folgendes Format auf:

  • Point (x, y)

Die Koordinaten werden in den gleichen Karteneinheiten angegeben wie das Eingabe-Raster.

Point
radius

Radius des Kreises, der den zu extrahierenden Bereich definiert.

Der Radius wird in Karteneinheiten angegeben und liegt in den gleichen Einheiten vor wie das Eingabe-Raster.

Double
extraction_area
(optional)

Gibt an, ob Zellen innerhalb oder außerhalb des Eingabekreises extrahiert werden sollen.

  • INSIDEEin Schlüsselwort, das angibt, dass die Zellen innerhalb des Eingabekreises ausgewählt und in das Ausgabe-Raster geschrieben werden sollen. Alle Zellen außerhalb des Kreises erhalten NoData-Werte im Ausgabe-Raster.
  • OUTSIDEEin Schlüsselwort, das angibt, dass die Zellen außerhalb des Eingabekreises ausgewählt und in das Ausgabe-Raster geschrieben werden sollen. Alle Zellen innerhalb des Kreises erhalten NoData-Werte im Ausgabe-Raster.
String

Rückgabewert

NameErklärungDatentyp
out_raster

Das Ausgabe-Raster mit den Zellenwerten, die aus dem Eingabe-Raster extrahiert wurden.

Raster

Codebeispiel

ExtractByCircle – Beispiel 1 (Python-Fenster)

In diesem Beispiel werden Zellen innerhalb eines 500-Meter-Radius um eine Punktposition extrahiert.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outExtCircle = ExtractByCircle("elevation", arcpy.Point(482838.823, 222128.982),
                                500, "INSIDE")
outExtCircle.save("c:/sapyexamples/output/extcircle")
ExtractByCircle – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel werden Zellen innerhalb eines 1.000-Meter-Radius um eine Punktposition extrahiert.

# Name: ExtractByCircle_Ex_02.py
# Description: Extracts the cells of a raster based on a circle.
# 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 = ("elevation")
centerPoint = arcpy.Point(482838.823, 222128.982)
circRadius = 1000
extractType = "INSIDE"

# Execute ExtractByCircle
outExtCircle = ExtractByCircle(inRaster, centerPoint, circRadius, 
                               extractType)

# Save the output 
outExtCircle.save("c:/sapyexamples/output/extcircle02")

Lizenzinformationen

  • Basic: Erfordert Spatial Analyst
  • Standard: Erfordert Spatial Analyst
  • Advanced: Erfordert Spatial Analyst

Verwandte Themen