チュートリアル: ネットワーク解析サービスの公開
ArcGIS Server は、交通ネットワークでのネットワーク解析の実行をサポートします。これには、最短ルートの検索、事故現場からの最寄り施設の検索、または 1 つ以上の施設に対する到達圏の生成が含まれます。さまざまな種類のネットワーク解析とそれらの機能の詳細については、ArcGIS Desktop ヘルプで「ネットワーク解析の種類」をご参照ください。
このチュートリアルでは、ネットワーク解析に使用できるマップ ドキュメントを作成し、ArcGIS Server のネットワーク解析サービスとして公開する手順を示します。その後に、ネットワーク解析サービスを使用する方法に関するヘルプを示します。このチュートリアルのデータは、SDK(Software Development Kit)とともにインストールされています。SDK がインストールされていない場合は、Network Analyst の ArcTutor データを使用するか、独自のデータを使用して手順を実行してみてください。
マップ ドキュメントの作成
ネットワーク解析サービスには、ネットワーク解析レイヤが 1 つ以上含まれたマップ サービスが必要です。つまり、ArcGIS Server に公開されるマップ ドキュメントには、[Network Analyst] ツールバーのツールを使用して作成されたネットワーク解析レイヤが少なくとも 1 つ含まれている必要があります。現時点では、ネットワーク解析サービスはルート解析レイヤ、最寄り施設解析レイヤ、および到達圏解析レイヤをサポートします。
次の手順に従って、これら 3 種類のネットワーク解析をすべて実行できる単一のマップ ドキュメントを作成します。
- ArcMap を起動して、新しい空のマップ ドキュメントを開きます。
- [カスタマイズ] → [エクステンション] の順にクリックし、[Network Analyst] をオンにして、Network Analyst エクステンションを有効にします。
- [カスタマイズ] → [ツールバー] → [Network Analyst] の順にクリックして、[Network Analyst] ツールバーが表示されるようにします。
-
ネットワーク解析レイヤを作成するためにマップに含まれている必要のあるネットワーク データセットを追加します。ネットワーク データセットを追加するには、[ファイル] → [データの追加] → [データの追加] の順にクリックし、ネットワーク データセットを選択してマップに追加します。この例では、%ARCGISHOME%\DeveloperKit10.0\Samples\data\SanFrancisco\SanFrancisco.gdb\Transportation\Streets_ND というネットワーク データセットを使用します(ArcTutor データを使用している場合は、通常は C:\arcgis\ArcTutor\NetworkAnalyst\Tutorial\SanFrancisco.gdb にインストールされる SanFrancisco ジオデータベースを参照します)。Streets_ND に含まれているすべてのフィーチャクラスをマップに追加するように要求するメッセージが表示されたら、[はい] をクリックします。
Shoreline(BaseMap フィーチャ データセット内)などの他のフィーチャクラスを追加したり、水を表すデータ フレームの背景色を設定したりすることで、マップの外観を向上させることもできます。
-
ほとんどのユーザは Streets_ND_Junctions レイヤを表示する必要がないので、コンテンツ ウィンドウでこのレイヤをオフにします。また、ネットワーク データセット レイヤを描画するよりも Streets フィーチャ レイヤを描画するほうがより高速で、より柔軟に操作できるため、ネットワーク データセット レイヤ(Streets_ND)もオフにします。SPEEDCAT フィールドに基づいて、個別値レンダラを使って道路をシンボル表示します。
-
1 つ以上のネットワーク解析レイヤをマップに追加します。[Network Analyst] ツールバーの [Network Analyst] ドロップダウン メニューをクリックし、作成するネットワーク解析レイヤのタイプを選択します。たとえば、ルート解析レイヤを作成するには、[新規ルート] をクリックします。
-
必要であれば、ネットワーク解析サブレイヤのシンボル表示を変更します。たとえば、ルート フィーチャ レイヤを 50% 透明にして、ライン幅を 6 ピクセルにすることができます。
-
[ファイル] → [保存] の順にクリックして、マップ ドキュメントをディスクに保存します。
マップ ドキュメントの名前と保存場所は任意に選択できます。ただし、SDK を使用している場合に、何も変更せずにすべての開発者サンプルをこのサービスに利用したい場合は、SDK に含まれているサンプル マップ ドキュメントと同じ場所に保存する必要があります。そのための手順は次のとおりです。
- %ARCGISHOME%\DeveloperKit10.0\Samples\data\SanFrancisco\SanFrancisco.mxd の名前を orig-SanFrancisco.mxd に変更します。
- マップ ドキュメントを %ARCGISHOME%\DeveloperKit10.0\Samples\data\SanFrancisco\SanFrancisco.mxd として保存します。
サービスの公開
ネットワーク解析レイヤが含まれたマップ ドキュメントを作成したら、それをネットワーク解析サービスとして公開できます。マップ ドキュメントをサービスとして公開し、ネットワーク解析ケーパビリティを有効にすると、同じ名前のネットワーク解析サービスが作成されます。
サービスを公開する前に、「リソースをサービスとして公開するための準備」を読み、そのガイドラインに従ってください。これは、モデルとマップのすべてのデータを読み取り、アクセスするための権限がサーバに付与されていることを確認するのに役立ちます。具体的には、ArcGIS SOC(Server Object Container)アカウントに、マップ ドキュメント、ネットワーク データセット、およびマップ ドキュメントが参照する追加データが格納されているディレクトリの読み取り権限が与えられている必要があります。また、SOC アカウントには、サーバ出力ディレクトリの読み取りと書き込みの権限も必要です。ArcGIS Server とともにインストールされたデフォルトのサーバ出力ディレクトリ(C:\arcgisserver\arcgisoutput)を使用している場合は、インストール プロセスによって適切な権限がすでに与えられています。
次の手順に従って、ArcGIS Server Manager からサービスを公開します。
-
ArcGIS Server Manager にログインして、[マップ、グローブ、その他 GIS リソースをサービスとして公開] をクリックします。
詳細:
Manager には、サービスを公開するために使用できるウィザードが 2 つあります。ここでは、[GIS リソースの公開] ウィザードを使用します。これはサービスを作成する最も簡単な方法であり、最小限の情報でサービスを作成できます。
サービスを作成するもう 1 つの方法は、[新規サービスの追加] ウィザードです。このウィザードは、サービスを完全に手動で公開し、すべてのサービス パラメータの入力を要求します。
- ウィザードの最初のページでは、公開する GIS リソースを指定します。これは、ネットワーク解析レイヤが含まれたマップ ドキュメントです。それが共有ディレクトリにある場合は、マップ ドキュメントを参照して選択できます。共有ディレクトリにない場合は、マップ ドキュメントのパスを慎重に入力します。例を次に示します。C:\Program Files\ArcGIS\DeveloperKit10.0\Samples\data\SanFrancisco\SanFrancisco.mxd。
-
サービス名に「SanFrancisco」という名前を付けます。この名前は、マップ サービスとネットワーク解析サービスの両方に使用されます。
-
ウィザードの 2 ページ目では、デフォルトで 2 つのケーパビリティが有効になっています。[マッピング] は、すべてのマップ サービスに対して有効になっています。[ネットワーク解析] は、Manager により、公開しているマップに 1 つ以上のネットワーク解析レイヤが含まれていることが検出されるので、有効になっています。[ネットワーク解析] ケーパビリティが有効になっているときにマップ サービスを公開すると、同じ名前の関連するネットワーク解析 サービスが作成されます。これらのケーパビリティは有効のままにしておき、[次へ] をクリックして、ウィザードの最後のページに移動します。このページには、2 つのサービスが作成されることに関する説明とその URL が表示されます。
- [完了] をクリックしてサービスを公開し、ウィザードを閉じます。
-
サービスが公開された後、[サービス] → [サービスの管理] の順にクリックして、新しく作成されたサービスを表示します。名前は SanFrancisco で、このサービスのケーパビリティには [マッピング] と [ネットワーク解析] が含まれています。
ネットワーク解析サービスの使用
ArcMap の [ルート検索] ダイアログ ボックスでは、デフォルトの構成がネットワーク解析サービスを使用できるようにできます(これについては、下記の手順で説明します)。また、ArcGIS Explorer の [ルート] ダイアログ ボックスでは、ネットワーク解析サービスを指すアプリケーション構成を作成してからそのサービスにアクセスできるようにできます。Web アプリケーションやその他のデスクトップ アプリケーションでは、ネットワーク解析サービスはプログラムから使用する必要があります。詳細については、「ネットワーク解析サービス」トピックをご参照ください。具体的には、「サービスの使用」セクションに、各種プラットフォームおよびアプリケーションのサンプル コードへのリンクがあります。
サービスを試しに操作する場合に、使用する API がどれであっても問題がない場合は、「ArcGIS JavaScript API ルート サンプル」を使用すると、簡単に操作を開始できます。サンプル コードは、インターネットに接続している限り、メモ帳に貼り付けて、使用しているコンピュータから実行できます。行う必要があるのは、サンプルの URL を独自のネットワーク解析サービスの URL に置き換える作業のみです。
ArcMap の ルート検索 ダイアログ ボックスを使用したルート検索サービスの使用
- ArcMap を起動して、新しい空のマップ ドキュメントを開きます。
より簡単にストップとバリアを適切なロケーションに作成し、結果を解釈できるようにするには、1 つ以上のレイヤをマップに追加する必要があります。SanFrancisco サンプル データを使用している場合は、Transportation フィーチャ データセットの Streets フィーチャクラスが適切な参照レイヤとして機能します。
- [ルート検索] ボタン をクリックします。
[ルート検索] ダイアログ ボックスが表示されます。
- [オプション] タブをクリックします。
- [ルート サービス] 参照ボタンを使用して、ネットワーク解析サービスに接続します。
- [ルート検索] ダイアログ ボックスのその他のコントロールおよびパラメータを使用して、ネットワーク解析への入力を指定します。解析を実行する準備が完了したら、[ルート検索] をクリックします。