Paarweise puffern (Analysis)

Zusammenfassung

Erstellt Pufferpolygone mit einem festgelegten Abstand um Eingabe-Features mittels eines parallelen Verarbeitungsansatzes.

Für Puffervorgänge gibt es alternative Werkzeuge. Weitere Informationen finden Sie in den Dokumentationen für die Werkzeuge Puffer und Grafikpuffer.

Abbildung

Abbildung des Werkzeugs "Paarweise puffern"

Verwendung

  • Alle Eingaben müssen über einen räumlichen Index verfügen. Verwenden Sie das Werkzeug Räumlichen Index hinzufügen, um einen Index zu erstellen (insbesondere für Shapefiles) oder um einen vorhandenen Index neu zu erstellen, falls Zweifel hinsichtlich seiner Korrektheit bestehen.

  • Wie unter Funktionsweise des Werkzeugs "Puffer" beschrieben, ist der Parameter Methode eine wichtige Funktion des Werkzeugs Puffer. Damit wird festgelegt, wie Puffer erstellt werden. Die zwei grundlegenden Methoden für die Erstellung von Puffern – euklidisch und geodätisch – lassen sich wie folgt beschreiben:

    • Euklidische Puffer messen den Abstand in einer zweidimensionalen kartesischen Ebene, wo Entfernungen zwischen zwei Punkten auf einer flachen Oberfläche berechnet werden. Euklidische Puffer eignen sich zum Analysieren von Entfernungen um Features in einem projizierten Koordinatensystem, die in einem relativ kleinen Bereich (z. B. einer UTM-Zone) konzentriert sind.
    • Geodätische Puffer berücksichtigen die Form der Erde (ein Ellipsoid oder genauer ein Geoid). Entfernungen werden zwischen zwei Punkten auf einer gekrümmten Oberfläche (dem Geoid) berechnet. In folgenden Fällen sind geodätische Puffer geeignet:
      • Die Eingabe-Features sind verteilt (decken mehrere UTM-Zonen, große Regionen oder den gesamten Globus ab).
      • Der Raumbezug (Kartenprojektion) der Eingabe-Features verzerrt Abstände, um andere Eigenschaften wie Fläche beizubehalten.
      Geodätische Puffer werden möglicherweise auf einer ebenen Karte ungewohnt dargestellt. Bei Anzeige auf einem Globus sehen sie hingegen richtig aus. Weitere Informationen finden Sie unter Funktionsweise des Werkzeugs "Puffer".

    Mit dem Parameter Methode wird festgelegt, wie Puffer erstellt werden.

    • Die Standardeinstellung ist die Option Planar. Mit dieser Option wird basierend auf dem Koordinatensystem der Eingabe automatisch bestimmt, welche Methode verwendet werden soll.
      • Wenn die Eingabe-Features über ein projiziertes Koordinatensystem verfügen, werden euklidische Puffer erstellt.
      • Wenn die Eingabe-Features über ein geographisches Koordinatensystem verfügen und Sie einen Pufferabstand-Wert in linearen Einheiten (Meter, Fuß usw. im Gegensatz zu Winkeleinheiten wie Grad) angeben, werden geodätische Puffer erstellt.
      • Mit dieser Option erhalten Sie dasselbe Ergebnis wie mit dem Werkzeug Puffer, das in den Versionen vor ArcGIS 10.3 enthalten war.
    • Die Option Geodätisch erstellt in einem beliebigen Eingabe-Koordinatensystem einen geodätischen Puffer, der die Form beibehält. Die Eingabe-Features werden verdichtet, um Puffer zu erstellen, die genauer mit der Form der Eingabe-Features übereinstimmen. In einigen Fällen kann diese Option mehr Zeit in Anspruch nehmen als die Erstellung eines geodätischen Puffers mit der Option Planar. Das Ergebnis ist jedoch ein Puffer, der exakter mit der Form des Eingabe-Features übereinstimmt.

    Hinweis:

    Sie können das Koordinatensystem einer Feature-Class mit dem Werkzeug Projizieren ändern. Alternativ können Sie die Umgebungseinstellung Ausgabe-Koordinatensystem vor der Ausführung des Werkzeugs Puffer festlegen. Dieses Koordinatensystem wird dann bei der Erstellung von Puffern verwendet.

    Durch die Verwendung der Option Planar können Sie die Genauigkeit von Puffern verbessern, die mit projizierten Eingaben erstellt wurden, indem Sie eine Projektion verwenden, die die Entfernungsverzerrung minimiert (z. B. eine äquidistante Kegelprojektion oder eine azimutale äquidistante Projektion) und die für Ihre Eingabe geographisch geeignet ist.

  • Wenn es sich bei der Eingabe um ein projiziertes Koordinatensystem und bei der Ausgabe um eine Geodatabase-Feature Class handelt, enthält die Ausgabe u. U. Kreisbogensegmente. Wenn es sich bei der Eingabe um eine Point-Feature-Class handelt, werden stets Kreisbögen ausgegeben. Wenn Kreisbögen in ein anderes Koordinatensystem projiziert werden, werden Position und Größe der ursprünglichen Puffer transformiert. Die Form der Puffer verändert sich nicht, sodass die projizierten Puffer keine genaue Darstellung der vom ursprünglichen Puffer abgedeckten Fläche bieten. Wenn Sie Kreisbögen projizieren möchten, verwenden Sie zunächst das Werkzeug Verdichten, um die Kreisbögen in gerade Linien zu konvertieren. Projizieren Sie dann die verdichteten Puffer.

  • Die Ausgabe-Feature-Class umfasst das Feld BUFF_DIST. Es enthält den Pufferabstand für jedes Feature in der linearen Einheit des Eingabe-Koordinatensystems. Wenn Puffer mit der Option Geodätisch erstellt werden, wird der angegebene Pufferabstand in Meter konvertiert.

    Wenn in der Eingabe das Feld BUFF_DIST vorliegt, werden die zugehörigen Werte in der Ausgabe überschrieben. Wenn für Dissolve-Typ der Wert Alle oder Liste verwendet wird, enthält die Ausgabe dieses Feld nicht.

  • Die Ausgabe-Feature-Class enthält das Feld ORIG_FID mit der Feature-ID des Eingabe-Features, für das der Puffer erstellt wurde. Wenn in der Eingabe das Feld ORIG_FID vorliegt, werden die zugehörigen Werte in der Ausgabe überschrieben. Wenn für Dissolve-Typ der Wert Alle oder Liste verwendet wird, enthält die Ausgabe dieses Feld nicht.

  • Beim Puffern von Polygon-Features können auch negative Pufferabstände verwendet werden, um Puffer innerhalb der Polygon-Features zu erstellen. Wenn Sie einen negativen Pufferabstand verwenden, werden die Grenzen der Polygone um den angegebenen Abstand verkleinert.

    Vorsicht:

    Wenn der negative Pufferabstand groß genug ist, um das Polygon ganz auszublenden, wird eine NULL-Geometrie generiert. Es wird eine Warnmeldung angezeigt, und kein Feature mit NULL-Geometrie wird in die Ausgabe-Feature-Class geschrieben.

  • Sie können die Pufferabstände anhand eines Feldes aus der Eingabe festlegen. Sowohl numerische Felder als auch Textfelder sind zulässig. In Textfeldern kann der Pufferabstand als Zahl (z. B. 5) oder als gültige lineare Einheit (z. B. 5 Kilometer) angegeben werden.

    Wenn eine Zahl ohne lineare Einheit angegeben wird, werden für den Puffer die linearen Einheiten des Eingaberaumbezugs verwendet. Wenn für die Eingabe ein geographisches Koordinatensystem definiert ist, werden für den Puffer Meter verwendet.

    Wenn die lineare Einheit nicht erkannt wird, werden für den Puffer die linearen Einheiten des Eingaberaumbezugs verwendet. Weitere Informationen zu gültigen linearen Einheiten finden Sie unter Lineare Einheiten.

    Verwenden eines Pufferfeldes für Pufferabstände
  • In Puffervorgängen wird die Übertragung von z-Werten aus den Eingabe- in die Ausgabe-Puffer-Features nicht unterstützt.

  • In Puffervorgängen wird die Übertragung von m-Werten aus den Eingabe- in die Ausgabe-Puffer-Features nicht unterstützt.

  • Dieses Werkzeug berücksichtigt die Umgebung Faktor für parallele Verarbeitung. Wenn die Umgebungsvariable nicht (Standardeinstellung) oder auf 100 festgelegt ist, wird die vollständige parallele Verarbeitung aktiviert und das Werkzeug versucht, die Arbeit auf alle logischen Kerne auf dem Computer zu verteilen. Wird die Umgebung auf 0 festgelegt, wird die parallele Verarbeitung nicht aktiviert. Wenn ein Faktor zwischen 1 und 99 festgelegt wird, identifiziert das Werkzeug den Prozentsatz der zu verwendenden logischen Kerne, indem die Formel (Faktor für parallele Verarbeitung / 100 * logische Kerne) auf die nächste ganze Zahl aufgerundet angewendet wird. Wenn das Ergebnis dieser Formel 0 oder 1 ist, wird die parallele Verarbeitung nicht aktiviert.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Features

