演習 2: スケマティック ルールを構成する

複雑性: 上級 データ要件: ArcGIS Tutorial Data for Desktop データ パス: C:\ArcGIS\ArcTutor\Schematics\ and C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\Mixed_Data 目的: スケマティック ルールと、スケマティック ダイアグラム テンプレートでそれらを構成する方法を学ぶ

スケマティック ルールは、ダイアグラムに自動的にアイテムを追加したり、ダイアグラムから自動的にアイテムを削除したりする場合に非常に役立ちます。たとえば、ユーティリティ ネットワークには、多くの場合、ユーザがスケマティック ダイアグラムに表示する必要がないような設備があります。そこで、ArcGIS Schematics の優先度によるノード削減ルールを使用すると、そのようなアイテムを削除することができます。この場合、それらのアイテムを接続するリンクはスーパースパンとなり、次のアイテムに接続します。もう 1 つの例として、アイテムがジオデータベース内でリレーションシップ クラスによって相互に関連付けられているソーシャル ネットワークが考えられます。ここでは、ユーザがマップ上でアイテムを 1 つ選択すると、リレーションシップ クラス情報によって、関連するアイテムが自動的にダイアグラムに追加されるようにします。そのためには、Schematics のリレーションシップ ルールを使用します。その他にもさまざまなルールがあり、すべてが特定の用途で使用されるように作成されています。使用可能な各ルールの詳細については、ヘルプ ファイルをご参照ください。

この演習では、2 つの異なるルールを使用して、次の作業を行います。

注意注意:

この演習を行うには、Schematics の詳細構成チュートリアルの演習 1 を完了している必要があります。ここでは、演習 1 ですでに行った構成に基づいて作業します。

ノード削減ルールを作成して構成する

まず、ダイアグラムに表示されている pipelines_Net_Junctions ノードを削除するノード削減ルールを作成し、構成します。ネット ジャンクションはジオメトリック ネットワークの一部で、実際の設備の一部ではありません。そのため、削除しても問題ない場合は、ジャンクションを削除します。

手順:
  1. ArcCatalogを起動します。
  2. C:\ArcGIS\ArcTutor\Schematics にある AdvancedSchematicDB ルート ジオデータベースを参照し、選択します。
  3. このジオデータベース内にある [AdvancedSchematic] スケマティック データセットを右クリックし、ショートカット メニューから [編集] スケマティック データセットの編集ボタン を選択します。

    [スケマティック データセット エディタ] ダイアログ ボックスが表示されます。

  4. [スケマティック データセット エディタ] のツリーで [BrazilTemplate] エントリが選択されていない場合は、そのエントリをクリックします。
  5. エディタ ウィンドウの右側にある [ルール] タブをクリックします。
  6. [ルールの追加] ボタン [追加] ボタン をクリックします。

    [タイプ] ドロップダウン リストに、[優先度によるノード削減] がデフォルト ルールとして表示されます。ここでは、このルールを使用します。ドロップダウン リストを使用すると、使用可能な他のルールを表示することができます。

    [ルール] タブ - 初期の内容

  7. [ルール プロパティ] ボタン [ルール プロパティ] ボタン をクリックして [優先度によるノード削減ルール属性] タブを開き、ルールを構成します。
  8. [説明] テキスト ボックスに「Remove Junctions」と入力します。
  9. [削減するスケマティック クラスを選択] ドロップダウン リストで [pipelines_Net_Junctions] を選択します。
  10. [接続制限] オプションを選択します。

    [接続数 0 のノードを削減] と [接続数 2 のノードを削減] はデフォルトでオンになっています。

    ノード削減ルールのプロパティ ページ - 最終

  11. [OK] をクリックします。
  12. [スケマティック データセット エディタ] ツールバーの [保存] ボタン [保存] アイコン をクリックします。

優先度によるノード削減ルールをテストする

