ジオプロセシング モデルを使用したダイアグラム テンプレートのルールおよびレイアウト定義の管理

ジオプロセシング ツールを個別に実行して、ダイアグラム テンプレートを作成できます。 通常、このプロセスは、[ジオプロセシング] ウィンドウで、[ダイアグラム テンプレートの追加 (Add Diagram Template)] ツールを実行し、次に [<XXX> ルールの追加 (Add <XXX> Rule)] または [<XXX> レイアウトの追加 (Add <XXX> Layout)] ツールを実行するという流れになります。 このプロセスで、テンプレートのルール シーケンスは、ルールの追加された順序に基づいて整理されるので、各ルールは、体系的な順序で追加されます。つまり、新しく追加される各ルールは、テンプレートのルール シーケンスの末尾に追加されるということです。 さらに、新しく追加される各レイアウトは、そのレイアウトが追加された順序で、テンプレートのレイアウト シーケンスの末尾に追加されます。

ただし、テンプレート構成の制御を向上させ、その構造をドキュメント化するために、ModelBuilder を使用して、ダイアグラム テンプレートのルールおよびレイアウト定義のジオプロセシング モデルを作成することを強くお勧めします。 ジオプロセシング モデルは、ネットワーク ダイアグラムの構築プロセスと同じ方法で機能します。 どちらの操作も、次の 3 つのメイン フェーズの組織と構造を提供します。

  • フェーズ 1 - テンプレートを作成し、その基本プロパティを構成します。
  • フェーズ 2 - 最終的なダイアグラム コンテンツを定義するルールを追加します。
  • フェーズ 3 - ダイアグラムの体裁 (間隔や表示設定など) を生成するダイアグラム レイアウトのセットを追加します。
3 つのフェーズのダイアグラム テンプレートのルールおよびレイアウト定義のジオプロセシング モデル

テンプレートの作成プロセスを制御するには、ダイアグラム テンプレートのルールおよびレイアウト定義のジオプロセシング モデル内の一連のツールを連結して、前のツールの出力ネットワークとダイアグラム テンプレートが、次のツールへの入力になるようにする必要があります。 それによって、テンプレート ルール シーケンス内の各ルールおよびテンプレート レイアウト シーケンス内の各レイアウトの正確な順序を保証することができます。 この結果、後でこのテンプレートに基づいて、ダイアグラム内のコンテンツとレイアウトをうまく制御できるようになります。

要件と前提条件

ダイアグラム テンプレートの追加とそれらのルールおよびレイアウト定義の編集は、管理および構成タスクです。

ダイアグラム テンプレートの構成 (作成、変更、ルールまたはレイアウトの定義への追加、それらの定義のエクスポートおよびインポートなど) のための要件と前提条件は、同じです。

  • この操作は、ファイル ジオデータベースまたはモバイル ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークから実行するか、エンタープライズ ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークへのデータベース コネクションから実行する必要があります。 エンタープライズ ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークを操作する場合、サービスから操作することはできません。
  • エンタープライズ ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークへのデータベース コネクションの場合、データベース ネットワークの所有者の認証情報を使用して、接続する必要があります。具体的には、データベース ユーティリティ ネットワークの所有者またはデータベース トレース ネットワークの所有者の認証情報です。
  • エンタープライズ ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークへのデータベース コネクションを操作する場合は、自分の ArcGIS Enterprise ポータルにポータル ネットワーク所有者の認証情報を使用して、サイン インする必要があります。具体的には、ポータル ユーティリティ ネットワーク所有者またはポータル トレース ネットワーク所有者の認証情報を使用します。

ダイアグラム テンプレートのルールおよびレイアウト定義ジオプロセシング モデルの作成

次のサブセクションでは、ModelBuilder ワークフローのフェーズごとの手順について説明します。

フェーズ 1 - テンプレートを作成し、その基本プロパティを構成

