Zusammenfassung
Fügt eine Schemaregel für das Angeben des Anfangs einer Regelsequenz beim Erstellen von Schemas basierend auf einer vorhandenen Vorlage hinzu.
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 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-Geodatabase oder eine Datenbankverbindung zu einem Versorgungs- oder Verfolgungsnetz in einer Enterprise-Geodatabase verwenden. Für die Verwendung einer Enterprise-Geodatabase gelten folgende Voraussetzungen:
- Der Parameterwert Eingabe-Netzwerk muss aus einer Datenbankverbindung stammen, die als Besitzer des Datenbank-Versorgungsnetzes oder als Besitzers des Datenbank-Verfolgungsnetzes hergestellt wurde.
- Bei dem verbundenen ArcGIS Enterprise-Portal-Konto muss es sich um den Besitzer des Portal-Versorgungsnetzes oder den Besitzer des Portal-Verfolgungsnetzes handeln.
- Dieses Werkzeug muss mit der Default-Version verbunden sein, von der vorausgesetzt wird, dass sie öffentlich und nicht geschützt ist.
Die Regel "Iteration starten" gibt den Anfang einer Regelsequenz an, an der der Schema-Builder-Prozess die Schleife durchläuft. Diese Schleife wird normalerweise konfiguriert, wenn Schemaknoten reduziert werden, da sich durch Reduktionsregeln die Anzahl von Knoten ändert, die mit den restlichen Knoten verbunden sind. Diese Verbindungsänderungen können dazu führen, dass einige Knoten neue Kandidaten für die Reduktionsregeln werden, die in der Vorlage konfiguriert sind.
Syntax
arcpy.nd.AddStartIterationRule(in_utility_network, template_name, is_active, {description})
Parameter | Erklärung | Datentyp |
in_utility_network | Das Versorgungs- oder Verfolgungsnetz, das die zu ändernden Schemavorlagendefinitionen referenziert. | Utility Network; Trace Network |
template_name | Der Name der zu ändernden Schemavorlage. | String |
is_active | Gibt an, ob die Regel aktiviert ist, wenn Schemas basierend auf der angegebenen Vorlage erstellt und aktualisiert werden.
| Boolean |
description (optional) | Die Beschreibung der Regel. | String |
Abgeleitete Ausgabe
Name | Erklärung | Datentyp |
out_utility_network | Das aktualisierte Versorgungs- oder Verfolgungsnetz. | Versorgungsnetz, Verfolgungsnetz |
out_template_name | Der Name der Schemavorlage | Zeichenfolge |
Codebeispiel
Mit diesem Beispielskript wird eine Vorlage erstellt, die so konfiguriert wird, dass ein Teilnetz verfolgt wird, Container entfernt werden und eine Reihe von Reduktionsregeln in einer Schleife durchlaufen wird. Mit den Regeln werden alle Systemknoten und sonstigen Knoten reduziert, die mit 0, 1 oder 2 anderen Knoten verbunden sind. Ferner werden außer Leistungsschaltern und sonstigen Schaltern alle Verteilungsbauteile, die mit 0, 1 oder 2 Knoten verbunden sind, sowie alle Systemknoten und sonstigen Knoten, die mit mindestens 3 anderen Knoten verbunden sind, reduziert.
import arcpy
input_Network = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.Electric"
input_DiagramTemplate = "Template1"
input_StructureJunction = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.StructureJunction"
input_DistributionAssembly = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionAssembly"
input_DistributionDevice = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionDevice"
input_MiscJunction = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionJunction"
input_SystemJunctions = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.UN_112_SystemJunctions"
arcpy.AddDiagramTemplate_nd(input_Network, input_DiagramTemplate)
arcpy.AddTraceRule_nd(input_Network, input_DiagramTemplate, "ACTIVE",
"SUBNETWORK", "ElectricDistribution", "Medium Voltage",
"Low Voltage Mesh")
arcpy.AddRemoveFeatureRule_nd(input_Network, input_DiagramTemplate,
'ACTIVE', 'INCLUDE_SOURCE_CLASSES',
input_StructureJunction + ";" + input_DistributionAssembly)
arcpy.AddStartIterationRule_nd(input_Network, input_DiagramTemplate,
'ACTIVE')
arcpy.AddReduceJunctionRule_nd(input_Network, input_DiagramTemplate,
'ACTIVE', 'INCLUDE_SOURCE_CLASSES',
input_SystemJunctions + ";" + input_MiscJunction,
"MAX_2_CONNECTED_JUNCTIONS",
"REDUCE_UNCONNECTED_JCT",
"REDUCE_JCT_TO_1JCT", "REDUCE_JCT_TO_2JCTS")
arcpy.AddReduceJunctionByAttributesRule_nd(input_Network,
input_DiagramTemplate, 'ACTIVE', "",
input_DistributionDevice,
"ASSETGROUP NOT IN (4, 15)",
"MAX_2_CONNECTED_JUNCTIONS",
"REDUCE_UNCONNECTED_JCT",
"REDUCE_JCT_TO_1JCT",
"REDUCE_JCT_TO_2JCTS")
arcpy.AddReduceJunctionRule_nd(input_Network, input_DiagramTemplate,
'ACTIVE', 'INCLUDE_SOURCE_CLASSES',
input_SystemJunctions + ";" + input_MiscJunction,
"MIN_3_CONNECTED_JUNCTIONS")
arcpy.AddStopIterationRule_nd(input_Network, input_DiagramTemplate,
'ACTIVE')
Umgebungen
Lizenzinformationen
- Basic: Nein
- Standard: Ja
- Advanced: Ja