Skip To Content

Durch gerade Linien und Kreisbögen vereinfachen

Zusammenfassung

Vereinfacht Linien-Features durch Ersetzen von aufeinanderfolgenden Liniensegmenten durch weniger Linien- oder Kreisbogensegmente basierend auf einem maximal zulässigen Versatz.

Abbildung

"An Stützpunkte anpassen" und "An Segmente anpassen"
Um die Ausgabelinie zu konstruieren, werden Geraden- und Kreisbogensegmente mit dem angegebenen maximal zulässigen Versatz eingepasst.

Verwendung

    Vorsicht:

    Mit diesem Werkzeug werden die Eingabedaten geändert. Weitere Informationen und Strategien zur Vermeidung unerwünschter Datenänderungen finden Sie unter Werkzeuge, die keine Ausgabe-Datasets erstellen.

  • Dieses Werkzeug kann verwendet werden, um die Geometrie von Linien-Features, in denen sich in verschiedenen Datenkonvertierungs- und Datenbearbeitungsprozessen unerwünschte Stützpunkte oder kurze Segmente angesammelt haben, zu vereinfachen. Sequenzen aus nichtlinearen Segmenten können durch 2-Punkt-Geraden ersetzt werden und mehrere Segmente, die Kreisbögen darstellen, durch echte Kurven. Dieses Werkzeug führt Näherungsberechnungen durch und ersetzt Geraden und Kreisbögen innerhalb eines angegebenen maximal zulässigen Versatzes.

  • Eingabe-Features müssen Linien sein. Die Ausgabelinie enthält einen Teil der ursprünglich vorhandenen Stützpunkte. Es werden weder neue Stützpunkte eingeführt noch Features gelöscht.

  • Vorhandene parametrische Kurven, wie zum Beispiel Bézierkurven, Kreisbögen und Ellipsenbogensegmente, werden nicht verändert.

    Hinweis:

    Wenn die Eingabelinien in einem Shapefile gespeichert sind, bleiben die Kreisbögen in den Ausgabe-Linien-Features eine verdichtete Reihe aus kleinen geraden Segmenten. Shapefiles unterstützen echte Kurven nicht. Um echte Kurven abzuleiten, exportieren Sie das Shapefile in eine Feature-Class.

  • Wählen Sie Kreisbögen erstellen aus, um echte Kurven zusätzlich zu geraden Linien zu generieren. Mit den fünf optionalen Parametern Maximaler Bogenwinkelschritt, Mindestanzahl an Stützpunkten, Min. Radius, Max. Radius und Minimaler Bogenwinkel wird gesteuert, wie Kreisbögen aus Segmenten erstellt werden.

    • Maximaler Bogenwinkelschritt (Dezimalgrad) ist der maximale Bogenwinkel, der zum Konstruieren von Kreisbögen verwendet werden kann. Der Bogenwinkel ist der Mittelwinkel der Kandidatenkurve (die Kurve, die konstruiert werden soll). Der maximale Bogenwinkelschritt definiert die Obergrenze für die Mittelwinkelbreite, innerhalb derer nach Stützpunkten für die Konstruktion von kreisförmigen Kurven gesucht wird. Wird mehr als ein Stützpunkt innerhalb jedes maximalen Bogenwinkelschritts gefunden, stehen diese Stützpunkte für die Erstellung eines Kreisbogens zur Verfügung. Verwenden Sie einen kleineren Bogenwinkel, um Kreisbögen aus dicht verteilten Segmenten zu erstellen und die Überanpassung an große Segmente zu verhindern. Verwenden Sie einen größeren Bogenwinkel, um Kreisbögen aus weniger dicht verteilten Segmenten zu erstellen. Die gültigen Werte liegen im Bereich von 2 bis 95 Dezimalgrad. Die Standardeinstellung ist 20 Dezimalgrad.

      In der Abbildung unten steht ein Segment mit einem Mittelwinkel von 90 Grad für die Erstellung eines Kreisbogens zur Verfügung. Wenn als maximaler Bogenwinkelschritt 89 Grad festgelegt wurde, wird das Segment nicht berücksichtigt, und die Ausgabe besteht aus einer Kurve und einer geraden Linie (mittlere Abbildung). Wurden 91 Grad festgelegt, wird das Segment zum Erstellen des Kreisbogens verwendet, und die Ausgabe besteht aus einer durchgehenden Kurve (letzte Abbildung).

      Maximaler Bogenwinkelschritt
      Der maximale Bogenwinkelschritt wird zum Suchen von Stützpunkten für die Konstruktion von Kreisbögen verwendet.

    • Hinweis:

      Der Parameter Maximaler Bogenwinkelschritt ist nicht verfügbar, wenn An Segmente anpassen ausgewählt wurde.

  • Wählen Sie Endpunkte bei geschlossenen Linien beibehalten aus, wenn die Endpunkte einer Linie mit lagegleichen Endpunkten (Schleife) erhalten bleiben sollen. Wenn Endpunkte bei geschlossenen Linien beibehalten aktiviert wurde, bleiben die Endpunkte erhalten. Wenn Endpunkte bei geschlossenen Linien beibehalten deaktiviert wurde, können die Endpunkte verschoben oder gelöscht werden.

Syntax