ジオプロセシング モデルの構成の最初のフェーズでは、テンプレートを作成し、その基本プロパティを構成します。 ほとんどの場合、このステップでは、次の 2 つのツールが必要です。

  1. ArcGIS Pro を起動します。
  2. エンタープライズ ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークを操作する場合は、自分の ArcGIS Enterprise ポータルに、ポータル ネットワーク所有者の認証情報を使用してサイン インします。具体的には、ポータル ユーティリティ ネットワーク所有者またはポータル トレース ネットワーク所有者の認証情報を使用します。
  3. プロジェクトを読み込むか、作成します。
  4. 操作するジオデータベースに応じて、次のいずれかを実行します。
    • ファイルまたはモバイル ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークを操作する場合、ファイルまたはモバイル ジオデータベースをプロジェクトに追加します。
    • エンタープライズ ジオデータベース内のユーティリティ ネットワークまたはトレース ネットワークを操作する場合、データベース コネクション ファイルをプロジェクトに追加するか、新しく作成します。
      注意:

      ユーティリティ ネットワークまたはトレース ネットワークがブランチ バージョン対応登録されており、データベース ネットワークの所有者の認証情報を使用して、接続していることを確認してください。具体的には、データベース ユーティリティ ネットワークの所有者またはデータベース トレース ネットワークの所有者の認証情報を使用します。

  5. [解析] タブで、[ModelBuilder] をクリックします。

    新しいジオプロセシング モデル ビュー [モデル] が開きます。

  6. [ジオプロセシング] ウィンドウを開き、[ツールボックス] をクリックして、[ネットワーク ダイアグラム ツール] ツールボックスを展開します。
  7. [構成] ツールセットを展開して、[ダイアグラム テンプレートの追加] ツールをこのモデル ビューにドラッグします。
  8. モデル ビューの [ダイアグラム テンプレートの追加] ボックスをダブルクリックして、次の手順を実行します。
    1. [入力ネットワーク] ボックスの横にある参照ボタンをクリックして、Project/Databases に移動して、データベース コネクション ファイルを選択し、ネットワークを参照します。
    2. [ダイアグラム テンプレート名] ボックスに、新しいテンプレートの名前を入力します。
    3. [OK] をクリックします。
  9. [構成] ツールセットから、[ダイアグラム テンプレートの変更] ツールをモデル ビューにドラッグします。
  10. 次の手順に従って、[ダイアグラム テンプレートの追加] ツールの出力変数を [ダイアグラム テンプレートの変更] ツールに接続します。
    1. [ダイアグラム テンプレートの変更] ツールにポインターを移動しながら、[ダイアグラム テンプレートの追加] ツールの出力ネットワーク変数をクリックします。 [入力ネットワーク] をクリックします。
    2. [ダイアグラム テンプレートの変更] ツールにポインターを移動しながら、[ダイアグラム テンプレートの追加] ツールの出力テンプレート変数をクリックします。 [入力ダイアグラム テンプレート] をクリックします。
  11. [ダイアグラム テンプレートの変更] ボックスをダブルクリックして、次のように格納器の余白を設定します。
    1. この新しいテンプレートをデフォルトのダイアグラム テンプレートにする場合は、[デフォルト テンプレート] をオンにします。
    2. [説明] テキスト ボックスに、ダイアグラム テンプレートの説明を入力します。
    3. [テンプレート一般定義] セクションを展開します。
    4. ネットワークの座標系に応じて、格納器の余白サイズに適切な値を入力します。

      たとえば、[格納器の余白] に「0.2」と入力し、ドロップダウン リストから [メートル] を選択します。

    5. このテンプレートに基づくダイアグラムをユーザーが保存できないようにするには、[ダイアグラムの保存を有効化] をオフにします。 通常、これは、テンプレートがデータ制御のために単一のダイアグラムを生成するように設計されている場合に選択します。
    6. このテンプレートに基づくダイアグラムをユーザーが拡張できるようにするには、[ダイアグラムの拡張を有効化] をオンにします。
    7. [OK] をクリックします。

ダイアグラム テンプレートのジオプロセシング モデルは次のような表示になります。

フェーズ 1 のダイアグラム テンプレートのルールおよびレイアウト定義のジオプロセシング モデルの例

フェーズ 2 - 最終的なダイアグラム コンテンツを定義するルールを追加

ダイアグラム テンプレートのルールおよびレイアウト定義のジオプロセシング モデルの構成の第 2 フェーズは、ルールのみに関係します。 ここでは、[<XXX> ルールの追加 (Add <XXX> Rule)] または [属性による <XXX> ルールの追加 (Add <XXX> By Attribute Rule)] などのツールを使用して、テンプレート ルール シーケンスに新しいルールを追加します。 これらのツールによって作成されたルールのシーケンスは、ダイアグラム構築プロセスがルールを実行する順序を定義し、このテンプレートに基づくダイアグラム コンテンツを定義します。

ルールは、ダイアグラム グラフを変更するために使用されますが、各ルールは、そのグラフの特殊な変換を操作し、それが、ルール シーケンス内の一般的な位置を正当化することがよくあります。 たとえば、一般的にトレース ルールは、テンプレート ルール シーケンスの最初に設定され、ジャンクションの削減ルールは、ルール シーケンスの最後に構成されることが多く、フィーチャの削除ルールは、目的に応じて、シーケンスのどの位置でも設定できます。

ダイアグラム ルールで詳述されているように、この連鎖における各ルールのプロセスは反復的ですが、ルール シーケンスは、反復的ではありません。 反復処理のルール シーケンスを採用する場合は、このフェーズで、次の 2 つのツール [反復処理の開始ルールを追加 (Add Start Iteration Rule)][反復処理の停止ルールを追加 (Add Stop Iteration Rule)] がよく使用されます。 これらのツールは、他の 2 つのジャンクションを接続するジャンクションを処理するだけではない、複数のジャンクションの削減ルールのシーケンスの反復処理のために使用する必要があります。つまり、ジャンクションの削減ルールの中に、削減するように構成される 1 つの隣接ジャンクションを含むジャンクションが存在するような場合です。 ジャンクションを相互に接続するジャンクションの削減により、残りのジャンクションの接続数が変更されるため、残りのジャンクションが、事前に実行された削減ルールの新たな候補になる可能性があります。

