演習 5:ジオメトリック ネットワークの構築
ジオメトリック ネットワークは、同じフィーチャ データセットに格納されているフィーチャクラスから構築できます。ジオメトリック ネットワークでは、水道ネットワークなどの有向フロー ネットワーク システムをモデリングします。ここでは、Montgomery ジオデータベースの Water フィーチャ データセットのフィーチャクラスから、ジオメトリック ネットワークを構築します。次に、接続性ルールを作成し、ネットワークで相互に接続可能なフィーチャを定義します。
水道ネットワークの作成
- [スタート] → [すべてのプログラム] → [ArcGIS] → [ArcCatalog 10] の順にクリックして、ArcCatalog を起動します。
- [フォルダ接続] で、Montgomery ジオデータベースを選択します。
- Montgomery ジオデータベースを展開します。
-
Montgomery ジオデータベース内の Water フィーチャ データセットを右クリックし、[新規作成] をポイントして、[ジオメトリック ネットワーク] をクリックします。
[新規ジオメトリック ネットワーク] ウィザードが開きます。
- [次へ] をクリックします。
- ジオメトリック ネットワークの名前として「WaterNet」を入力します。
- [はい] をクリックしてフィーチャをスナップします。
-
[フィート] の横にあるテキスト ボックスに、「0.5」と入力します。
ダイアログ ボックスが、次の図のようになります。
- [次へ] をクリックします。
-
[すべて選択] をクリックします。
リスト内のすべてのフィーチャクラスが、ネットワークに参加します。
- [次へ] をクリックします。
-
[いいえ] を選択し、ジオメトリック ネットワークにすべてのフィーチャを組み込みます。
- [次へ] をクリックします。
- Distribmains の行で、[ロール] 列に表示される [シンプル エッジ] をクリックします。
-
リストから [コンプレックス エッジ] を選択します。
Distribmains フィーチャクラスのロールが、シンプル エッジからコンプレックス エッジに変更されます。
- Tanks フィーチャクラスの行で、[ソースおよびシンク] に表示されるドロップダウン メニューをクリックし、[はい] をクリックします。
-
[Transmains] の行で、[ロール] 列に表示される [シンプル エッジ] をクリックし、リストから [コンプレックス エッジ] を選択します。
Transmains フィーチャクラスのロールが、シンプル エッジからコンプレックス エッジに変更されます。
- [次へ] をクリックします。
-
このジオメトリック ネットワークではウェイトは不要なため(デフォルト)、[次へ] をクリックします。
[次へ] をクリックすると、サマリ ページが開きます。
-
サマリ ページを確認したら、[完了] をクリックします。
ネットワーク構築プロセスの各段階の進捗状況を示す、進捗インジケータが表示されます。
ネットワークが構築されたがエラーが発生したことを示す、エラー メッセージが表示されます。
- [OK] をクリックしてメッセージ ボックスを閉じます。
- ジオメトリック ネットワークの構築中に発生したエラーを確認する場合は、WaterNet_BUILDERR テーブルをプレビューします。
-
カタログ ツリーで WaterNet_BUILDERR テーブルをクリックし、[プレビュー] タブをクリックして、このテーブル内のエントリを表示します。
2 つのレコードが表示されます。
ヒント:表示されたエラーの数が 2 つを超える場合は、ジオメトリック ネットワークをいったん削除してから、再び作成手順を繰り返します。ジオメトリック ネットワークを作成するには、この演習の手順をすべて正常に完了してください。それでも 3 つ以上のエラーが表示される場合は、前の 5 つの演習のいずれかが完了していなかった可能性があります。このチュートリアルは逐次的であるため、この演習を行うには、あらかじめ前の演習を完了する必要があります。
ここで、フィーチャ データセット内のどのフィーチャクラスがジオメトリック ネットワークに参加するかを選択する必要があります。
このネットワークを使用して作業した後、ネットワークを削除し、再構築する必要がある場合、特定の属性を持つフィーチャを除外するオプションを使用すると、ネットワークの一部の状態を容易に管理することができます。次のパネルでは、フィーチャを除外しないように選択します。
次のダイアログ ボックスで、ジオメトリック ネットワークでコンプレックス エッジ フィーチャクラスになるライン クラスを指定する必要があります。コンプレックス エッジ フィーチャは、別のフィーチャクラスが接続されても、そこで分割されることがないため、複数の給水管が接続された配水管をモデリングするときに有効です。デフォルトでは、すべてのライン フィーチャクラスはシンプル エッジ フィーチャクラスです。
ジャンクション フィーチャクラスのどれかを、ネットワークのソースまたはシンクとして機能させる場合は、このダイアログ ボックスで指定します。ソース(始点)とシンク(終点)は、ネットワークのフロー方向を決定するのに使用します。
これで、ネットワーク ウェイトを割り当てることができます。ネットワーク ウェイトとは、論理ネットワーク内でエレメントを通過する際の移動コストで、水道管の水圧の減圧などがあります。
次に、水道ネットワーク用の接続性ルールを設定しましょう。
接続性ルールの作成
ネットワーク接続性ルールは、互いに接続可能なネットワークフィーチャの種類や、異なる種類のフィーチャに接続可能な特定の種類のフィーチャが接続できる数を制限します。これらのルールを設定することにより、データベース内でのネットワーク接続の整合性を維持できます。
-
Water フィーチャ データセット内の WaterNet ジオメトリック ネットワークを右クリックし、[プロパティ] をクリックします。
[ジオメトリック ネットワーク プロパティ] ダイアログ ボックスが開き、ネットワークを構成するフィーチャクラスに関する情報と、ネットワーク ウェイトのリストが表示されます。このダイアログ ボックスでは、接続性ルールの追加、削除、および変更も可能です。
-
[接続性] タブをクリックします。
このタブでは、ジオメトリック ネットワークの接続性ルールの追加と変更が可能です。
- ドロップダウン リストの矢印をクリックして、[laterals] をクリックします。
- [このフィーチャクラスのサブタイプ(Subtypes in the feature class)] リストで、[Hydrant laterals] をクリックします。
- [ネットワークのサブタイプ(Subtypes in the network)] リストで、[Hydrants] チェックボックスをオンにします。
-
[ネットワークのサブタイプ(Subtypes in the network)] リストで、[Hydrants] の横にあるプラス記号をクリックします。
Hydrants サブタイプが展開されます。
-
Hydrants サブタイプの下の [Hydrants] を右クリックし、[デフォルト値に設定] をクリックします。
Hydrants サブタイプの横に青色の D の記号が表示されます。これは、Hydrants サブタイプが給水管のエッジ サブタイプのデフォルトのジャンクションであることを表します。
- [ネットワークのサブタイプ(Subtypes in the network)] リストで、[Distribmains] の横にあるプラス記号をクリックして、展開します。
- Distribmains サブタイプの下に表示される [Distribmains] 用のチェックボックスをオンにします。
- [ジャンクション サブタイプ] リスト内の [Fittings] を、プラス記号をクリックして展開します。
-
Fittings ジャンクション サブタイプの下の [Tap]、[Tee]、および [Saddle] の各チェックボックスを、この順番にオンにします。
[Tap] の横に、デフォルトのジャンクションを示す青色の「D」が表示されます。
- また、[ジャンクション サブタイプ] リストで、汎用(デフォルト)のネットワーク ジャンクション タイプである [WaterNet_Junctions] 用のチェックボックスをオンにします。
- [OK] をクリックします。
最初に、新しいエッジ-ジャンクション ルールを作成します。このルールでは、給水管に給水栓を接続できるように指定し、給水管を作成したときに、給水栓ジャンクション フィーチャがその端に設置されるようにします。
ここで、ネットワーク内で給水管に接続できるジャンクションのタイプをクリックします。操作の簡略化を図るために、給水栓給水管を給水栓だけに接続することにしましょう。
給水管を作成するときに、給水管の端が他のエッジまたはジャンクションに接続されていない場合は、給水栓を給水管の端に設置するように指定する必要もあります。
次に、新しいエッジ-エッジ ルールを作成しましょう。このルールでは、給水栓給水管が Tap(タップ継手)、Tee(T 字継手)、Saddele(サドル継手)を介して Distribmains(配水管)に接続可能であることを規定します。給水栓給水管と Distribmains を接続するデフォルト ジャンクションは tap になります。
[ネットワークのサブタイプ] リストでエッジをチェックすると、[ジャンクション サブタイプ] リストの項目がアクティブになります。このリストでは、給水栓給水管と Distribmains の接続に使用するジャンクションのタイプを指定できます。
これで、接続性ルールを定義してジオデータベースに振舞いが追加されました。通常は、1 つのネットワークに多数の接続性ルールを定義しますが、このチュートリアルでは先に指定した接続性ルールを定義するだけでかまいません。
「演習 6:アノテーションの作成」では、新しい給水栓給水管フィーチャクラスのフィーチャにリンクされたアノテーションを作成します。