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

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

スケマティック ルールは、ダイアグラムに自動的にアイテムを追加したり、ダイアグラムから自動的にアイテムを削除したりする場合に非常に役立ちます。たとえば、ユーティリティ ネットワークには、多くの場合、ユーザがスケマティック ダイアグラムに表示する必要がないような設備があります。そこで、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. [説明] テキスト ボックスに「ジャンクションの削除」と入力します。
  9. [削減するノード スケマティック フィーチャクラスを選択] ドロップダウン リストで [pipelines_Net_Junctions] を選択します。
  10. [接続制限] オプションを選択します。
  11. 次の両方のチェックボックスをオフにします。
    1. 接続数 1 のノードを削減
    2. 接続数 2 より大きいノードを削減

    また、[接続制限なし](すべてのアイテムを削除)を選択して、接続数 1 のアイテムと接続数が 2 を超えるアイテムも削除することができますが、まず、結果を分析する必要があります。Schematics のリンク機能には、接続された 2 つのノードが必要です。接続数 1 のノード(リンクの終端)を削除した場合は、そのリンクも削除しなければなりません。接続数が 2 を超えるノードを削除すると、複数の方法でアイテムが論理的に再接続される可能性があるため、後で接続が正しくなくなる場合があります。このルールの詳細と使用可能な他のパラメータについては、ヘルプ ドキュメントをご参照ください。

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

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

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

手順:
  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] の横にあるチェックボックスをオンにします。

    [フィーチャ レイヤからインポート] - electric

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

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

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

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

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

  13. [ルール プロパティ] ボタン [ルール プロパティ] ボタン をクリックして [リレーションシップ ルール属性] タブを開き、ルールを構成します。
  14. [説明] テキスト ボックスに「ガス-電気間」と入力します。
  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] の横にあるチェックボックスをオンにします。

    [フィーチャ レイヤからインポート] - 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 を閉じます。

7/10/2012