Ü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)"
Bild
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.
-
Die Attributwerte der Eingabe-Feature-Classes werden in die Ausgabe-Feature-Class kopiert. Wenn es sich bei der Eingabe jedoch um Layer handelt, die mit dem Werkzeug Feature-Layer erstellen erstellt wurden, und die Option Verhältnismethode verwenden eines Feldes aktiviert ist, wird ein Verhältnis zum Eingabe-Attributwert 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 Attributwertes 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 Attributwertes des Eingabe-Features zugewiesen. Verhältnismethode verwenden gilt nur für numerische Feldtypen.
Achtung:Geoverarbeitungswerkzeuge berücksichtigen die Teilungsmethoden von Geodatabase-Feature-Class- oder -Tabellenfeldern nicht.
-
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.
Für die ArcGIS for Desktop Basic- und Standard-Lizenzen ist die Anzahl der Eingabe-Feature-Classes oder Layer auf zwei beschränkt.
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 Arbeitsablaufs 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