ただし、各ルールはオプションであり、ユーザーが構成する通常のルール シーケンスの大部分は、次に示すシーケンスのすべてまたは一部と適合する必要があります。

  1. フィーチャの削除ルール (フィーチャの削除ルールを追加ツール、[属性によるフィーチャの削除ルールを追加 (Add Remove Feature By Attribute Rule)] ツール、または [カテゴリによるフィーチャの削除ルールの追加 (Add Remove Feature By Category Rule)] ツールを使用して構成) をルール シーケンスの最初の位置で実行することで、ダイアグラム グラフを調整する前に、特定のネットワーク フィーチャまたはネットワーク オブジェクトをダイアグラムから体系的に破棄できます。

    たとえば、[ソース クラスを除外] ルール プロセスで、[フィーチャの削除ルールを追加 (Add Remove Feature Rule)] ツールを適用して、一部の特殊なネットワーク ソース クラスまたはオブジェクト テーブルを除く、すべてのネットワーク ソース クラスおよびオブジェクト テーブルに関連するネットワーク フィーチャまたはネットワーク オブジェクトを破棄します。 また、グラフの完全性がネットワーク ダイアグラムで常に維持されているため、Source Type = EDGES の実行中に、特定のライン クラス (送電線など) を除外すると、この例の送電網のように、ネットワークの一部で構築されたダイアグラムを確保できる場合があります。

  2. 空間検索ルール ([空間検索ルールの追加 (Add Spatial Query Rule)] ツールを使用して追加) は、ルール シーケンスに任意のタイミングで設定できますが、ルール シーケンスの最初に、すべての対象フィーチャを取得する場合に便利です。
  3. トレース ルール (トレース ルールの追加ツールを使用して追加) は、一般的には、トレースからダイアグラムを生成するようにテンプレートを構成する場合に、ルール シーケンスの最初に設定するルールの 1 つです。 この場合、テンプレートに始点の設定ルールを構成し、特定のフィーチャまたはジャンクション ターミナルを処理対象のトレース ルールの始点として設定することもできます。 始点の設定ルールは、[属性による始点の設定ルールを追加 (Add Set Starting Point By Attribute Rule)] ツールを使用して、ダイアグラム テンプレートのルール シーケンスで、トレース ルールの前に設定する必要があります。
  4. 格納器の展開ルール ([格納器の展開ルールを追加 (Add Expand Container Rule)] ツール、[属性による格納器の展開ルールを追加 (Add Expand Container By Attribute Rule)] ツール、または [カテゴリによる格納器の展開ルールの追加 (Add Expand Container By Category Rule)] ツールを使用して構成) により、ダイアグラム内で格納器を展開できます。 これらは、一般的に、ダイアグラム グラフを簡略化するルールより前に設定します。
  5. 接続性の関連付けの追加ルール ([接続性の関連付けルールを追加 (Add Connectivity Associations Rule)] ツールを使用して構成) を設定することで、ダイアグラムに表される接続性の関連付けを取得し、フィーチャを単純化するか削減する前に、グラフの完全性を担保することができます。
    注意:

    このルールの構成には時間がかかるため、必要のない場合には構成しないでください。 たとえば、体系上、すでに接続性の関連付けは、トレースから返されているため、接続性の関連付けの追加ルールは、トレース ルールを実行するように構成されたテンプレートに関係していません。

  6. ダイアグラム フィーチャ機能ルールの追加 ([属性によるダイアグラム フィーチャ機能ルールの追加 (Add Diagram Feature Capability By Attribute Rule)] ツールまたは [カテゴリによるダイアグラム フィーチャ機能ルールの追加 (Add Diagrarm Feature Capability By Category Rule)] ツールを使用して追加) は、格納器の単純化やジャンクションの削減を正確に管理するために設定できます。 このルールを使用すると、ダイアグラム構築の全体または一部で特定の格納器が単純化されたり、特定のジャンクションが削減されたりするのを防止することができます。
  7. 格納器の単純化ルール ([格納器の単純化ルールを追加 (Add Collapse Container Rule)] ツール、[属性による格納器の単純化ルールを追加 (Add Collapse Container By Attribute Rule)] ツール、または [カテゴリによる格納器の単純化ルールの追加 (Add Collapse Container By Category Rule)] ツールの実行時に設定) は、ダイアグラム内で格納器を単純化するために実行されます。 単純化された格納器に関連するすべての格納物の記録を保持する場合、これらのルールは、格納器の展開ルールの後に実行する必要があります。
  8. 反復処理の開始ルール ([反復処理の開始ルールを追加 (Add Start Iteration Rule)] ツールを使用して構成) は、ジャンクションの削減ルールの反復シーケンスの最初に、配置する必要があります。 これにより、そのシーケンスのいずれかのルールによって削減されるジャンクションがダイアグラム内に出現するまで、ダイアグラムの構築プロセスが、ジャンクションの削減ルール シーケンス上で強制的にループします。
  9. ジャンクションの削減ルール ([ジャンクションの削減ルールを追加 (Add Reduce Junction Rule)] ツール、[属性によるジャンクションの削減ルールを追加 (Add Reduce Junction By Attribute Rule)] ツール、および [カテゴリによるジャンクションの削減ルールの追加 (Add Reduce Junction By Category Rule)] ツールの実行時に追加) を使用して、ダイアグラム グラフを簡素化します。
    注意:

    構成時には、最大 2 つの他のジャンクションを接続するジャンクションを処理するジャンクションの削減ルールと、3 つ以上の他のジャンクションを処理するジャンクションの削減ルールを、同じ削減ルールの反復シーケンス内で使用しないでください。 これらを一緒に使用すると、ダイアグラム生成時のパフォーマンスが低下します。 3 つ以上の他のジャンクションを接続するジャンクションを削減するには、2 つの反復シーケンスを設定します。1 つ目は、最大 2 つの他のジャンクションを接続するジャンクションの削減を処理するもので、2 つ目は、3 つ以上の他のジャンクションを接続するジャンクションを削減するためのものです。

    ヒント:

    格納物ジャンクションは、非格納物エレメントを集約せず、非格納物ジャンクションは、格納物エレメントを集約しないため、ジャンクションを削減する前に、フィーチャの削除ルールを構成することで、ダイアグラム内のすべてのポリゴン格納器および格納物-格納器の関係を削除し、削減を強制することができます。

  10. 反復処理の停止ルール (反復処理の停止ルールを追加ツールを使用して構成) は、ジャンクションの削減ルールの反復シーケンスの最後 (つまり、構築プロセスを反復処理するシーケンス内で、最後のジャンクションの削減ルールの後) に配置する必要があります。
  11. エッジの削減ルール ([属性によるエッジの削減ルールを追加 (Add Reduce Edge By Attribute Rule)] ツールを使用して設定) は、エッジを削減します。
  12. 構造物付属物ルール ([構造物付属物ルールの追加 (Add Structural Attachments Rule)] ツールを使用して構成) は、ルール シーケンス内で設定する場合はいつでも、最後に体系的に実行されます。
    注意:

    このルールの構成には時間がかかるため、必要のない場合には構成しないでください。 たとえば、構造物付属物の追加は、以下を実行するために構成されたテンプレートとは関係ありません。

    • 構造物を含まないトレース ルール
    • 付属物をサポートする構造物ジャンクションを処理するために設定されたフィーチャの削除ルール