手順:
  1. ArcMap を使用して Brazil.mxd ファイルを開きます。

    このファイルは C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\Mixed_Data にあります。

  2. [スケマティック] ツールバーの [スケマティック ダイアグラムを開く] ボタン [スケマティック ダイアグラムを開く] ボタン をクリックして、[スケマティック ダイアグラムを選択して開く] ダイアログ ボックスを開きます。
  3. C:\ArcGIS\ArcTutor\Schematics の AdvancedSchematicDB ジオデータベース内にある、AdvancedSchematic スケマティック データセットの [TestDiagram] というダイアグラムを参照し、選択します。

    TestDiagram が選択された状態

  4. [追加] ボタンをクリックして、マップ内でこのダイアグラムを開きます。

    この時点では、何も変更されていません。ルールは、ダイアグラムの生成時または更新時にのみ適用されます。

  5. TestDiagram スケマティック レイヤに属する [pipelines_Net_Junctions] レイヤを右クリックし、[選択] → [すべて選択] を選択します。
  6. コンテンツ ウィンドウのツールバーの [選択状態別にリスト] ボタン [選択状態別にリスト] アイコン をクリックします。

    ダイアグラムに現在表示されている pipelines_Net_Junctions フィーチャの数に注目してください。

    TestDiagram - 選択されたジャンクション

  7. [ツール] ツールバーの [選択解除] ボタン [選択解除] アイコン をクリックします。
  8. コンテンツ ウィンドウのツールバーの [描画順にリスト] ボタン [描画順にリスト] アイコン をクリックします。
  9. [スケマティック] ツールバーの [スケマティック] の矢印をクリックし、[ダイアグラムの更新] [ダイアグラムの更新] アイコン を選択して、[ダイアグラムの更新] ダイアログ ボックスを開きます。

    [ダイアグラムの更新] ダイアログ ボックス

  10. [OK] をクリックします。
  11. TestDiagram スケマティック レイヤに属する [pipelines_Net_Junctions] レイヤを右クリックし、[選択] → [すべて選択] を選択します。
  12. コンテンツ ウィンドウのツールバーの [選択状態別にリスト] ボタン [選択状態別にリスト] アイコン をクリックします。

    ダイアグラムに現在表示されている pipelines_Net_Junctions フィーチャの数に注目してください。数が大幅に減っています。TestDiagram スケマティック ダイアグラムを生成したときの最初の選択内容によっては、画像がこれと若干異なる場合があります。

    TestDiagram - 削減後に選択されたジャンクション
  13. ArcMap を閉じ、保存を確認するメッセージが表示されたら、[いいえ] を選択します。

リレーションシップ ルールを作成して構成する

これまで使用してきた Brazil データには、すでにリレーションシップ クラスがあります。このクラスは、pug_PUG_gas_plants フィーチャクラスと pug_PUG_electric フィーチャクラスとの間に存在します。pug_PUG_electric はジオメトリック ネットワークの一部ではないので、前にフィーチャ レイヤからのインポートを実行したときにはインポートされていません。まず、このレイヤをインポートします。

手順:
  1. スケマティック データセット エディタ アプリケーションに切り替えます。
  2. [スケマティック データセット エディタ] のツリーで [BrazilTemplate] エントリを右クリックし、ショートカット メニューから [フィーチャ レイヤからインポート] を選択します。

    [フィーチャ レイヤからインポート] ダイアログ ボックスが開きます。

  3. [マップまたはレイヤ ファイル] 入力領域の端にある省略記号(...)ボタンをクリックします。

    [インポートするマップまたはレイヤ ファイルを選択] ダイアログ ボックスが開きます。

  4. このダイアログ ボックスを使用して、C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\Mixed_Data にある Brazil.mxd ファイルに移動し、選択します。
  5. [追加] ボタンをクリックしてダイアログ ボックスを閉じ、[フィーチャ レイヤからインポート] ダイアログ ボックスの内容を更新します。
  6. [選択解除] ボタンをクリックして、選択されているすべてのアイテムを削除します。これらのアイテムは、演習 1 ですでにインポートしているためです。
  7. [electric] の横にあるチェックボックスをオンにします。

    [フィーチャ レイヤからインポート] ダイアログ ボックス

  8. [OK] をクリックして、ダイアログ ボックスを閉じます。

    [スケマティック データセット エディタ] のツリーに、新しい pug_PUG_electric スケマティック フィーチャクラスが表示されます。

    新しい pug_PUG_electric スケマティック フィーチャクラス

  9. [スケマティック データセット エディタ] ツールバーの [保存] [保存] アイコン をクリックします。
  10. [スケマティック データセット エディタ] のツリーで [BrazilTemplate] エントリをクリックし、[ルール] タブをクリックします。
  11. [ルールの追加] ボタン [追加] ボタン をクリックします。
  12. [タイプ] ドロップダウン リストで [リレーションシップ] を選択します。

    [ルール] タブの [リレーションシップ] ルール

  13. [ルール プロパティ] ボタン [ルール プロパティ] ボタン をクリックして [リレーションシップ ルール属性] タブを開き、ルールを構成します。
  14. [説明] テキスト ボックスに「Gas to Electric」と入力します。
  15. [ソースを選択] ドロップダウン リストで [pug_PUG_gas_plants] を選択します。

    これらのオプションを設定する際には、マップ ユーザが行う操作に関して検討する必要があります。この場合は、マップ ユーザがガス プラントを選択し、これに関連付けられている電気プラントが自動的にルールに追加されます。そのため、ここでは pug_PUG_gas_plants がソースとなります。ジオデータベース内で pug_PUG_gas_plants と pug_PUG_electric との間にリレーションシップ クラスがあることがシステムで認識されるので、自動的に情報が入力されます。

    [ルール プロパティ] ダイアログ ボックス - 中間状態

  16. [リレーション] セクションで、[リンク線の作成] チェックボックスをオンにします。

    これによって、electric フィーチャが追加され、ガス プラントから電気プラントへのリンク線が描画されるので、これらのプラントがジオメトリック ネットワークによって物理的に接続されていなくても、論理的に接続されます。

    [ルール プロパティ] ダイアログ ボックス - 中間最終状態

  17. [OK] をクリックします。
  18. [スケマティック データセット エディタ] ツールバーの [保存] [保存] アイコン をクリックします。

