3D ネットワーク データセットの解析
ネットワーク データセットのソース フィーチャを表すジオメトリに Z 座標値が含まれている場合、3 次元ネットワークを作成して、そのネットワークを解析できます。このトピックでは、Network Analyst で 3D 解析を実行するための基礎を説明し、ArcScene で最適ルートを対話形式で検索するために使用できるジオプロセシング モデルを示します。
ネットワーク データセットを 3D で表示し、ソース フィーチャを作成しやすくするには、ArcGIS 3D Analyst Extension と ArcGIS Network Analyst エクステンションが必要です。
次の一連のグラフィックスでは、建物内の廊下とその他の通路がネットワーク データセットとしてモデリングされています。
まず、通路(玄関、階段、エレベーターなど)を 3D でデジタイズする必要があります。この作業は ArcScene で行います。
次に、ソース フィーチャクラスからネットワーク データセットを作成します。作成手順は他のネットワーク データセットの場合と同じですが、[ネットワーク フィーチャのエレベーション モデルを選択] で [ジオメトリの Z 座標値を使用] を選択します。
3D ネットワーク データセットを作成して構築したら、そのデータセットを使用してネットワーク解析を実行できます。
ネットワークは 1 つの建物に制限されません。キャンパス内、近隣、または市内の複数の建物を含めることができます。どのようなネットワーク構成でも、Network Analyst を使用してさまざまな解析を実行できます。たとえば、ロケーション-アロケーション解析を実行すれば、限られた医療用品や医療機器をどの部屋からもすぐに利用できる最適な配置を見つけることができます。また、オフィス ビルやレストラン内のリサイクル用回収容器、空港内の自動販売機なども解析対象となります。
2D ネットワークでの到達圏解析は、緊急応答センターが決められた時間内に到達できる建物を特定する場合などに役立ちます。一方、建物内のある地点へ到達するには、廊下を歩いたり、階段を上ったりしなければなりません。3D ネットワークを対象とする到達圏解析は、指定した時間内に到達できる屋内の場所を特定するときに役立ちます。
Network Analyst ではさまざまな 3D 解析を実行できますが、ここではそのごく一部を紹介します。
3D ネットワーク データセットで解析を実行
3D ネットワーク データセットに対して解析を実行する場合、現在のところ最も簡単なのはジオプロセシング モデルを使用する方法です。ここでは、複数のストップ間の最適ルートを検出するモデルを設定する方法を説明します。ArcScene でモデルを実行し、その結果を 3 次元で表示します。ここでの作業は、3D ネットワーク データセットが用意されていること(付属のデータセットを使用できます)、ジオプロセシングに慣れていること、モデルの作成方法を理解していることを前提としています。
モデルの概要
ここで説明するジオプロセシング モデルは、ストップ間の最小コスト ルートを検索します。ストップを対話的に追加するか、フィーチャクラスから読み込むかを選択できます。モデルの出力ネットワーク解析レイヤで使用するシンボルを LYR ファイルで事前に設定し、このモデルが参照できるようにしておきます。
エレメント |
タイプ |
説明 |
---|---|---|
入力ネットワーク データセット |
ネットワーク データセット レイヤ、入力パラメータ |
3D ネットワーク データセットのパス。ジオメトリの Z 座標値を使用して、エレベーションをモデリングする必要があります。 |
規制 |
文字列、入力パラメータ |
ネットワーク データセットに対する規制属性のリスト。 |
インピーダンス属性 |
文字列、入力パラメータ |
最小コスト パスを計算するためのコスト属性。 |
ツール |
ルート解析レイヤを作成します。このレイヤには、最適なルートの計算方法を決定するためのデータとプロパティ、および計算結果が含まれます。 |
|
ルート |
ネットワーク解析レイヤ |
ルート解析レイヤ。 |
ツール |
ネットワーク解析レイヤにネットワーク ロケーションを追加します。ここでは、ルート レイヤにストップを追加します。 |
|
入力ストップ |
フィーチャ セット(ポイント)、入力パラメータ |
解析結果のルートが巡回するポイント フィーチャ。 |
ルート(1) |
ネットワーク解析レイヤ |
ストップが設定されたルート レイヤ。 |
ツール |
最小コスト ルートを計算します。 |
|
解析の成否 |
ブール値 |
解析が正常に実行されたかどうかを示します。 |
ルート(2) |
ネットワーク解析レイヤ |
解析結果のルートが追加されるルート レイヤ。 |
出力ルート シンボル |
レイヤ |
[レイヤのシンボル情報を適用(Apply Symbology From Layer)] ツールにより、このレイヤのシンボルが出力ルート レイヤに適用されます。 |
ツール |
出力ルート シンボル変数が参照するレイヤのシンボルを、出力ルート変数に適用します。 |
|
出力ルート |
ネットワーク解析レイヤ(パラメータを取得) |
解析結果のルート、および出力ルート シンボルの事前定義されたシンボルを含むルート レイヤ。 |
モデル プロセス
ここでは、モデルについて詳しく説明します。
ルート レイヤの作成(Make Route Layer)
[ルート レイヤの作成(Make Route Layer)] ツールは、解析プロパティを格納する新しいネットワーク解析レイヤ(ルート)を作成し、入力ネットワーク データセットへの接続を管理し、入力ストップ、バリア、および出力ルートを格納します。ネットワーク データセットにはネットワーク インピーダンス属性があります。この属性はパラメータなので、ネットワーク データセットの任意のインピーダンス属性を設定できます。この例のネットワーク データセットには Length 属性と WalkTime 属性があります。したがって、各ソース フィーチャ(廊下、階段、エレベーターなど)を移動する際の距離または時間を指定できます。[規制] パラメータを使用して、解析時に階段、エレベーター、ターンを規制できます。ターン規制では、特定のドアの鍵を持っていない人をモデリングできます。
ロケーションの追加(Add Locations)
[ロケーションの追加(Add Locations)] ツールを使用して、ルート解析レイヤにストップを追加します。このモデルでは、ポイントをフィーチャクラスから読み込むことができます。また、ArcScene でマップ上をクリックして、ポイントを対話的に作成することもできます。いずれの場合も、これらのポイントのジオメトリに Z 座標値が含まれている必要があります。
このモデルを使用してストップを ArcScene に追加すると、それらに緑色のフラグが表示されます。このカスタム シンボル(および対象フィーチャのスキーマ)は、ディスクに保存されている LYR ファイルから取り込まれます。代わりにデフォルトのポイント シンボルを表示することもできますが、その場合でも、ストップの適切なスキーマが定義されたポイント フィーチャクラスを参照する必要があります。
3 次元のポイント フィーチャクラスから LYR ファイルを作成するには、次の手順に従います。
- [スタート] → [すべてのプログラム] → [ArcGIS] → [ArcScene 10] の順にクリックして、ArcScene を起動します。
-
[ArcCatalog ウィンドウ] ボタンをクリックします。
カタログ ウィンドウが開きます。
- ジオデータベースに移動します。
- Z 座標値を使用するポイント フィーチャクラスを作成します。
- [フィールドの追加(Add Field)] ツールを使用して、編集対象となるストップのフィールド(Name、Sequence、RouteName など)を作成します。
- 新しいフィーチャクラスを ArcScene に追加します。
- シンボルを設定します。このモデルの使用時には、設定したシンボルに基づいてストップが表示されます。
- コンテンツ ウィンドウで対象フィーチャ レイヤを右クリックし、[レイヤ ファイルとして保存] を選択します。
- このモデルと同じワークスペースに LYR ファイルを保存します。
このモデルを使用して、ストップを対話的に追加できるようにするには、[入力ロケーション] パラメータをフィーチャ セットとして設定する必要があります。このモデルにはこの機能がすでに含まれていますが、参考にために、この機能の設定手順を説明します。
- ModelBuilder で [ロケーションの追加(Add Locations)] を右クリックし、ショートカット メニューで [変数の作成] → [パラメータから] → [入力ロケーション] の順にクリックします。
-
新しい変数 [入力ロケーション] を右クリックして、[プロパティ] を選択します。
「Find best route」(最適ルートの検索)モデルの図では、「入力ロケーション」が「入力ストップ」に名前変更されています。
- [入力ロケーション プロパティ] ダイアログ ボックスで [データ タイプ] タブをクリックします。
- [データ タイプを選択] ドロップダウン リストをクリックし、[フィーチャ セット] を選択します。
-
属性、ジオメトリ タイプ、およびシンボルを定義している LYR ファイルから、スキーマとシンボルをインポートします。デフォルトのシンボルを使用する場合は、フィーチャクラスからスキーマをインポートできます。
上記の手順に従ってフィーチャクラスまたは LYR ファイルを作成した場合は、ここで、それらのファイルを取得するようにモデルを設定します。
-
[OK] をクリックします。
これで、このモデルでのルート解析に必要なストップを対話的に作成できるようになりました。
同様の方法で、さらに [ロケーションの追加(Add Locations)] ツールをモデルに取り込むことができます。ただし、その場合はストップではなくバリアを追加します。
解析
[解析の実行(Solve)] ツールは、入力ルート解析レイヤで指定されているオプションに基づいて最適なルートを計算し、ルート ラインを生成します。これらは、出力到達圏レイヤのルート サブレイヤに書き込まれます。
レイヤのシンボル情報を適用
[ロケーションの追加(Add Locations)] ツールのパラメータに基づいてストップに適用されるシンボルは一時的なものであり、このフィーチャセットにのみ適用されます。ルート解析レイヤ全体にシンボルを適用しないで [解析の実行(Solve)] ツールを実行した場合、ストップ フィーチャとルート フィーチャはデフォルトのシンボルに戻ります。そのため、[レイヤのシンボル情報を適用(Apply Symbology From Layer)] ツールをモデルに追加します。このツールは、すべてのサブレイヤを含む RouteSymbology.lyr からシンボルを取得し、このモデルで作成されるルート解析レイヤにそのシンボルを適用します。
次に、ArcScene でルート解析レイヤの LYR ファイルを作成する方法を説明します。この後、別のモデル(3D 到達圏解析を実行するモデルなど)を作成する場合は、次の手順に従って出力シンボルを設定できます。
- カタログ ウィンドウで、[Toolboxes] → [System Toolboxes] → [Network Analyst Tools] → [解析] の順にクリックします。
-
[ルート レイヤの作成(Make Route Layer)] をダブルクリックします。
[ルート レイヤの作成(Make Route Layer)] ダイアログ ボックスが開きます。
- [入力ネットワーク データセット] テキスト ボックスでネットワーク データセットを指定します。
-
[OK] をクリックします。
ルート解析レイヤの作成が開始されます。処理が完了すると、コンテンツ ウィンドウに解析レイヤが表示されます。
-
モデルで使用するサブレイヤ(ストップ、ポイント バリア、ルート)について、シンボルを指定します。
このモデルでは、ストップ レイヤで使用するシンボルも、[ロケーションの追加(Add Locations)] のパラメータが参照する LYR ファイルからインポートされます。つまり、ロケーションを追加するときも、解析を実行するときも、画面に表示されるストップ シンボルは変わりません。
- コンテンツ ウィンドウでルート解析レイヤの名前を右クリックし、[レイヤ ファイルとして保存] を選択します。
- レイヤ ファイルの名前と保存場所を指定し、[保存] をクリックします。
モデルの使用
- [スタート] → [すべてのプログラム] → [ArcGIS] → [ArcScene 10] の順にクリックして、ArcScene を起動します。
-
[ArcScene – スタートアップ] ダイアログ ボックスで、[既存のシーン] をクリックして [詳細検索] をクリックします。
[開く] ダイアログ ボックスが表示されます。
-
Network Workflow ワークフロー データへ移動し、[3DRouting] → [3DRouting.sxd] をダブルクリックします。
Network Analyst Workflow データは次のフォルダに配置されています。
C:\ArcGIS\ArcTutor\Network Analyst\Workflow
3DRouting プロジェクトが開きます。
-
[カタログ] ウィンドウ ボタン をクリックします。
カタログ ウィンドウが開きます。
-
[ホーム] ボタン をクリックします。
カタログ ウィンドウに、ArcScene ドキュメントが保存されているフォルダが表示されます。
-
[3DRoutingTools.tbx] ツールボックスを展開し、[Find best route] モデルをダブルクリックします。
[Find best route] ダイアログ ボックスが表示されます。
-
次の手順に従ってストップを追加します。
-
[フィーチャの追加] ボタンをクリックします。
-
マップ上で、ストップを配置する位置をクリックします。
-
[フィーチャの追加] ボタンをクリックします。
- 前ステップの操作を繰り返して、さらにストップを 1 つ以上追加します。
- [入力ネットワーク データセット(Input network dataset)] は、すでに 3D 対応のネットワーク データセット Transportation_ND を参照しているはずです。そうでない場合は、3DRouting フォルダ(3DRouting → OfficeBuilding.gdb → Transportation → Transportation_ND)を開いて選択します。
-
[インピーダンス属性(Impedance attribute)] をクリックして、[Length] または [WalkTime] を選択します。
Length
最短パスを検索
WalkTime
最速パスを検索
-
ルート解析で使用する規制を選択します。
RestrictStairs
階段の使用を禁止します。車椅子で移動する人の経路を作成する場合などに使用します。
RestrictElevators
エレベーターの使用を禁止します。非常口の経路を作成する場合などに使用します。
RestrictedTurns
このネットワーク データセットのターン規制は、鍵を使って開ける必要があるドアを表します。ドアの鍵を持っていない場合、この規制が適用されます。
-
[OK] をクリックします。
最適なルートが計算され、その結果がマップに表示されます。このルート フィーチャは、コンテンツ ウィンドウの [ルート] フィーチャクラスにも追加されます。
その他の種類の 3D ネットワーク解析の実行
このトピックで紹介したモデルは、他の 3D ネットワーク データセットでも使用できます。また、バリアなど他の機能を追加することも可能です。ロケーション-アロケーションや到達圏など、他の種類のネットワーク解析を実行するには、別のジオプロセシング モデルを作成する必要があります。Find best route(最適ルートの検索)モデルを参考にして、必要なモデルを作成してください。