注意:

次の特定の状況で、フィーチャの削除ルールを設定することもできます。

  • トレース ルールの後、または格納器の展開ルールの後に、ダイアグラム グラフ内の格納器の関係性を削除する場合。 これは、ダイアグラム グラフを簡素化します。
  • ダイアグラム グラフを消去したり、ダイアグラムを簡素化したりするためのルール シーケンスの最後で、たとえば、線形格納器エッジを体系的に削除する場合。ネットワーク線形格納器とそれに関連する格納物の両方をダイアグラム内に表示すると、紛らわしかったり、不適切だったりする場合があるからです。

次の図は、上記の推奨事項に基づくルール シーケンス内のルールごとの推奨位置を示します。

ルール シーケンス内のルールごとの推奨位置

ダイアグラム テンプレートへのダイアグラム ルールの追加の例

前提条件:

フェーズ 1 - テンプレートを作成し、その基本プロパティを構成で説明したとおりに、基本のダイアグラム テンプレートのジオプロセシング モデルを作成します。

以下の手順は、フェーズ 2 のダイアグラム テンプレートの構成の例です。 ここでの目的は、ダイアグラム テンプレートの [<XXX> ルールのマップ追加 (Add <XXX> Rule)] または [属性による <XXX> ルールの追加 (Add <XXX> By Attribute Rule)] ツールを連結することにより、入力フィーチャの中の回路遮断器から開始するサブネットワーク トレースから、ダイアグラムを生成できるようにすることです。 この結果のトレースは、ほとんどの格納器を単純化し、回路遮断器とスイッチ以外のジャンクションおよびデバイスを削減することで簡素化されます。 このテンプレートに基づくダイアグラムが、予期するサブネットワーク トレースを厳密的に反映するよう、いくつかのフィーチャの削除ルールが、ダイアグラム生成の冒頭に構成されて、予期しないすべての入力フィーチャを破棄します。

  1. 前述のセクションで作成した、ダイアグラム テンプレートのジオプロセシング モデルを開きます。
  2. 入力として選択された可能性がある、予期しないフィーチャを削除するよう、ダイアグラム ルールを構成します。 この例では、フィーチャの削除ルールは、構造物の境界および回路遮断器の配電デバイス以外のすべての入力フィーチャを破棄するよう設定されます。
    1. [構成] ツールセットで、[フィーチャの削除ルールを追加] ツールをモデル ビューにドラッグします。
    2. 上記のフェーズ 1 のワークフローのステップ 10a および 10b を使用して、[ダイアグラム テンプレートの変更] からの出力変数を接続して、[フィーチャの削除ルールを追加] に対する入力とします。
    3. モデルの [フィーチャの削除ルールを追加] ツールをダブルクリックし、次のようにルール パラメーターを設定して、配電デバイスおよび構造物境界を除く、すべてのフィーチャを削除します。

      • [ソース タイプ] - [ジャンクションとエッジの両方] を選択します。
      • [ルール プロセス] - [ソース クラスを除外する] を選択します。
      • [ネットワーク ソース] - [ElectricDistributionDevice] を選択し、[Structure Boundary] を選択します。

    4. [OK] をクリックします。
    5. [構成] ツールセットで、[属性によるフィーチャの削除ルールの追加] ツールをモデル ビューにドラッグします。
    6. [フィーチャの削除ルールを追加] からの出力変数を接続して、[属性によるフィーチャの削除ルールを追加] に対する入力とします。
    7. モデルの [属性によるフィーチャの削除ルールを追加] ツールをダブルクリックし、次のようにルール パラメーターを設定して、回路遮断器以外のすべての配電デバイスを削除します。

      • [削除するネットワーク ソース] - [ElectricDistributionDevice] を選択します。
      • [式] - [新しい式] をクリックします。 次に、[フィールド] で、[アセット グループ] を選択し、式の演算子で [を含まない] をクリックします。 [値][4 - CircuitBreaker] をオンにし、[更新] をクリックします。

    8. [OK] をクリックします。
  3. 残されるフィーチャの中で、始点を設定します。 この例では、ターミナル ID が [3/ Load] の回路遮断器が始点として設定されるように、始点の設定ルールが構成されています。
    1. [構成] ツールセットから、[属性による始点の設定ルールを追加] ツールを [モデル] タブにドラッグします。
    2. [属性によるフィーチャの削除ルールを追加] からの出力変数を接続して、[属性による始点の設定ルールを追加] に対する入力とします。
    3. モデルの [属性による始点の設定ルールを追加] ツールをダブルクリックし、ルール パラメーターを設定します。

      • [ネットワーク ソース] - [ElectricDistributionDevice] を選択します。
      • [式] - [新しい式] をクリックします。 次に、[フィールド][アセット グループ] を選択し、式の演算子で [と等しい] をクリックします。 [値][4 - CircuitBreaker] をオンにし、[更新] をクリックします。
      • [ジャンクション ターミナル] - [3/Load] をオンにします。

    4. [OK] をクリックします。
  4. 中電圧配電サブネットワークをトレースするために、トレース ルールを追加します。
    1. モデルの [トレース ルールの追加] ツールをダブルクリックして、サブネットワークをトレースするために、次のようにトレース ルールを設定します。

      • [トレース タイプ] - [SUBNETWORK] を選択します。
      • [ドメイン ネットワーク] - [ElectricDistribution] を選択します。
      • [層] - [Medium Voltage] を選択します。

    2. [OK] をクリックします。
  5. 格納器を単純化します。 この例では、構造物境界を除くすべての格納器を単純化するように、格納器の単純化ルールが構成されています。
    1. [構成] ツールセットで、[格納器の単純化ルールを追加] ツールをモデル ビューにドラッグします。
    2. [トレース ルールの追加 (Add Trace Rule)] からの出力変数を接続して、[格納器の単純化ルールを追加] に対する入力とします。
    3. モデルの [格納器の単純化ルールを追加] ツールをダブルクリックし、ルール パラメーターを設定します。

      • [格納器タイプ] - [ジャンクションとエッジの両方] を選択します。
      • [ルール プロセス] - [ソース クラスを除外する] を選択します。
      • [格納器ソース] - [StructureBoundary] を選択します。
      • [再接続エッジの集約] - オンのままにしておきます。

    4. [OK] をクリックします。
  6. 次の削減ルールのシーケンスをループします。他のジャンクションを 0、1、または 2 個含むすべてのジャンクションを削減する (配電デバイスとアセンブリを除く)、スイッチ ギアとスイッチ バンクを除くすべての配電アセンブリを削減する、回路遮断器とスイッチを除くすべての配電デバイスを削減する。
    1. [構成] ツールセットで、[反復処理の開始ルールを追加] ツールをモデル ビューにドラッグします。
    2. [格納器の単純化ルールを追加] からの出力変数を接続して、[反復処理の開始ルールを追加] に対する入力とします。
    3. [構成] ツールセットで、[ジャンクションの削減ルールを追加] ツールをモデル ビューにドラッグします。
    4. [反復処理の開始ルールを追加] からの出力変数を接続して、[ジャンクションの削減ルールを追加] に対する入力とします。
    5. モデルの [ジャンクションの削減ルールを追加] ツールをダブルクリックし、ルール パラメーターを設定します。

      • [ルール プロセス] - [ソース クラスを除外する] を選択します。
      • [ジャンクション ソース] - [ElectricDistributionDevice] を選択し、[ElectricDistributionAssembly] を選択します。
      • [接続性制限] - このセクションを展開します。
        • [次のジャンクションの場合に削減] - [最大 2 つの接続ジャンクション] を選択します。
        • [未接続の場合は削減] - オンにします。
        • [単一のジャンクションに接続している場合は削減] - オンにします。
        • [2 つの異なるジャンクションに接続している場合は削減] - オンのままにします。

    6. [OK] をクリックします。
    7. [構成] ツールセットで、[属性によるジャンクションの削減ルールを追加] ツールをモデル ビューにドラッグします。
    8. [ジャンクションの削減ルールを追加] からの出力変数を接続して、[属性によるジャンクションの削減ルールを追加] に対する入力とします。
    9. モデルの [属性によるジャンクションの削減ルールを追加] ツールをダブルクリックし、ルール パラメーターを設定します。

      • [削減するジャンクション ソース] - [ElectricDistributionAssembly] を選択します。
      • [式] - [新しい式] をクリックします。 次に、[フィールド][アセット グループ] を選択し、式の演算子で [を含まない] をクリックします。 [値][8 - Switch bank][9 - Switchgear] をオンにし、[更新] をクリックします。
      • [接続性制限] - このセクションを展開します。
        • [次のジャンクションの場合に削減] - [最大 2 つの接続ジャンクション] を選択します。
        • [未接続の場合は削減] - オンにします。
        • [単一のジャンクションに接続している場合は削減] - オンにします。
        • [2 つの異なるジャンクションに接続している場合は削減] - オンのままにします。

    10. [OK] をクリックします。
    11. [構成] ツールセットで、[属性によるジャンクションの削減ルールを追加] ツールをモデル ビューにドラッグします。
    12. 最初の [属性によるジャンクションの削減ルールを追加] からの出力変数を接続して、2 番目の [属性によるジャンクションの削減ルールを追加] に対する入力とします。
    13. モデルの 2 番目の [属性によるジャンクションの削減ルールを追加] をダブルクリックし、ルール パラメーターを設定します。

      • [削減するジャンクション ソース] - [ElectricDistributionDevice] を選択します。
      • [式] - [新しい式] をクリックして、[フィールド][アセット グループ] を選択し、式の演算子で [を含まない] をクリックします。 [値][4 - Circuit Breaker][15 - Switch] をオンにし、[更新] をクリックします。
      • [接続性制限] - このセクションを展開します。
        • [次のジャンクションの場合に削減] - [最大 2 つの接続ジャンクション] を選択します。
        • [未接続の場合は削減] - オンにします。
        • [単一のジャンクションに接続している場合は削減] - オンにします。
        • [2 つの異なるジャンクションに接続している場合は削減] - オンのままにします。

    14. [OK] をクリックします。
    15. [構成] ツールセットで、[反復処理の停止ルールを追加] ツールをモデル ビューにドラッグします。
    16. [属性によるジャンクションの削減ルールを追加] からの出力変数を接続して、[反復処理の停止ルールを追加] に対する入力とします。

