Layout für lineare Verteilung anwenden (Network Diagram)

Zusammenfassung

Erhöht den Abstand zwischen Schemaknoten, die visuell zu nahe beieinander liegen, sich überlappen oder lagegleich sind.

Weitere Informationen zum Algorithmus "Layout für lineare Verteilung"

Vorsicht:

Wenn Sie eine Editiersitzung geöffnet haben, müssen Sie die Bearbeitungen speichern, bevor Sie dieses Werkzeug ausführen. Dadurch wird sichergestellt, dass im Schema die letzten Änderungen an der Netzwerk-Topologie in der Datenbank widergespiegelt werden. Wenn Sie die Änderungen nicht speichern, werden die Bearbeitungen nicht im Schema widergespiegelt.

Hinweis:

Jeder Layout-Algorithmus enthält standardmäßige Parameterwerte. Die standardmäßigen Parameterwerte werden verwendet, sofern nichts anderes angegeben ist. Wenn das Eingabe-Netzwerkschema auf einer Vorlage basiert, für die dieses Layout mit einem anderen Parameterwert konfiguriert wurde, wird stattdessen dieser Wert verwendet.

Verwendung

  • Diese Werkzeug wird nicht unterstützt, wenn Sie mit einer Datenbankverbindung zu einem Versorgungsnetz in einer Enterprise-Geodatabase arbeiten. Sie müssen entweder den zugehörigen veröffentlichten Utility Network-Service oder ein Versorgungs- oder Verfolgungsnetz in einer File-Geodatabase verwenden.

  • Der Eingabe-Netzwerkschema-Layer muss aus einem Versorgungs- oder Verfolgungsnetz in einer File-Geodatabase oder einem Netzwerkschema-Service stammen.

  • Mit diesem Layout-Algorithmus wird der Abstand zwischen Schemaknoten erhöht, die visuell zu nahe beieinander liegen, sich überlappen oder lagegleich sind. Er verschiebt Knoten entlang ihrer verbundenen Kanten. Die Verschiebung entlang der Kanten hängt von der aktuellen und relativen Position von Knoten und von den Layout-Parametern ab.

  • Mit diesem Algorithmus werden außerdem Schemakanten getrennt, die mit Zielknoten verbunden sind. Die Valenz für diese Knoten wird berücksichtigt, d. h. die Anzahl ihrer benachbarten Kanten und die Kantenpfade können beibehalten werden.

  • Dieses Layout ist besonders nützlich für Wasser, Abwasser und Gas, kann jedoch auch für andere Branchen bereitgestellt werden.

  • Bei der Arbeit in sehr großen Schemas empfiehlt es sich, das Layout im asynchronen Modus auf dem Server anzuwenden.

Syntax

ApplyLinearDispatchLayout(in_network_diagram_layer, {junction_placement_type}, {is_unit_absolute}, {maximum_shift_absolute}, {maximum_shift_proportional}, {minimum_shift_absolute}, {minimum_shift_proportional}, {iterations_number}, {is_path_preserved}, {are_leaves_moved}, {are_leaves_expanded}, {expand_shift_absolute}, {expand_shift_proportional}, {run_async})
ParameterErklärungDatentyp
in_network_diagram_layer

Das Netzwerkschema, auf das das Layout angewendet wird.

Diagram Layer
junction_placement_type
(optional)

Gibt an, wie die Knoten verschoben werden.

  • EQUAL_DISTANCEAlle Knoten mit zwei verbundenen Kanten werden so verschoben, dass die Abstände zwischen ihnen und ihren zwei verbundenen Knoten gleich sind. Dies ist die Standardeinstellung.
  • USER_DEFINE_DISTANCEAlle Knoten mit zwei verbundenen Kanten werden so verschoben, dass sich ein Mindestabstand (Parameterwert für minimum_shift_) zwischen ihnen und dem anderen Ende der mit ihnen verbundenen Kanten ergibt. Diese Verschiebung wird am Ende der Layout-Ausführung durchgeführt.
  • ITERATIVE_DISTANCEAlle Knoten mit zwei verbundenen Kanten werden geringfügig entsprechend den Parameterwerten iterations_number und maximum_shift_ verschoben.
String
is_unit_absolute
(optional)

