Kräftebasiertes Layout hinzufügen (Network Diagram)

Zusammenfassung

Fügt den Algorithmus "Kräftebasiertes Layout" zur Liste der Layouts hinzu, die automatisch am Ende der Generierung von Schemas basierend auf einer bestimmten Vorlage angehängt werden sollen. Dieses Werkzeug stellt auch entsprechend dieser Vorlage die Parameter des Algorithmus "Kräftebasiertes Layout" ein.

Dieser Algorithmus verwendet eine physische Analogie zur Darstellung von Schemas, indem ein Kräftesystem bestimmt wird, in dem die Energie lokal minimiert wird. Er sucht nach einem Gleichgewichtszustand des Kräftesystems, d. h. einer Position für jeden Schemaknoten, an der die Gesamtkraft an jedem Knoten null beträgt.

Weitere Informationen zum Algorithmus "Kräftebasiertes Layout"

Vorsicht:

Dieses Werkzeug ist ein Konfigurations- und Verwaltungswerkzeug.

Hinweis:

Dieses Werkzeug hat Auswirkungen auf die Konsistenz aller vorhandenen Schemas, die auf der Eingabeschemavorlage basieren. Alle vorhandenen Schemas werden inkonsistent und werden beim Öffnen mit dem Konsistenzwarnsymbol Zu aktualisierendes Schema angezeigt, bis sie aktualisiert werden.

Verwendung

  • Bei Verwendung eines Utility Network- oder Trace Network-Service wird dieses Werkzeug nicht unterstützt. Sie müssen entweder ein Versorgungs- oder Verfolgungsnetz in einer File- oder mobilen Geodatabase oder eine Datenbankverbindung zu einem Versorgungs- oder Verfolgungsnetz in einer Enterprise-Geodatabase verwenden. Für die Verwendung einer Enterprise-Geodatabase gelten folgende Voraussetzungen:

  • Um die Parameter für den Layout-Algorithmus eines Schemas basierend auf der Schemavorlage voreinzustellen, deaktivieren Sie den Parameter Aktiv (is_active = "INACTIVE" in Python).

  • Führen Sie das Werkzeug mit aktivierter Option Aktiv (is_active = "ACTIVE" in Python) aus, wenn Sie möchten, dass der Layout-Algorithmus der Liste der Layouts hinzugefügt wird, die automatisch am Ende der Schemaerstellung basierend auf der Eingabe-Schemavorlage verkettet werden.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Netzwerk

Das Versorgungs- oder Verfolgungsnetz, das die zu ändernde Schemavorlage enthält.

Utility Network; Trace Network
Eingabe-Schemavorlage

Der Name der Schemavorlage, die geändert werden soll.

String
Aktiv

Gibt an, ob der Layout-Algorithmus automatisch ausgeführt wird, wenn Schemas basierend auf einer angegebenen Vorlage erstellt werden.

  • Aktiviert: Der hinzugefügte Layout-Algorithmus wird automatisch während der Erstellung beliebiger Schemas ausgeführt, die auf dem Parameterwert Eingabe-Schemavorlage basieren. Dies ist die Standardeinstellung.

    Die für den Layout-Algorithmus angegebenen Parameterwerte entsprechen den Werten, die zum Ausführen des Layouts während der Schemaerstellung verwendet werden. Sie werden darüber hinaus standardmäßig geladen, wenn der Algorithmus für ein beliebiges Schema basierend auf der Eingabevorlage ausgeführt wird.

  • Deaktiviert: Alle derzeit für den hinzugefügten Layout-Algorithmus angegebenen Parameterwerte werden standardmäßig geladen, wenn der Algorithmus für beliebige Schemas basierend auf der Eingabevorlage ausgeführt wird.

Boolean
Container-Layout beibehalten
(optional)

Legt fest, wie der Algorithmus Container verarbeitet:

  • Aktiviert: Der Layout-Algorithmus wird auf den oberen Graphen des Schemas angewendet, sodass die Container beibehalten werden.
  • Deaktiviert: Der Layout-Algorithmus wird auf Features mit und ohne Inhalt im Schema angewendet. Dies ist die Standardeinstellung.

Boolean
Anzahl der Iterationen
(optional)

Die Anzahl der zu verarbeitenden Iterationen. Die Standardeinstellung ist 20.

Long
Abstoßungsfaktor
(optional)

Fügt Abstand zwischen Schemaknoten hinzu, die sehr nah beieinander liegen. Je größer der Abstoßungsfaktor, umso mehr Längeneinheiten werden zwischen einander nahezu überlappenden Schemaknoten hinzugefügt. Der Standardwert ist 1.