フェーズ 2 のダイアグラム テンプレートのジオプロセシング モデルは、次のような表示になります。

フェーズ 2 のダイアグラム テンプレートのルールおよびレイアウト定義のジオプロセシング モデルの例

フェーズ 3 - ダイアグラム レイアウトのセットを追加

テンプレート構成の第 3 フェーズは、レイアウトのみに関係します。 このフェーズは、パラメーター値を使用して、一連のアクティブなレイアウトを定義する操作と非アクティブなレイアウトとして追加されたレイアウトのデフォルトのパラメーター値を事前に設定する操作で構成されます。 これは、新しいレイアウトをテンプレート レイアウト シーケンスに追加できるようにする [<XXX> レイアウトの追加 (Add <XXX> Layout)] ツールを使用して構成します。 シーケンス内のアクティブなレイアウトの順番により、ダイアグラム生成時に、レイアウトが適用される順番が決定されます。

ルート ジャンクションの設定ルールは、この第 3 フェーズで、設定可能な特定のレイアウトと結び付いています。 このルールは、[属性によるルート ジャンクションの設定ルールを追加 (Add Set Root Junction By Attribute Rule)] ツールを使用して構成します。 このルールを使用すると、生成されたダイアグラム内のジャンクションをルート ジャンクションとしてマーク付けし、そのダイアグラムに適用するために設定したレイアウトで、考慮されるようにすることができます。