Gibt an, wie Parameter, die Abstände darstellen, interpretiert werden.

  • ABSOLUTE_UNITDer Layout-Algorithmus interpretiert alle Entfernungswerte als lineare Einheiten.
  • PROPORTIONAL_UNITDer Layout-Algorithmus interpretiert alle Entfernungswerte als relative Einheiten für eine Abschätzung des Durchschnitts für die Knotengrößen in der aktuellen Schemaausdehnung. Dies ist die Standardeinstellung.
Boolean
maximum_shift_absolute
(optional)

Die maximale Entfernung, mit der die Knoten mit zwei Verbindungen von den Knoten aus verschoben werden, mit denen sie verbunden sind. Der Standardwert beträgt 2 Einheiten im Koordinatensystem des Schemas. Sobald diese Entfernung erreicht ist, werden die Knoten bei folgenden Iterationen nicht mehr verschoben. Dieser Parameter kann nur verwendet werden, wenn Sie den Knotenplatzierungstyp ITERATIVE_DISTANCE und absolute Einheiten verwenden.

Linear Unit
maximum_shift_proportional
(optional)

Die maximale Entfernung, mit der die Knoten mit zwei Verbindungen von den Knoten aus verschoben werden, mit denen sie verbunden sind. Die Standardeinstellung ist 2. Sobald diese Entfernung erreicht ist, werden die Knoten bei folgenden Iterationen nicht mehr verschoben. Dieser Parameter kann nur verwendet werden, wenn Sie den Knotenplatzierungstyp ITERATIVE_DISTANCE und proportionale Einheiten verwenden.

Double
minimum_shift_absolute
(optional)

Die minimale Entfernung, die jeden Knoten mit zwei verbundenen Kanten nach der Layout-Ausführung von den zugehörigen Kantenenden trennt. Der Standardwert beträgt 2 Einheiten im Koordinatensystem des Schemas. Wenn dieser Parameterwert zu groß ist, werden die Knoten mit zwei Verbindungen so verschoben, dass die Entfernungen zwischen jedem verschobenen Knoten und den zugehörigen Kantenenden entlang dem durch die zwei verbundenen Kanten definierten Pfad gleich sind. Dieser Parameter kann nur verwendet werden, wenn Sie den Knotenplatzierungstyp USER_DEFINE_DISTANCE und absolute Einheiten verwenden.

Linear Unit
minimum_shift_proportional
(optional)

Die minimale Entfernung, die jeden Knoten mit zwei verbundenen Kanten nach der Layout-Ausführung von den zugehörigen Kantenenden trennt. Die Standardeinstellung ist 2. Wenn dieser Parameterwert zu groß ist, werden die Knoten mit zwei Verbindungen so verschoben, dass die Entfernungen zwischen jedem verschobenen Knoten und den zugehörigen Kantenenden entlang dem durch die zwei verbundenen Kanten definierten Pfad gleich sind. Dieser Parameter wird verwendet, wenn Sie den Knotenplatzierungstyp USER_DEFINE_DISTANCE und proportionale Einheiten verwenden.

Double
iterations_number
(optional)

Die Anzahl der zu verarbeitenden Iterationen. Die Standardeinstellung ist 5. Dieser Parameter kann nur verwendet werden, wenn Sie den Knotenplatzierungstyp ITERATIVE_DISTANCE verwenden.

Long
is_path_preserved
(optional)

Gibt an, wie die Stützpunkte entlang der Kanten verarbeitet werden.

  • PRESERVE_PATHAlle Stützpunkte entlang der verbundenen Kanten werden beibehalten, neue Stützpunkte werden an den ursprünglichen Positionen der verschobenen Knoten hinzugefügt. Dies ist die Standardeinstellung.
  • IGNORE_PATHDie Stützpunkte entlang der Kanten werden nicht beibehalten.
Boolean
are_leaves_moved
(optional)

Gibt an, ob Blattknoten – Knoten mit einer Verbindung – während der Ausführung des Algorithmus verschoben werden:

  • MOVE_LEAVESBlattknoten werden verschoben.
  • DO_NOT_MOVE_LEAVESBlattknoten werden nicht verschoben. Dies ist die Standardeinstellung, es sei denn, das angegebene Eingabe-Netzwerkschema basiert auf einer Vorlage, für die der Algorithmus "Layout für lineare Verteilung" mit einem anderen Parameterwert konfiguriert wurde.
Boolean
are_leaves_expanded
(optional)

Gibt an, ob Blattknoten erweitert werden:

  • EXPAND_LEAVESBlattknoten werden erweitert. Der Parameterwert expand_shift_absolute gibt die maximale Entfernung an, um die diese Blattknoten von den Knoten aus erweitert werden können, mit denen sie verbunden sind.
  • DO_NOT_EXPAND_LEAVESBlattknoten werden nicht erweitert. Dies ist die Standardeinstellung, es sei denn, das angegebene Eingabe-Netzwerkschema basiert auf einer Vorlage, für die der Algorithmus "Layout für lineare Verteilung" mit einem anderen Parameterwert konfiguriert wurde.
Boolean
expand_shift_absolute
(optional)

Die maximale Entfernung, um die Blattknoten von den Knoten aus erweitert werden, mit denen sie verbunden sind. Der Standardwert beträgt 2 Einheiten des Koordinatensystems des Schemas, es sei denn, das angegebene Eingabe-Netzwerkschema basiert auf einer Vorlage, für die der Algorithmus "Layout für lineare Verteilung" mit einem anderen Parameterwert konfiguriert wurde. Sobald diese Entfernung erreicht ist, werden die Blattknoten bei folgenden Iterationen nicht mehr verschoben. Dieser Parameter kann nur verwendet werden, wenn Sie den Knotenplatzierungstyp Blätter erweitern und absolute Einheiten verwenden.

Linear Unit
expand_shift_proportional
(optional)

Die maximale Entfernung, um die Blattknoten von den Knoten aus erweitert werden, mit denen sie verbunden sind. Der Standardwert beträgt 2, es sei denn, das angegebene Eingabe-Netzwerkschema basiert auf einer Vorlage, für die der Algorithmus "Layout für lineare Verteilung" mit einem anderen Parameterwert konfiguriert wurde. Sobald diese Entfernung erreicht ist, werden die Blattknoten bei folgenden Iterationen nicht mehr verschoben. Dieser Parameter kann nur verwendet werden, wenn Sie den Knotenplatzierungstyp Blätter erweitern und proportionale Einheiten verwenden.

Double
run_async
(optional)

Gibt an, ob der Layout-Algorithmus asynchron oder synchron auf dem Server ausgeführt wird.

  • RUN_ASYNCHRONOUSLYDer Layout-Algorithmus wird asynchron auf dem Server ausgeführt. Diese Option weist Serverressourcen an, den Layout-Algorithmus mit einem längeren Timeout auszuführen. Die asynchrone Ausführung ist empfehlenswert, wenn zeitintensive Layouts (z. B. teilweise überlappende Kanten) ausgeführt werden, die ansonsten das Serverzeitlimit überschreiten würden und auf große Schemas (mehr als 25.000 Features) angewendet werden.
  • RUN_SYNCHRONOUSLYDer Layout-Algorithmus wird synchron auf dem Server ausgeführt. Er kann vor dem Abschluss des Vorgangs fehlschlagen, wenn für die Ausführung das Service-Timeout (standardmäßig 600 Sekunden) überschritten wird. Dies ist die Standardeinstellung.
Boolean

Abgeleitete Ausgabe

NameErklärungDatentyp
out_network_diagram_layer

Der aktualisierte Netzwerkschema-Layer.

Schema-Layer

Codebeispiel

ApplyLinearDispatchLayout – Beispiel (Python-Fenster)

Mit diesem Beispielskript wird der Algorithmus "Layout für lineare Verteilung" auf das Schema "Temporary Diagram" angewendet.

import arcpy
arcpy.ApplyLinearDispatchLayout_nd("Temporary Diagram", "ITERATIVE_DISTANCE", 
                                   "ABSOLUTE_UNIT", "15 Feet", "", "2 Feet", 
                                   "", 10, "PRESERVE_PATH", "DO_NOT_MOVE_LEAVES", 
                                   "DO_NOT_EXPAND_LEAVES", "2 Feet", 2, 
                                   "RUN_SYNCHRONOUSLY")

Umgebungen

Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.

Lizenzinformationen

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

Verwandte Themen