SimplifyByStraightLinesAndCircularArcs_edit (in_features, max_offset, {fitting_type}, {circular_arcs}, {max_arc_angle_step}, {min_vertex_count}, {min_radius}, {max_radius}, {min_arc_angle}, {closed_ends})
ParameterErklärungDatentyp
in_features

Die zu vereinfachenden Linien-Features.

Feature Layer
max_offset

Die maximale Entfernung, um die die Ausgabelinien von der Form der Eingabelinien abweichen können. Wenn An Stützpunkte anpassen ausgewählt wurde, wird die Entfernung zwischen den ursprünglichen Stützpunkten und den Ausgabelinien gemessen. Wenn An Segmente anpassen ausgewählt wurde, wird die Entfernung zwischen den Eingabeliniensegmenten und den Ausgabelinien gemessen.

Linear Unit
fitting_type
(optional)

Gibt an, wie die Ausgabelinien und Kreisbögen an die Form der Eingabelinien angepasst werden.

Wenn An Segmente anpassen ausgewählt wurde, sind die Parameter Maximaler Bogenwinkelschritt und Mindestanzahl an Stützpunkten nicht verfügbar.

  • FIT_TO_VERTICESMinimiert die Versatzlücke zwischen den Ausgabelinien und den vorhandenen Stützpunkten. Ausgabelinien und -kurven werden dann näherungsweise an vorhandene Stützpunkte angepasst. Dies ist die Standardeinstellung.
  • FIT_TO_SEGMENTS Minimiert die Versatzlücke zwischen den Ausgabelinien und den Eingabeliniensegmenten. Ausgabelinien und -kurven werden dann näherungsweise an vorhandene Segmente angepasst.
String
circular_arcs
(optional)

Steuert, ob Kreisbögen erstellt werden können.

  • CREATEEs können Kreisbögen erstellt werden. Dies ist die Standardeinstellung.
  • NOT_CREATEKreisbögen können nicht erstellt werden.
Boolean
max_arc_angle_step
(optional)

Der maximale Bogenwinkelschritt (Dezimalgrad), der zum Konstruieren von Kreisbögen verwendet wird. Der Bogenwinkel definiert die Breite eines Visualisierungsfeldes für jeden Schritt beim Positionieren von Stützpunkten für die Konstruktion von kreisförmigen Kurven. Der Bogenwinkel ist der Mittelwinkel der Kandidatenkurve (die Kurve, die konstruiert werden soll). Wenn innerhalb jedes maximalen Bogenwinkelschrittes Stützpunkte gefunden werden, wird ein Kreisbogen konstruiert. Wenn zum Beispiel nur wenige Stützpunkte und Segmente vorhanden sind, sollte ein großer Bogenwinkelschritt verwendet werden. Die gültigen Werte liegen im Bereich von 2 bis 95 Dezimalgrad. Die Standardeinstellung ist 20 Dezimalgrad. Dieser Parameter ist nicht verfügbar, wenn die Option An Segmente anpassen ausgewählt wurde.

Double
min_vertex_count
(optional)

Die Anzahl der Stützpunkte, die mindestens erforderlich sind, damit ein Kreisbogen erstellt werden kann. Der Wert muss größer als 3 sein. Die Standardeinstellung ist 4. Dieser Parameter ist nicht verfügbar, wenn die Option An Segmente anpassen ausgewählt wurde.

Long
min_radius
(optional)

Der kleinste zulässige Radius für Ausgabekreisbögen. Dieser Wert muss größer als 0 und kleiner als der angegebene Wert für Max. Radius sein. Wenn kein Wert angegeben wird, wird der Radius der Ausgabekreisbögen nicht geprüft (Standard).

Linear Unit
max_radius
(optional)

Der größte zulässige Radius für Ausgabekreisbögen. Dieser Wert muss größer als der angegebene Wert für Min. Radius sein. Wenn kein Wert angegeben wird, wird der Radius der Ausgabekreisbögen nicht geprüft (Standard).

Linear Unit
min_arc_angle
(optional)

Der minimale Bogenwinkel (Dezimalgrad). Der minimale Bogenwinkel ist der kleinste zulässige Mittelwinkel der Ausgabekreisbögen. Wenn der Mittelwinkel eines Ausgabekreisbogens kleiner als dieser Wert ist, wird er nicht erstellt. Die gültigen Werte liegen im Bereich von 2 bis 360 Dezimalgrad. Die Standardeinstellung ist 2 Dezimalgrad.

Double
closed_ends
(optional)

Steuert, ob die Endpunkte einer geschlossenen Linie erhalten bleiben sollen.

  • PRESERVEDie Endpunkte geschlossener Linien bleiben erhalten. Dies ist die Standardeinstellung.
  • NOT_PRESERVEDie Endpunkte geschlossener Linien bleiben nicht erhalten. Sie können verschoben oder gelöscht werden.
Boolean

Abgeleitete Ausgabe

NameErklärungDatentyp
out_feature_class

Die aktualisierten Eingabe-Features.

Feature-Layer

Codebeispiel

SimplifyByStraightLinesAndCircularArcs – Beispiel 1 (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion SimplifyByStraightLinesAndCircularArcs im unmittelbaren Modus verwendet wird.

import arcpy
arcpy.SimplifyByStraightLinesAndCircularArcs_edit("C:/data.gdb/parcel_lines", "20 feet")

Lizenzinformationen

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

Verwandte Themen