Die Eingabe-Punkt-, -Linien- oder -Polygon-Features, die gepuffert werden.

Feature Layer
Ausgabe-Feature-Class

Die Feature-Class, die die Ausgabepuffer enthält.

Feature Class
Abstand [Wert oder Feld]

Die Entfernung um die Eingabe-Features, die gepuffert werden. Entfernungen können folgendermaßen angegeben werden: als Wert, der eine lineare Entfernung angibt, oder als Feld der Eingabe-Features, das die Entfernung zum Puffern der einzelnen Features enthält.

Wenn lineare Einheiten nicht angegeben oder als "Unbekannt" eingegeben werden, wird die lineare Einheit des Raumbezugs der Eingabe-Features verwendet.

Linear Unit; Field
Dissolve-Typ
(optional)

Gibt an, welche Art von Zusammenführungsvorgang zum Entfernen von Pufferüberlappungen ausgeführt wird.

  • Nicht zusammenführenUnabhängig von den Überlappungen wird für jedes Feature ein eigener Puffer beibehalten. Dies ist die Standardeinstellung.
  • Zusammenführen aller Ausgabe-Features zu einem einzelnen FeatureAlle Puffer werden zu einem einzelnen Feature zusammengeführt, und die Überlappungen werden entfernt.
  • Zusammenführen von Features mit den eindeutigen Werten der aufgelisteten Felder oder einer Kombination von WertenAlle Puffer, die Attributwerte in den aufgelisteten Feldern (übertragen aus den Eingabe-Features) gemeinsam nutzen, werden zusammengeführt.
