概要
既存のテンプレートに基づいて、ダイアグラム構築中にダイアグラム ジャンクションを自動的に削減するためのダイアグラム ルールを追加します。このツールは、接続されている他のジャンクションの数に従って、複数のネットワーク ジャンクション ソース クラスおよびオブジェクト テーブルに基づいてジャンクションを削減します。
注意:
このツールは構成および管理ツールです。
メモ:
このツールは、入力ダイアグラム テンプレートに基づく既存のダイアグラムの一貫性に影響を与えます。更新されるまで、既存のダイアグラムはすべて一貫性なしになり、一貫性警告アイコン が表示されます。
使用法
このツールは、ユーティリティ ネットワーク サービスを使用する場合、サポートされません。ファイル ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークを使用するか、エンタープライズ ジオデータベース内のユーティリティ ネットワークへのデータベース接続を使用する必要があります。エンタープライズ ジオデータベースを使用している場合は、接続をデータベース ユーティリティ ネットワーク所有者として確立する必要があります。
エンタープライズ ジオデータベースのユーティリティ ネットワークにこの操作を行う場合、接続する ArcGIS Enterprise ポータル アカウントはポータル ユーティリティ ネットワークの所有者である必要があります。
入力ネットワーク パラメーターに指定するネットワーク データ エレメントは、ファイル ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワーク、あるいはエンタープライズ ジオデータベース内のユーティリティ ネットワークへのデータベース接続から取得する必要があります。
ジャンクションの削減ルールは、トポロジを維持しながらダイアグラム グラフを単純化するために使用されます。
このツールを使用すると、隣接ジャンクションの数、つまり、接続されているジャンクションの数、および必要な場合は隣接するエッジ上の特定の属性に従い、さまざまなネットワーク ジャンクション クラスおよびオブジェクト テーブルに基づいてジャンクションを削減するジャンクションの削減ルールを構成できます。
このツールを構成して、指定したネットワーク ジャンクション ソース クラスおよびオブジェクト テーブルに基づくすべてのダイアグラム フィーチャ、または指定したネットワーク ジャンクション ソース クラスおよびオブジェクト テーブルに基づくダイアグラム フィーチャを除くすべてのダイアグラム フィーチャを削減することができます。
このツールの構成で [ルール プロセス] が [ソース クラスを除外] (Python では rule_process = "EXCLUDE_SOURCE_CLASSES") に設定され、ジャンクション ソース クラスもオブジェクト テーブルも指定されていない場合、このツールは、ジャンクション ソース クラスまたはオブジェクト テーブルに関係なく、処理対象ダイアグラム内の各ジャンクションに対して機能します。このツールを構成して、たとえば、ダイアグラム内の接続されていないジャンクションをすべて削減できます。
このツールのデフォルトでは、[ルール プロセス] が [ソース クラスを含める] (Python では rule_process = "INCLUDE_SOURCE_CLASSES") に設定され、1 つまたは複数のジャンクション ソース クラスまたはオブジェクト テーブルが処理されることが想定されます。
指定した [ジャンクション ソース] パラメーター (Python ではjunction_source) の値に SystemJunctions クラスが存在する場合、ルールはシステム ジャンクションおよびシステム ジャンクション オブジェクトの両方に規則的に適用されます。
構文
AddReduceJunctionRule(in_utility_network, template_name, is_active, {inverse_source_selection}, {junction_source}, {connectivity_options}, {unconnected_junctions}, {one_connected_junction}, {two_connected_junctions}, {edges_attributes}, {description})
パラメーター | 説明 | データ タイプ |
in_utility_network | 変更するダイアグラム テンプレートを含むユーティリティ ネットワークまたはトレース ネットワーク。 | Utility Network; Trace Network |
template_name | 変更するダイアグラム テンプレートの名前。 | String |
is_active | 指定したテンプレートに基づくダイアグラムの生成および更新時にルールを有効にするかどうかを指定します。
| Boolean |
inverse_source_selection (オプション) | 指定したジャンクション ソース クラスおよびオブジェクト テーブルが処理される方法を指定します。
| String |
junction_source [junction_source,...] (オプション) | ルール プロセスに応じて除外または含めるネットワーク ジャンクション ソース クラスおよびオブジェクト テーブルのリスト。 [ルール プロセス] がデフォルトの [ソース クラスを含める] (Python では inverse_source_selection = "INCLUDE_SOURCE_CLASSES") に設定されている場合、1 つまたは複数のネットワーク ジャンクション ソース クラスまたはオブジェクト テーブルが処理されます。このソース クラスおよびオブジェクト テーブルに属しているネットワーク ジャンクションに関連するすべてのダイアグラム ジャンクションが削減の候補になります。 メモ:[ジャンクションの削減ルールを追加 (Add Reduce Junction Rule)] ツールは、優先度が最高のジャンクション クラスまたはテーブル (リスト内の最初のクラスまたはテーブル) から優先度が最低のジャンクション クラスまたはテーブル (リスト内の最後のクラスまたはテーブル) まで、このリストの順にジャンクション ソース クラスおよびオブジェクト テーブルを処理します。 [ルール プロセス] が [ソース クラスを除外] (Python では inverse_source_selection = "EXCLUDE_SOURCE_CLASSES") に設定されている場合、特定のジャンクション ソース クラスまたはオブジェクト テーブルを指定する必要はありません。この場合、ソース クラスまたはオブジェクト テーブルに関係なく、生成されたダイアグラム内のすべてのジャンクションが削減されます。 メモ:ネットワーク ジャンクション ソース クラス内の SystemJunctions クラスを指定すると、ルールはシステム ジャンクションおよびシステム ジャンクション オブジェクトの両方を規則的に処理します。 | Table; Feature Class |
connectivity_options (オプション) | 削減の対象として考慮されるジャンクション接続の数を指定します。
| String |
unconnected_junctions (オプション) | 未接続の各ネットワーク ダイアグラム ジャンクション候補が削減されるかどうかを指定します。 このパラメーターは、connectivity_options = "MAX_2_CONNECTED_JUNCTIONS" である場合にのみ使用できます。
| Boolean |
one_connected_junction (オプション) | 単一のジャンクションに接続されている各ネットワーク ダイアグラム ジャンクション削減候補が削減されるかどうかを指定します。このパラメーターは、connectivity_options = "MAX_2_CONNECTED_JUNCTIONS" である場合にのみ使用できます。
| Boolean |
two_connected_junctions (オプション) | 別の 2 つのジャンクションに接続されている各ネットワーク ダイアグラム ジャンクション削減候補が削減されるかどうかを指定します。このパラメーターは、connectivity_options = "MAX_2_CONNECTED_JUNCTIONS" である場合にのみ使用できます。
| Boolean |
edges_attributes [edges_attributes,...] (オプション) | ジャンクション削減候補に隣接するエッジ属性のエイリアス。 ジャンクションは、指定された属性エイリアスごとに、そのすべての隣接エッジが同じ値を持つ場合にのみ削減されます。 | String |
description (オプション) | ルールの説明。 | String |
派生した出力
名前 | 説明 | データ タイプ |
out_utility_network | 更新されたユーティリティ ネットワークまたはトレース ネットワーク。 | ユーティリティ ネットワーク、トレース ネットワーク |
out_template_name | ダイアグラム テンプレートの名前。 | 文字列 |
コードのサンプル
指定したネットワーク用の既存の MyTemplate1 テンプレートにジャンクションの削減ルールを追加して、接続されていないか、別の 2 つのジャンクションに接続されている電力システム ジャンクションとその他のジャンクションを系統的に削減します。
import arcpy
input_Network = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.Electric"
input_DiagramTemplate = "MyTemplate1"
input_JunctionClassToReduce1 = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.UN_112_SystemJunctions"
input_JunctionClassToReduce2 = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionJunction"
arcpy.AddReduceJunctionRule_nd(
input_Network, input_DiagramTemplate, "ACTIVE",
'INCLUDE_SOURCE_CLASSES',
input_JunctionClassToReduce1 + ";" + input_JunctionClassToReduce2,
"MAX_2_CONNECTED_JUNCTIONS", "REDUCE_UNCONNECTED_JCT", "KEEP_JCT_TO_1JCT",
"REDUCE_JCT_TO_2JCTS")
指定したネットワーク用の既存の MyTemplate2 テンプレートにジャンクションの削減ルールを追加して、その他のジャンクションが別の 2 つのジャンクションに接続されており、隣接エッジのAsset typeおよびPhasesの属性の値が同じである場合に、その他のジャンクションを系統的に削減します。
import arcpy
input_Network = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.Electric"
input_DiagramTemplate = "MyTemplate2"
input_JunctionClassToReduce1 = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionJunction"
input_Alias1 = "Asset type"
input_Alias2 = "Phases"
arcpy.AddReduceJunctionRule_nd(
input_Network, input_DiagramTemplate, "ACTIVE",
'INCLUDE_SOURCE_CLASSES', input_JunctionClassToReduce1,
"MAX_2_CONNECTED_JUNCTIONS", "KEEP_UNCONNECTED_JCT", "KEEP_JCT_TO_1JCT",
"REDUCE_JCT_TO_2JCTS", input_Alias1 + ";" + input_Alias2)
環境
ライセンス情報
- Basic: いいえ
- Standard: はい
- Advanced: はい