リレーションシップ ルールをテストする

手順:
  1. ArcMap を起動し、Brazil.mxd ファイルを読み込みます。

    このファイルは C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\Mixed_Data にあります。

  2. [スケマティック] ツールバーの [スケマティック ダイアグラムを開く] ボタン [スケマティック ダイアグラムを開く] ボタン をクリックして、[スケマティック ダイアグラムを選択して開く] ダイアログ ボックスを開きます。
  3. C:\ArcGIS\ArcTutor\Schematics の AdvancedSchematicDB ジオデータベース内にある、AdvancedSchematic スケマティック データセットの [TestDiagram] というダイアグラムを参照し、選択します。
  4. [追加] ボタンをクリックして、マップ内でこのダイアグラムを開きます。

    この時点では、何も変更されていません。ルールは、ダイアグラムの生成時または更新時にのみ適用されます。また、このダイアグラムには現在、電気プラントはありません。

    リレーションシップ ルールを実行する前の TestDiagram

  5. [スケマティック] ツールバーの [スケマティック] の矢印をクリックし、[ダイアグラムの更新] [ダイアグラムの更新] アイコン をクリックします。
  6. [ダイアグラムの更新] ダイアログ ボックスで [OK] をクリックします。

    ダイアグラム上にすでに表示されていたガス プラントから、リレーションシップ ルールによって新しく追加された電気プラントに接続する直線が新たに 2 本描画されます。

    リレーションシップ ルールによって直線が追加された TestDiagram

  7. ArcMap を閉じ、保存するかどうかたずねるすべてのダイアログ ボックスで [いいえ] を選択します。

データセットとリレーションシップ ルールを変更して、直線の代わりにコンテナを表示する

コンテナを使用してリレーションシップを確認できるように、小さい変更をいくつか加えます。電気プラントは両方のガス プラントに電力を供給するので、関連する両方のガス プラントを含むコンテナとして電気プラントを描画します。pug_PUG_electric フィーチャ レイヤは、ポイント ジオメトリのノードとしてインポートされています。ポイント ジオメトリをコンテナに使用することはできません。コンテナは、ポリゴンまたはポリラインでなければなりません。そのため、これも修正する必要があります。