String
Dissolve-Feld(er)
(optional)

Die Liste der Felder aus den Eingabe-Features, in denen Ausgabe-Puffer zusammengeführt werden. Alle Puffer, die Attributwerte in den aufgelisteten Feldern (übertragen aus den Eingabe-Features) gemeinsam nutzen, werden zusammengeführt.

Field
Methode
(optional)

Gibt an, ob die planare oder geodätische Methode zur Erstellung der Puffer verwendet wird.

  • PlanarWenn sich die Eingabe-Features in einem projizierten Koordinatensystem befinden, werden euklidische Puffer erstellt. Wenn die Eingabe-Features über ein geographisches Koordinatensystem verfügen und der Pufferabstand in linearen Einheiten (Meter, Fuß usw. im Gegensatz zu Winkeleinheiten wie Grad) angegeben ist, werden geodätische Puffer erstellt. Dies ist die Standardeinstellung.Das zu verwendende Koordinatensystem kann mit der Umgebungseinstellung Ausgabe-Koordinatensystem festgelegt werden. Wenn sich die Eingabe-Features beispielsweise in einem projizierten Koordinatensystem befinden, können Sie die Umgebung auf ein geographisches Koordinatensystem festlegen, um geodätische Puffer zu erstellen.
  • Geodätisch (formgetreu)Alle Puffer werden unabhängig vom Eingabe-Koordinatensystem mit einer Methode für formgetreue geodätische Puffer erstellt.
String
Maximale Abweichung bei Versatz
(optional)

Der maximale Abstand der Polygongrenze des resultierenden Ausgabe-Puffers weicht von der Grenze des echten Puffers ab.

Die Grenze des echten Puffers ist eine Kurve. Die sich daraus ergebende Polygongrenze ist jedoch eine verdichtete Polylinie. Mit diesem Parameter können Sie die Annäherung der Ausgabe-Polygongrenze an die Grenze des echten Puffers steuern.

Wenn dieser Parameter nicht oder auf 0 festgelegt ist, wird die maximale Abweichung vom Werkzeug identifiziert. Es empfiehlt sich, den Standardwert zu verwenden. Die Verwendung einer zu kleinen maximalen Abweichung für den Versatz kann zu Performance-Einbußen im Werkzeug und bei nachfolgenden Analysen führen.

Weitere Informationen zum Parameter Maximale Abweichung bei Versatz finden Sie in der Dokumentation zum Werkzeug Verdichten.

Linear Unit

arcpy.analysis.PairwiseBuffer(in_features, out_feature_class, buffer_distance_or_field, {dissolve_option}, {dissolve_field}, {method}, {max_deviation})
NameErläuterungDatentyp
in_features

Die Eingabe-Punkt-, -Linien- oder -Polygon-Features, die gepuffert werden.

Feature Layer
out_feature_class

Die Feature-Class, die die Ausgabepuffer enthält.

Feature Class
buffer_distance_or_field

Die Entfernung um die Eingabe-Features, die gepuffert werden. Entfernungen können folgendermaßen angegeben werden: als Wert, der eine lineare Entfernung angibt, oder als Feld der Eingabe-Features, das die Entfernung zum Puffern der einzelnen Features enthält.

Wenn lineare Einheiten nicht angegeben oder als "Unbekannt" eingegeben werden, wird die lineare Einheit des Raumbezugs der Eingabe-Features verwendet.

Wenn bei der Angabe einer Entfernung die lineare Einheit aus zwei Wörtern besteht, wie im Englischen "Decimal Degrees", müssen Sie die zwei Wörter zu einem Wort zusammenfassen (z. B. 20 DecimalDegrees).

