Überschneiden (Intersect) (Analyse)
Zusammenfassung
Berechnet einen geometrischen Schnittpunkt der Eingabe-Features. Die Ausgabe-Feature-Class enthält alle Features oder Teile von Features, die sich in allen Layern und/oder Feature-Classes überlappen.
Weitere Informationen zur Funktionsweise des Werkzeugs "Überschneiden (Intersect)"
Abbildung
Verwendung
-
Die Eingabe-Features müssen Simple Features sein: Punkt-, Multipoint-, Linien- oder Polygon-Features. Es können keine komplexen Features wie Annotation-Features, Bemaßungs-Features oder Netzwerk-Features sein.
-
Wenn die Eingaben verschiedene Geometrietypen aufweisen (z. B. Linien mit Polygonen, Punkte mit Linien usw.), übernimmt die Ausgabe-Feature-Class den Geometrietyp der Eingabe-Features mit der kleinsten Geometriedimension. Wenn beispielsweise eine oder mehrere Eingaben Punkte sind, enthält die Ausgabe standardmäßig Punkte. Wenn eine oder mehrere Eingaben Linien sind, enthält die Ausgabe standardmäßig Linien, und wenn alle Eingaben Polygone sind, enthält die Ausgabe Polygone.
-
Der Ausgabetyp kann der Geometrietyp der Eingabe-Features mit der kleinsten Geometriedimension oder ein noch niedrigerer Typ sein. Wenn beispielsweise die Eingabe aus Polygonen besteht, kann die Ausgabe ein Polygon-, Linien- oder Punkt-Feature sein. Wenn ein Eingabe-Feature ein Linien-Feature ist und keine Punkt-Features vorhanden sind, kann die Ausgabe ein Linien- oder ein Punkt-Feature sein. Falls eines der Eingabe-Features ein Punkt-Feature ist, kann der Ausgabetyp nur ein Punkt-Feature sein.
-
Attributwerte aus den Eingabe-Feature-Classes werden in die Ausgabe-Feature-Class kopiert. Wenn die Eingabe jedoch ein mit dem Werkzeug Feature-Layer erstellen erstellter Layer ist und die Option "Verhältnismethode verwenden" eines Feldes aktiviert ist, wird ein Verhältnis des Eingabeattributwerts für den Ausgabeattributwert berechnet. Ist die Option "Verhältnismethode verwenden" aktiviert, stellen die Attribute des resultierenden Features bei jeder Teilung eines Features in einem Überlagerungsvorgang ein Verhältnis des Attributwerts des Eingabe-Features dar. Der Ausgabewert basiert auf dem Verhältnis, in dem die Eingabe-Feature-Geometrie geteilt wurde. Falls die Geometrie z. B. in gleiche Teile geteilt wurde, wird dem Attributwert jedes neuen Features der halbe Wert des Attributwerts des Eingabe-Features zugewiesen. "Verhältnismethode verwenden" gilt nur für Zahlenfeldtypen.
Vorsicht:Geoverarbeitungswerkzeuge berücksichtigen nicht die Teilungsmethoden von Geodatabase-Feature-Classes oder Tabellenfeldern.
-
Dieses Werkzeug verwendet einen Kachelvorgang, um beim Verarbeiten sehr großer Datasets eine bessere Performance und Skalierbarkeit zu erzielen. Weitere Informationen finden Sie unter Geoverarbeitung mit großen Datasets.
Bei ArcView- und ArcEditor-Lizenzen ist die Anzahl der Eingabe-Feature-Classes oder -Layer auf zwei begrenzt.
Syntax
Parameter | Erläuterung | Datentyp |
in_features [in_features, {Rank},...] |
Eine Liste der Eingabe-Feature-Classes oder Layer. Wenn die Entfernung zwischen Features geringer als die Cluster-Toleranz ist, werden die Features mit dem niedrigeren Rang vom Feature mit dem höheren Rang gefangen. Die höchste Rangstufe ist 1. Weitere Informationen finden Sie im Abschnitt zu Rangstufen und Geoverarbeitungswerkzeugen. | Value Table |
out_feature_class |
Die Ausgabe-Feature-Class. | Feature Class |
join_attributes (optional) |
Legt fest, welche Attribute der Eingabe-Features in die Ausgabe-Feature-Class übertragen werden.
| String |
cluster_tolerance (optional) |
Der Mindestabstand zwischen allen Feature-Koordinaten (Knoten und Stützpunkte) sowie die Strecke, die eine Koordinate auf der X- bzw. Y-Achse (oder beiden) verschoben werden kann. | Linear unit |
output_type (optional) |
Wählen Sie den gesuchten Schnittpunkttyp aus.
| String |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion "Überschneiden (Intersect)" im unmittelbaren Modus verwenden.
import arcpy from arcpy import env env.workspace = "C:/data/RedRiver_basin.gdb" arcpy.Intersect_analysis (["vegetation_stands", "road_buffer200m", "water_buffer100"], "mysites", "ALL", "", "") arcpy.Intersect_analysis ([["vegetation_stands", 2], ["road_buffer200m", 1], ["water_buffer100", 2]], "mysites_ranked", "ALL", "", "")
Im folgenden eigenständigen Skript wird die Funktion "Überschneiden" (Intersect) mit anderen Analysewerkzeugen als Teil eines Workflows verwendet, um die Art der Vegetation im Umkreis von 100 Metern aller Furten zu bestimmen.
#Name: VegRoadIntersect.py # Purpose: Determine the type of vegetation within 100 meters of all stream crossings #Author: ESRI # Import system modules import arcpy from arcpy import env try: # Set the workspace (to avoid having to type in the full path to the data every time) env.workspace = "c:/data/data.gdb" # Process: Find all stream crossings (points) inFeatures = ["roads", "streams"] intersectOutput = "stream_crossings" clusterTolerance = 1.5 arcpy.Intersect_analysis(inFeatures, intersectOutput, "", clusterTolerance, "point") # Process: Buffer all stream crossings by 100 meters bufferOutput = "stream_crossings_100m" bufferDist = "100 meters" arcpy.Buffer_analysis(intersectOutput, bufferOutput, bufferDist) # Process: Clip the vegetation feature class to stream_crossing_100m clipInput = "vegetation" clipOutput = "veg_within_100m_of_crossings" arcpy.Clip_analysis(clipInput, bufferOutput, clipOutput) # Process: Summarize how much (area) of each type of vegetation is found #within 100 meter of the stream crossings statsOutput = "veg_within_100m_of_crossings_stats" statsFields = [["shape_area", "sum"]] caseField = "veg_type" arcpy.Statistics_analysis(clipOutput, statsOutput, statsFields, caseField) except Exception, e: # If an error occurred, print line number and error message import traceback, sys tb = sys.exc_info()[2] print "Line %i" % tb.tb_lineno print e.message