Double
Freiheitsgrad
(optional)

Gibt den Bereich an, der bei den einzelnen Algorithmusiterationen zum Verschieben der Schemaknoten verwendet wird.

  • GeringDer Bereich, der zum Verschieben der Schemaknoten verwendet wird, ist begrenzt. Dies ist die Standardeinstellung.
  • HochDer Bereich, der zum Verschieben der Schemaknoten verwendet wird, ist groß.
  • MittelDer Bereich, der zum Verschieben der Schemaknoten verwendet wird, ist mittelgroß.
String
Relative Teilungspunktposition (%)
(optional)

Die relative Position der beiden Wendepunkte, die entlang der Schemakanten eingefügt werden, um die Geometrie von geschwungenen Kanten zu berechnen, wenn Kantenanzeigetyp auf Geschwungene Kanten gesetzt ist (edges_display_type = "CURVED_EDGES" in Python). Dabei handelt es sich um einen Prozentsatz zwischen 15 und 40. Der Standardwert ist 30. Bei einem Wert N zwischen 15 und 40 für den Parameter Relative Teilungspunktposition (%) gilt beispielsweise Folgendes:

  • Mit X als der X-Koordinate der vom Knoten ausgehenden Kante und Y als der Y-Koordinate der vom Knoten ausgehenden Kante für eine horizontale Baumstruktur:
    • Der erste Wendepunkt wird bei N % der Länge des [XY]-Segments positioniert
    • Der zweite Wendepunkt wird bei (100-N) % der Länge des [XY]-Segments positioniert
  • Mit Y als der Y-Koordinate der vom Knoten ausgehenden Kante und X als der X-Koordinate der vom Knoten ausgehenden Kante für eine vertikale Baumstruktur:
    • Der erste Wendepunkt wird bei N % der Länge des [YX]-Segments positioniert.
    • Der zweite Wendepunkt wird bei (100-N) % der Länge des [XY]-Segments positioniert

Hinweis:

Das oben beschriebene Konzept der ausgehenden Knoten und Zielknoten ist relativ zur Richtung der Baumstruktur. Die reale Topologie des Netzwerk-Features oder der Objektkante spielt dabei keine Rolle.

Dieser Parameter wird ignoriert, wenn der Parameter Kantenanzeigetyp auf Regelmäßige Kanten gesetzt ist (edges_display_type = "REGULAR_EDGES" in Python).

Double
Kantenanzeigetyp
(optional)

Gibt den Anzeigetyp für die Schemakanten an.

  • Regelmäßige KantenAlle Schemakanten werden als gerade Linien angezeigt. Dies ist die Standardeinstellung.
  • Geschwungene KantenAlle Schemakanten werden geschwungen dargestellt.
String

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Ausgabe-Netzwerk

Das aktualisierte utility network or trace network.

Versorgungsnetz, Verfolgungsnetz
Ausgabe-Schemavorlage

Der Name der Schemavorlage

Zeichenfolge

arcpy.nd.AddForceDirectedLayout(in_utility_network, template_name, is_active, {are_containers_preserved}, {iterations_number}, {repel_factor}, {degree_freedom}, {breakpoint_position}, {edge_display_type})
NameErläuterungDatentyp
in_utility_network

Das Versorgungs- oder Verfolgungsnetz, das die zu ändernde Schemavorlage enthält.

Utility Network; Trace Network
template_name

Der Name der Schemavorlage, die geändert werden soll.

String
is_active

Gibt an, ob der Layout-Algorithmus automatisch ausgeführt wird, wenn Schemas basierend auf einer angegebenen Vorlage erstellt werden.

  • ACTIVEDer hinzugefügte Layout-Algorithmus wird automatisch während der Erstellung eines beliebigen Schemas ausgeführt, das auf dem Parameterwert template_name basiert. Dies ist die Standardeinstellung.Die für den Layout-Algorithmus angegebenen Parameterwerte entsprechen den Werten, die zum Ausführen des Layouts während der Schemaerstellung verwendet werden. Sie werden darüber hinaus standardmäßig geladen, wenn der Algorithmus für ein beliebiges Schema basierend auf der Eingabevorlage ausgeführt wird.
  • INACTIVEAlle derzeit für den hinzugefügten Layout-Algorithmus angegebenen Parameterwerte entsprechen den Werten, die standardmäßig geladen werden, wenn der Algorithmus für beliebige Schemas basierend auf der Eingabevorlage ausgeführt wird.