Linear Unit; Field
dissolve_option
(optional)

Gibt an, welche Art von Zusammenführungsvorgang zum Entfernen von Pufferüberlappungen ausgeführt wird.

  • NONEUnabhängig von den Überlappungen wird für jedes Feature ein eigener Puffer beibehalten. Dies ist die Standardeinstellung.
  • ALLAlle Puffer werden zu einem einzelnen Feature zusammengeführt, und die Überlappungen werden entfernt.
  • LISTAlle Puffer, die Attributwerte in den aufgelisteten Feldern (übertragen aus den Eingabe-Features) gemeinsam nutzen, werden zusammengeführt.
String
dissolve_field
[dissolve_field,...]
(optional)

Die Liste der Felder aus den Eingabe-Features, in denen Ausgabe-Puffer zusammengeführt werden. Alle Puffer, die Attributwerte in den aufgelisteten Feldern (übertragen aus den Eingabe-Features) gemeinsam nutzen, werden zusammengeführt.

Field
method
(optional)

Gibt an, ob die planare oder geodätische Methode zur Erstellung der Puffer verwendet wird.

  • PLANARWenn sich die Eingabe-Features in einem projizierten Koordinatensystem befinden, werden euklidische Puffer erstellt. Wenn die Eingabe-Features über ein geographisches Koordinatensystem verfügen und der Pufferabstand in linearen Einheiten (Meter, Fuß usw. im Gegensatz zu Winkeleinheiten wie Grad) angegeben ist, werden geodätische Puffer erstellt. Dies ist die Standardeinstellung.Das zu verwendende Koordinatensystem kann mit der Umgebungseinstellung Ausgabe-Koordinatensystem festgelegt werden. Wenn sich die Eingabe-Features beispielsweise in einem projizierten Koordinatensystem befinden, können Sie die Umgebung auf ein geographisches Koordinatensystem festlegen, um geodätische Puffer zu erstellen.
  • GEODESICAlle Puffer werden unabhängig vom Eingabe-Koordinatensystem mit einer Methode für formgetreue geodätische Puffer erstellt.
String
max_deviation
(optional)

Der maximale Abstand der Polygongrenze des resultierenden Ausgabe-Puffers weicht von der Grenze des echten Puffers ab.

Die Grenze des echten Puffers ist eine Kurve. Die sich daraus ergebende Polygongrenze ist jedoch eine verdichtete Polylinie. Mit diesem Parameter können Sie die Annäherung der Ausgabe-Polygongrenze an die Grenze des echten Puffers steuern.

Wenn dieser Parameter nicht oder auf 0 festgelegt ist, wird die maximale Abweichung vom Werkzeug identifiziert. Es empfiehlt sich, den Standardwert zu verwenden. Die Verwendung einer zu kleinen maximalen Abweichung für den Versatz kann zu Performance-Einbußen im Werkzeug und bei nachfolgenden Analysen führen.

Nähere Einzelheiten finden Sie bei den Informationen zum Parameter max_deviation in der Dokumentation zum Werkzeug Verdichten.

Linear Unit

Codebeispiel

PairwiseBuffer: Beispiel 1 (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie Sie die Funktion PairwiseBuffer verwenden.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.analysis.PairwiseBuffer("roads", "C:/output/majorrdsBuffered", "100 Feet", 
                              "LIST", "Distance")
PairwiseBuffer: Beispiel 2 (eigenständiges Skript)

Suche nach Flächen mit geeigneter Vegetation, in denen sich keine Bereiche befinden, auf die sich die Einflüsse von Hauptstraßen auswirken.

# Name: PairwiseBuffer.py
# Description: Find areas of suitable vegetation that exclude areas heavily 
#              impacted by major roads.

# Import system modules 
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data/Habitat_Analysis.gdb"

# Select suitable vegetation patches from all vegetation
veg = "vegtype"
suitableVeg = "C:/output/Output.gdb/suitable_vegetation"
whereClause = "HABITAT = 1" 
arcpy.analysis.Select(veg, suitableVeg, whereClause)

# Buffer areas of impact around major roads
roads = "majorrds"
roadsBuffer = "C:/output/Output.gdb/buffer_output"
distanceField = "Distance"
dissolveType = "LIST"
dissolveField = "Distance"
arcpy.analysis.PairwiseBuffer(roads, roadsBuffer, distanceField, dissolveType, 
                              dissolveField)

# Erase areas of impact around major roads from the suitable vegetation patches
eraseOutput = "C:/output/Output.gdb/suitable_vegetation_minus_roads"
xyTol = "1 Meters"
arcpy.analysis.Erase(suitableVeg, roadsBuffer, eraseOutput, xyTol)

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen