Skip To Content

Paarweise puffern

Zusammenfassung

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

Das Werkzeug Paarweise puffern ist dem Werkzeug Puffer sehr ähnlich. Mit dem Werkzeug Paarweise puffern können die Puffer-Features parallel verarbeitet werden.

Abbildung

Abbildung "Paarweise puffern"

Verwendung

  • 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. Durch Festlegen der Umgebung auf 0 wird die parallele Verarbeitung deaktiviert. Wenn ein Faktor zwischen 1 und 99 festgelegt wird, bestimmt 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.

  • Dieses Werkzeug basiert auf den Eingabe-Features, die einen räumlichen Index aufweisen. Verwenden Sie das Werkzeug Räumlichen Index hinzufügen, um einen neuen Index zu erstellen (insbesondere für Shapefiles) oder 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. Es gibt zwei grundlegende Methoden für die Erstellung von Puffern: euklidisch und geodätisch.

    • Euklidische Puffer messen den Abstand in einer zweidimensionalen kartesischen Ebene, wo geradlinige oder euklidische Abstände zwischen zwei Punkten auf der flachen Oberfläche (kartesische Ebene) berechnet werden. Euklidische Puffer sind der gängigere Puffertyp. Sie eignen sich zum Analysieren von Abständen 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 tatsächliche Form der Erde (ein Ellipsoid oder genauer ein Geoid). Abstände werden zwischen zwei Punkten auf einer geschwungenen Oberfläche (Geoid) im Gegensatz zu zwei Punkten auf einer flachen Oberfläche (kartesische Ebene) berechnet. In folgenden Fällen sollten geodätische Puffer immer erstellt werden:
      • Ihre Eingabe-Features sind verteilt (mehrere UTM-Zonen, große Regionen oder sogar den gesamten Globus abdecken).
      • Der Raumbezug (Kartenprojektion) Ihrer Eingabe-Features verzerrt Abstände, um andere Eigenschaften wie Fläche beizubehalten.
      Geodätische Puffer werden möglicherweise auf einer ebenen Karte ungewohnt dargestellt, aber bei der Anzeige auf einem Globus sehen diese Puffer richtig aus. (Mit einer 3D-Szene oder ArcGIS Earth können Sie geographische Daten ebenfalls auf einem dreidimensionalen Globus anzeigen.) Weitere Informationen finden Sie unter Funktionsweise des Werkzeugs Puffer.

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

    • Die Standardoption lautet Eben (method = "PLANAR" in Python). Mit dieser Option wird automatisch bestimmt, welche Methode basierend auf dem Koordinatensystem der Eingabe-Features 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 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.
    • Geodätisch (method = "GEODESIC" in Python) erstellt unabhängig vom Eingabe-Koordinatensystem einen geodätischen Puffer, der die Form beibehält. Der formgetreue geodätische Puffer verdichtet die Eingabe-Features, bevor die geodätischen Ausgabe-Puffer erstellt werden, um Puffer zu erstellen, die dem Eingabe-Feature-Shape eher entsprechen. Falls Sie sich über die Form Ihrer Puffer bzw. darüber Sorgen machen, wie sehr ihre Form mit den ursprünglichen Eingabe-Features übereinstimmt, wird empfohlen, dies insbesondere dann mit dieser Option zu überprüfen, wenn Ihre Eingabedaten sich in einem geographischen Koordinatensystem befinden. In einigen Fällen kann dies mehr Zeit in Anspruch nehmen als die Erstellung des geodätischen Puffers mit der Option Eben, 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. Oder Sie legen die Geoverarbeitungsumgebung Ausgabe-Koordinatensystem vor der Ausführung des Werkzeugs Puffer fest. Dieses Koordinatensystem wird dann für die Erstellung von Puffern verwendet.

    Durch die Verwendung der Methode 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 Equidistant Conicoder eine Azimutale äquidistante Projektion) und die für Ihre Eingabe geographisch geeignet ist.

  • Wenn Features in einem projizierten Koordinatensystem mit Ausgabe in eine Geodatabase-Feature-Class gepuffert werden, enthalten die erstellten Geometrien ggf. Kreisbogen-Segmente (bei der Pufferung von Punkten besteht die Ausgabe stets aus Kreisbögen). Wenn diese Puffer, die Kreisbögen enthalten, erneut in ein anderes Koordinatensystem projiziert werden, werden die Position und die Größe der ursprünglichen Puffer transformiert, die Form der Puffer ändert sich jedoch nicht. Dies bewirkt, dass die neu projizierten Puffer die vom ursprünglichen Puffer abgedeckte Fläche nicht mehr genau darstellen. Wenn Sie Puffer, die Kreisbögen enthalten, neu projizieren möchten, verwenden Sie zunächst das Werkzeug Verdichten, um Kreisbogensegmente in gerade Linien zu konvertieren. Projizieren Sie dann die verdichteten Puffer neu.

  • Die Ausgabe-Feature-Class weist das Feld BUFF_DIST auf. Es enthält den Pufferabstand, um jedes Feature in der linearen Einheit des Koordinatensystems der Eingabe-Features zu puffern. Wenn Puffer mit der Methode "Geodätisch" erstellt werden, wird die eingegebene Pufferentfernung in allen Fällen in Meter konvertiert.

    Wenn in der Eingabe ein Feld mit dem Namen BUFF_DIST vorhanden ist, werden in der Ausgabe die zugehörigen Werte überschrieben. Wenn der Dissolve-Typ Alle oder Liste (ALL oder LIST in Python) verwendet wird, weist die Ausgabe dieses Feld nicht auf.

  • 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 ein Feld mit dem Namen ORIG_FID vorhanden ist, werden in der Ausgabe die zugehörigen Werte überschrieben. Wenn der Dissolve-Typ Alle oder Liste verwendet wird, weist die Ausgabe dieses Feld nicht auf.

  • 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 die Features mit NULL-Geometrie werden nicht in die Ausgabe-Feature-Class geschrieben.

  • Wenn ein Feld aus den Eingabe-Features verwendet wird, um Pufferabstände abzurufen, können die Werte des Feldes entweder eine Zahl (z. B. 5) oder eine Zahl mit einer gültigen linearen Einheit (z. B. 5 Kilometer) sein. Wenn ein Feldwert nur aus einer Zahl besteht, wird davon ausgegangen, dass der Abstand in der linearen Einheit des Raumbezugs der Eingabe-Features angegeben ist (außer wenn sich die Eingabe-Features in einem geographischen Koordinatensystem befinden; dann wird ein Wert in meters angenommen). Falls die in den Feldwerten angegebene lineare Einheit ungültig ist oder nicht erkannt wird, wird standardmäßig die lineare Einheit des Raumbezugs der Eingabe-Features verwendet.

    Verwenden eines Pufferfeldes für Pufferabstände
  • Die Schaltfläche Feld hinzufügen des Parameters Dissolve-Feld(er) wird nur in ModelBuilder verwendet. Der Parameter Dissolve-Feld(er) enthält in ModelBuilder keine Feldnamen, wenn das vorherige Werkzeug nicht ausgeführt wurde oder die abgeleiteten Daten nicht vorhanden sind. Mit der Schaltfläche Feld hinzufügen können der Liste Dissolve-Feld(er) erforderliche Felder hinzugefügt werden, um das Dialogfeld des Werkzeugs Puffer zu vervollständigen.

Syntax

PairwiseBuffer_analysis (in_features, out_feature_class, buffer_distance_or_field, {dissolve_option}, {dissolve_field}, {method}, {max_deviation})
ParameterErklärungDatentyp
in_features

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

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 eines Abstands bei der Skripterstellung die gewünschte lineare Einheit zwei Wörter umfasst, wie im Englischen "Decimal Degrees", fassen Sie die zwei Wörter zu einem Wort zusammen (z. B. 20 DecimalDegrees).

Linear Unit; Field
dissolve_option
(optional)

Der Typ der Zusammenführen-Operation, die zum Entfernen von Pufferüberlappungen ausgeführt werden soll.

  • 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, anhand derer die Ausgabepuffer zusammengeführt werden. Alle Puffer, die Attributwerte in den aufgelisteten Feldern (übertragen aus den Eingabe-Features) gemeinsam nutzen, werden zusammengeführt.

Field
method
(optional)

Legt fest, ob die Puffer mit der Methode "Planar" oder "Geodätisch" erstellt werden sollen.

  • PLANARWenn die Eingabe-Features sich 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 erstellten Puffer werden unabhängig vom Eingabe-Koordinatensystem mit einer Methode für formgetreue geodätische Puffer erstellt.
String
max_deviation
(optional)

Die maximale Entfernung der Polygongrenze des resultierenden Ausgabe-Puffers weicht von der Grenze des echten Puffers ab.

Die Grenze des echten Puffers ist eine Kurve. Die Ergebnis-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 der Parameter nicht oder auf 0 festgelegt ist, wird die maximale Abweichung vom Werkzeug bestimmt. Es wird dringend empfohlen, den Standardwert zu verwenden. Die Verwendung einer maximalen Abweichung bei Versatz kann zu schwerwiegenden Performance-Einbußen (des Werkzeugs oder der nachfolgenden Analyse) führen.

Nähere Einzelheiten finden Sie in den max_deviation Parameterinformationen der Dokumentation zum Werkzeug Verdichten.

Linear Unit

Codebeispiel

PairwiseBuffer – Beispiel 1 (Python-Fenster)

Das folgende Skript veranschaulicht, wie das Werkzeug PairwiseBuffer im Python-Fenster verwendet wird.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.PairwiseBuffer_analysis("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.Select_analysis(veg, suitableVeg, whereClause)
# Buffer areas of impact around major roads
roads = "majorrds"
roadsBuffer = "C:/output/Output.gdb/buffer_output"
distanceField = "Distance"
sideType = "FULL"
endType = "ROUND"
dissolveType = "LIST"
dissolveField = "Distance"
arcpy.PairwiseBuffer_analysis(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.Erase_analysis(suitableVeg, roadsBuffer, eraseOutput, xyTol)

Lizenzinformationen

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

Verwandte Themen