ダイアグラム テンプレートを構成するときに、ルール フェーズと同様に、レイアウト フェーズを慎重に設定する必要があります。 次の順序で処理することをお勧めします。

  1. ルート ジャンクションの設定ルールを構成します ([属性によるルート ジャンクションの設定ルールの追加 (Add Set Root Junction By Attribute Rule)] ツールを使用)。
  2. ダイアグラムの生成時に適用する順序で、アクティブなレイアウトのアルゴリズムのシーケンスを設定します (適切な [<XXX> レイアウトの追加 (Add <XXX> Layout)] ツールを、[アクティブ] オプションを有効にして実行)。
  3. 非アクティブなレイアウトのアルゴリズムのリストを設定します (適切な [<XXX> レイアウトの追加 (Add <XXX> Layout)] ツールを、[アクティブ] オプションを無効にして実行)。
注意:

将来的にダイアグラム テンプレートのジオプロセシング モデルを維持していくには、アクティブなレイアウトと非アクティブなレイアウトを混在させないようにしてください。

注意:

アクティブなレイアウトのアルゴリズムのシーケンスを構成する場合は、次の点に留意してください。

  • 放射状ツリー、スマート ツリー、主軸ツリー レイアウトなどのツリー レイアウトの前に、ダイアグラム フィーチャの現在位置を保持 (しようと) するスケマティック レイアウト (線形配置や空間配置など) を構成することは、重要ではありません。
  • 部分重複エッジ レイアウトとダイアグラム エッジ形状変更レイアウトは、テンプレート レイアウト シーケンス内の最後の位置で実行されるアクティブな調整アルゴリズムとして使用されることがよくあります。