Boolean
are_containers_preserved
(optional)

Legt fest, wie der Algorithmus Container verarbeitet:

  • PRESERVE_CONTAINERSDer Layout-Algorithmus wird auf den oberen Graphen des Schemas angewendet, sodass die Container beibehalten werden.
  • IGNORE_CONTAINERSDer Layout-Algorithmus wird auf Features mit und ohne Inhalt im Schema angewendet. Dies ist die Standardeinstellung.
Boolean
iterations_number
(optional)

Die Anzahl der zu verarbeitenden Iterationen. Die Standardeinstellung ist 20.

Long
repel_factor
(optional)

Fügt Abstand zwischen Schemaknoten hinzu, die sehr nah beieinander liegen. Je größer der Abstoßungsfaktor, umso mehr Längeneinheiten werden zwischen einander nahezu überlappenden Schemaknoten hinzugefügt. Der Standardwert ist 1.

Double
degree_freedom
(optional)

Gibt den Bereich an, der bei den einzelnen Algorithmusiterationen zum Verschieben der Schemaknoten verwendet wird.

  • LOWDer Bereich, der zum Verschieben der Schemaknoten verwendet wird, ist begrenzt. Dies ist die Standardeinstellung.
  • HIGHDer Bereich, der zum Verschieben der Schemaknoten verwendet wird, ist groß.
  • MEDIUMDer Bereich, der zum Verschieben der Schemaknoten verwendet wird, ist mittelgroß.
String
breakpoint_position
(optional)

Die relative Position der beiden Wendepunkte, die entlang der Schemakanten eingefügt werden, um die Geometrie von geschwungenen Kanten zu berechnen, wenn Kantenanzeigetyp auf Geschwungene Kanten gesetzt ist (edges_display_type = "CURVED_EDGES" in Python). Dabei handelt es sich um einen Prozentsatz zwischen 15 und 40. Der Standardwert ist 30. Bei einem Wert N zwischen 15 und 40 für den Parameter Relative Teilungspunktposition (%) gilt beispielsweise Folgendes:

  • Mit X als der X-Koordinate der vom Knoten ausgehenden Kante und Y als der Y-Koordinate der vom Knoten ausgehenden Kante für eine horizontale Baumstruktur:
    • Der erste Wendepunkt wird bei N % der Länge des [XY]-Segments positioniert
    • Der zweite Wendepunkt wird bei (100-N) % der Länge des [XY]-Segments positioniert
  • Mit Y als der Y-Koordinate der vom Knoten ausgehenden Kante und X als der X-Koordinate der vom Knoten ausgehenden Kante für eine vertikale Baumstruktur:
    • Der erste Wendepunkt wird bei N % der Länge des [YX]-Segments positioniert.
    • Der zweite Wendepunkt wird bei (100-N) % der Länge des [XY]-Segments positioniert

Hinweis:

Das oben beschriebene Konzept der ausgehenden Knoten und Zielknoten ist relativ zur Richtung der Baumstruktur. Die reale Topologie des Netzwerk-Features oder der Objektkante spielt dabei keine Rolle.

Dieser Parameter wird ignoriert, wenn der Parameter Kantenanzeigetyp auf Regelmäßige Kanten gesetzt ist (edges_display_type = "REGULAR_EDGES" in Python).

Double
edge_display_type
(optional)

Gibt den Anzeigetyp für die Schemakanten an.

  • REGULAR_EDGESAlle Schemakanten werden als gerade Linien angezeigt. Dies ist die Standardeinstellung.
  • CURVED_EDGESAlle Schemakanten werden geschwungen dargestellt.
String

Abgeleitete Ausgabe

NameErläuterungDatentyp
out_utility_network

Das aktualisierte utility network or trace network.

Versorgungsnetz, Verfolgungsnetz
out_template_name

Der Name der Schemavorlage

Zeichenfolge

Codebeispiel

AddForceDirectedLayout – Beispiel (Python-Fenster)

Der Algorithmus "Kräftebasiertes Layout" wird der mit dem Eingabe-Netzwerk verknüpften Vorlage "MyTemplate1" als automatisches Layout hinzugefügt.

import arcpy
input_Network = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.Electric"
input_DiagramTemplate = "MyTemplate1"
arcpy.AddForceDirectedLayout_nd(input_Network, "MyTemplate1", "ACTIVE", 
                                "PRESERVE_CONTAINERS", 20, 1, "LOW", "25", 
                                "CURVED_EDGES")

Umgebungen

Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.

Lizenzinformationen

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

Verwandte Themen