概要
既存のテンプレートに基づいて、ダイアグラム構築中にダイアグラム ジャンクションを自動的に削減するためのダイアグラム ルールを追加します。削減されるジャンクションは、接続される他のジャンクションの数に従って、指定したネットワーク ジャンクション ソース クラスまたはオブジェクト テーブルから検索されます。
注意:
このツールは構成および管理ツールです。
メモ:
このツールは、入力ダイアグラム テンプレートに基づく既存のダイアグラムの一貫性に影響を与えます。更新されるまで、既存のダイアグラムはすべて一貫性なしになり、一貫性警告アイコン が表示されます。
使用法
このツールは、ユーティリティ ネットワーク サービスまたはトレース ネットワーク サービスを使用する場合、サポートされません。ファイル ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークを使用するか、エンタープライズ ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークへのデータベース接続を使用する必要があります。エンタープライズ ジオデータベースを操作する場合、次の要件があります。
- [入力ネットワーク] パラメーター値は、データベース ユーティリティ ネットワークの所有者またはデータベース トレース ネットワーク所有者として、確立されたデータベース接続から取得する必要があります。
- 接続された ArcGIS Enterprise ポータル アカウントは、ポータル ユーティリティ ネットワークの所有者またはポータル トレース ネットワーク所有者である必要があります。
- このツールは、パブリックで保護されていないと想定される、デフォルトのバージョンに接続されている必要があります。
ジャンクションの削減ルールは、トポロジを維持しながらダイアグラム グラフを単純化するために使用されます。
このツールを使用すると、属性に基づいて削減を行うようにジャンクションの削減ルールを構成することができます。接続先となるジャンクションの数と、必要な場合は隣接するエッジ上の特定の属性に従って、属性を基準に削減するジャンクションをフィルタリングすることで、指定したネットワーク ジャンクション クラスまたはオブジェクト テーブル内のジャンクションを削減するように構成できます。
構文
arcpy.nd.AddReduceJunctionByAttributeRule(in_utility_network, template_name, is_active, junction_source, {where_clause}, {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 |
junction_source | 処理対象となるネットワーク ジャンクション ソース クラスまたはオブジェクト テーブル。このソース クラスまたはオブジェクト テーブルに属しているネットワーク ジャンクションに関連するすべてのダイアグラム ジャンクションが削減の候補になります。 | Table; Feature Class |
where_clause (オプション) | 入力テンプレートに基づくダイアグラム内のジャンクション削減候補からネットワーク ジャンクションのサブセットを選択するために使用する SQL 式。SQL 構文の詳細については、「ArcGIS で使用される条件式の SQL リファレンス」をご参照ください。 | SQL Expression |
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 | ダイアグラム テンプレートの名前。 | String |
コードのサンプル
このサンプル スクリプトでは、指定したネットワーク用の既存の MyTemplate1 テンプレートに、属性によるジャンクションの削減ルールを追加して、接続されていないか、生成されたダイアグラム内の別の 2 つのジャンクションに接続されている非保護配電デバイス (ネットワーク プロテクターでもスイッチでもないデバイス) を系統的に削減します。
import arcpy
input_Network = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.Electric"
input_DiagramTemplate = "MyTemplate1"
input_JunctionClassToReduce = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionDevice"
arcpy.AddReduceJunctionByAttributeRule_un(input_Network, input_DiagramTemplate,
"ACTIVE", input_JunctionClassToReduce,
"ASSETTYPE <> 11 And ASSETTYPE <> 8",
"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_JunctionClassToReduce = "D:/MyProjectLocation/MyDatabaseConnection.sde/MyDatabase.MAP.Electric/MyDatabase.MAP.ElectricDistributionDevice"
input_Alias1 = "Asset type"
input_Alias2 = "Phases"
arcpy.AddReduceJunctionByAttributeRule_nd(input_Network, input_DiagramTemplate,
"ACTIVE", input_JunctionClassToReduce,
"ASSETTYPE <> 11 And ASSETTYPE <> 8",
"MAX_2_CONNECTED_JUNCTIONS",
"KEEP_UNCONNECTED_JCT", "KEEP_JCT_TO_1JCT",
"REDUCE_JCT_TO_2JCTS",
input_Alias1 + ";" + input_Alias2)
環境
ライセンス情報
- Basic: いいえ
- Standard: はい
- Advanced: はい