例として、下の手順で説明するテンプレート構成ジオプロセシング ツールでは、生成されたダイアグラム格納物を、ルート ジャンクションとして回路遮断器から開始して、ツリーの分岐を上位から下位まで配置するスマート ツリーとしてレイアウトするために、一緒に連結する必要があります。そこでは、スマート ツリー レイアウトの完成後に、オーバーラップする可能性のあるすべてのエッジは、体系的に分離されます。

ダイアグラム テンプレートへのダイアグラム レイアウトの追加の例

前提条件:

フェーズ 1 - テンプレートを作成し、その基本プロパティを構成およびフェーズ 2 - 最終的なダイアグラム格納物を定義するルールを追加で説明したとおりに、ダイアグラム テンプレートのジオプロセシング モデルを作成します。

  1. 前述のセクションで作成したダイアグラム テンプレートのジオプロセシング モデルを開きます。
  2. [構成] ツールセットで、[属性によるルート ジャンクションの設定ルールを追加] ツールをモデル ビューにドラッグします。
  3. フェーズ 1 のワークフローのステップ 10a および 10b を使用して、[反復処理の停止ルールを追加] からの出力変数を接続して、[属性によるルート ジャンクションの設定ルールを追加] に対する入力とします。
  4. モデルの [属性によるルート ジャンクションの設定ルールを追加] ツールをダブルクリックして、各回路遮断器がジャンクション ルートとしてフラグ付けされるように、ルート ジャンクションの設定ルールを設定します。
    1. [選択するジャンクション ソース] の下の最初のドロップダウン リストでは、[DistributionDevice] を選択します。
    2. [新しい式] をクリックします。
    3. [フィールド][アセット グループ] を選択し、式の演算子では [と等しい] をクリックして、[値] では [4 - CircuitBreaker] をオンにします。 [Update] をクリックします。
    4. [OK] をクリックします。
  5. [構成] ツールセットで、[スマート ツリー レイアウトの追加] ツールをモデル ビューにドラッグします。
  6. [属性によるルート ジャンクションの設定ルールを追加] からの出力変数を接続して、[スマート ツリー レイアウトの追加] に対する入力とします。
  7. モデルの [スマート ツリー レイアウトの追加] ツールをダブルクリックして、上から下へと 3 つのブランチが配置されるように、レイアウト アルゴリズムを設定します。
    1. [有効] ボックスをオンのままにして、ダイアグラム生成時に、アルゴリズムがアクティブになるようにします。
    2. [ツリー方向] ドロップダウン リストから [上から下へ] を選択します。
    3. [OK] をクリックします。
  8. [構成] ツールセットで、[ダイアグラム エッジ形状変更レイアウトの追加] ツールを [モデル] タブにドラッグします。
  9. [スマート ツリー レイアウトの追加] からの出力変数を接続して、[ダイアグラム エッジ形状変更レイアウトの追加] に対する入力とします。
  10. モデルの [ダイアグラム エッジ形状変更レイアウトの追加] ツールをダブルクリックして、ダイアグラム内で重複する可能性があるエッジが分離するように、レイアウト アルゴリズムを設定します。
    1. [有効] ボックスをオンのままにして、ダイアグラム生成時に、アルゴリズムがアクティブになるようにします。
    2. [形状変更操作] ドロップダウン リストから [重複エッジの切り離し] を選択します。
    3. [OK] をクリックします。