手順:
  1. スケマティック データセット エディタ アプリケーションに切り替えます。
  2. [スケマティック データセット エディタ] のツリーで [BrazilTemplate] エントリを展開して、このダイアグラム テンプレートと関連付けられているすべてのスケマティック フィーチャクラスを表示します。
  3. [pug_PUG_electric] を右クリックし、メニューから [削除] を選択します。

    [pug_PUG_electric] のショートカット メニュー

  4. 削除を確認するメッセージで [はい] をクリックします。
  5. [スケマティック データセット エディタ] ツールバーの [保存] [保存] アイコン をクリックします。

    ここで、レイヤをもう一度インポートする必要があります。

  6. [スケマティック データセット エディタ] のツリーで [BrazilTemplate] エントリを右クリックし、ショートカット メニューから [フィーチャ レイヤからインポート] を選択します。

    [フィーチャ レイヤからインポート] ダイアログ ボックスが開きます。

  7. [マップまたはレイヤ ファイル] 入力領域の端にある省略記号(...)ボタンをクリックします。

    [インポートするマップまたはレイヤ ファイルを選択] ダイアログ ボックスが開きます。

  8. このダイアログ ボックスを使用して、C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\Mixed_Data にある Brazil.mxd ファイルに移動し、選択します。
  9. [追加] ボタンをクリックします。ダイアログ ボックスが閉じ、[フィーチャ レイヤからインポート] ダイアログ ボックスの内容が更新されます。
  10. [選択解除] ボタンをクリックして、選択されているすべてのアイテムを削除します。これらのアイテムは、演習 1 ですでにインポートしているためです。
  11. [electric] の横にあるチェックボックスをオンにします。

    [フィーチャ レイヤからインポート] ダイアログ ボックス

  12. [OK] をクリックして、ダイアログ ボックスを閉じます。

    ポイントではなくポリゴンのジオメトリを使用するようにスケマティック フィーチャクラスを変更しなければならないので、ここでは保存しないように注意してください。

  13. [スケマティック データセット エディタ] のツリーで [pug_PUG_electric] エントリを選択します。
  14. エディタ ウィンドウの右側にある [プロパティ] タブで、[ジオメトリ][ポリゴン] に変更します。

    ポリゴンに変更された [pug_PUG_electric]

  15. [スケマティック データセット エディタ] ツールバーの [保存] [保存] アイコン をクリックします。
  16. [スケマティック データセット エディタ] のツリーで [BrazilTemplate] エントリを選択します。
  17. [ルール] タブをクリックします。
  18. 2 行目のリレーションシップ ルールを選択して、アクティブにします。
  19. [ルール] タブの [ルール プロパティ] ボタン [ルール プロパティ] ボタン をクリックします。
  20. [ソースとターゲットのスケマティック フィーチャをリレート] チェックボックスをオンにします。
  21. [リレーションの反転] チェックボックスをオンにします。

    ここでは電気プラントを親、つまりコンテナにしますが、ルールでは電気プラントがターゲットになっています。そのため、リレーションを反転する必要があります。繰り返しになりますが、ユーザが考えるのは電気プラントを選択することではなく、ガス プラントを選択することです。ただし、これを逆にすることもできます。

  22. [リンク線の作成] チェックボックスをオフにします。

    リレーションシップ ルールのプロパティ - 最終

  23. [OK] をクリックします。
  24. [スケマティック データセット エディタ] ツールバーの [保存] [保存] アイコン をクリックします。
  25. [スケマティック データセット エディタ] ダイアログ ボックスを閉じます。

変更したリレーションシップ ルールをテストする

手順:
  1. ArcMap を起動し、Brazil.mxd ファイルを読み込みます。

    このファイルは C:\ArcGIS\ArcTutor\Schematics\Schematics_Configuration\Mixed_Data にあります。

  2. [スケマティック] ツールバーの [スケマティック ダイアグラムを開く] ボタン [スケマティック ダイアグラムを開く] ボタン をクリックして、[スケマティック ダイアグラムを選択して開く] ダイアログ ボックスを開きます。
  3. C:\ArcGIS\ArcTutor\Schematics の AdvancedSchematicDB ジオデータベース内にある、AdvancedSchematic スケマティック データセットの [TestDiagram] というダイアグラムを参照し、選択します。
  4. [追加] ボタンをクリックして、マップ内でこのダイアグラムを開きます。

    この時点では、何も変更されていません。ルールは、ダイアグラムの生成時または更新時にのみ適用されます。電気プラントは引き続き、直線でガス プラントに接続されています。

  5. [スケマティック] ツールバーの [スケマティック] ドロップダウン リストをクリックし、[ダイアグラムの更新] [ダイアグラムの更新] アイコン コマンドを選択します。
  6. [ダイアグラムの更新] ダイアログ ボックスで [OK] をクリックします。

    これで、電気プラントを表すコンテナが両方のガス プラントを囲むように描画されます。

    ポリゴンを使用してリレーションシップを表した TestDiagram
    コンテナに関して興味深いのは、編集時に、コンテナによっていくつかの機能が追加される点です。コンテナを移動すると、コンテナ内のアイテムがコンテナと共に自動的に移動します。コンテナ内のアイテムを移動すると、そのアイテムに合わせてコンテナのサイズが自動的に調整されます。

  7. ArcMap を閉じ、保存するかどうかたずねるすべてのダイアログ ボックスで [いいえ] を選択します。
  8. ArcCatalog を閉じます。
5/10/2014