フェーズ 3 のダイアグラム テンプレートのジオプロセシング モデルは、次のような表示になります。

フェーズ 3 のダイアグラム テンプレートのルールおよびレイアウト定義のジオプロセシング モデルの例

ダイアグラム テンプレートのルールおよびレイアウト定義のジオプロセシング モデルの実行

ダイアグラム テンプレートを作成し、それに基づいてダイアグラムを生成するには、次の手順を実行します。

前提条件:

前述のセクションに示すように、ダイアグラム テンプレートのルールおよびレイアウト定義のジオプロセシング モデルを作成して、それを編集用に開きます。

  1. [ModelBuilder] タブをクリックして、[検証] をクリックします。
  2. [実行] をクリックします。
  3. [保存] をクリックして、ダイアグラム テンプレートのジオプロセシング モデルをプロジェクトのツールボックスに保存します。
  4. ダイアグラムの生成元にするネットワークを参照するマップを開きます。
  5. マップ上のネットワーク フィーチャをいくつか選択します。
  6. [コンテンツ] ウィンドウで、ネットワーク レイヤーを選択します。
  7. [ユーティリティ ネットワーク] または [トレース ネットワーク] タブをクリックして、[ダイアグラム] グループの [新規] ボタンの下の矢印をクリックします。

新しく作成したテンプレートの名前に対応する新しいアイテムが、このテンプレート リストに表示されていることを確認します。

作成したテンプレートを関連サービスの操作のために完全に機能させるには、管理者の認証情報を使用して、ArcGIS Server Manager ポータルにサイン インし、このサービスを停止して、再起動する必要があります。

ダイアグラム テンプレートのルールおよびレイアウト定義のジオプロセシング モデルの維持

[ダイアグラム テンプレートの追加 (Add Diagram Template)] ツールは、既存のダイアグラム テンプレートに対しては実行できません。 後でダイアグラム テンプレートのジオプロセシング モデルを編集する場合は、以下の手順に示すように、[ダイアグラム テンプレートの変更 (Alter Diagram Template)] ツールを使用するようにモデルを変更します。

前提条件:

ダイアグラム テンプレートのジオプロセシング モデルを編集用に開きます。

  1. [ダイアグラム テンプレートの追加] ツールの入力ネットワーク パラメーターとツール自体の間の接続を削除します。
  2. モデルの [ダイアグラム テンプレートの追加] ツールを選択して、Delete キーを押します。
  3. 残りの入力ネットワーク パラメーターを [ダイアグラム テンプレートの変更] ツールと接続します。つまり、[ダイアグラム テンプレートの変更] ツールにポインターを移動しながら、入力ネットワーク変数をクリックし、[入力ネットワーク] をクリックします。
  4. [ダイアグラム テンプレートの変更 (Alter Diagram Template)] ツールの設定を変更して、適用するたびにテンプレートのルールおよびレイアウト定義を上書きするようにします。
    1. モデルの [ダイアグラム テンプレートの変更] ツールをダブルクリックします。
    2. [ダイアグラム テンプレートのルールおよびレイアウト定義の削除] チェックボックスをオンにします。
    3. [OK] をクリックします。
  5. ダイアグラム テンプレートのジオプロセシング モデルを保存します。
注意:

上の説明に従って、既存のテンプレートのルールおよびレイアウト定義を削除することは、その設定を正しく管理するために不可欠です。

ダイアグラム テンプレートのジオプロセシング モデル内で連結された、すべてのツールを適用することで設定全体が配備されるので、[ダイアグラム テンプレートの変更] ツールの [ダイアグラム テンプレートのルールおよびレイアウト定義の削除] チェックボックスをオンにしてモデルを実行すると、すべてのテンプレート設定を再初期化する前に、テンプレート ルールおよびレイアウト シーケンスの両方を削除できます。

このチェックボックスをオンにせずに、ダイアグラム テンプレートのジオプロセシング モデルを再実行すると、処理された各ルールとレイアウトがテンプレート ルールおよびレイアウト シーケンスの末尾に追加され、ルールとアルゴリズムの同じセットが、何度も構成されることになります。 このため、テンプレートに基づくダイアグラムの格納物が不適切なものになります。

ヒント:

デフォルトでは、構築したジオプロセシング モデルはすべて、ArcGIS Pro プロジェクト ツールボックスに保存されます。 このプロジェクトを削除したときに、ダイアグラム テンプレートのジオプロセシング モデルが失われないようにするために、ローカル ディスク上の安全な場所に独自のツールボックスを作成し、このツールボックス内に、すべてのダイアグラム テンプレートのジオプロセシング モデルのバックアップを保存するようにしてください。

関連トピック