このチュートリアルの手順に従うことで、モデル ツールの作成処理を段階的に実行できます。このチュートリアルでは、モデル変数をモデル パラメーターとして公開することによって、ModelBuilder でのツールの実行チュートリアルで構築されたモデルを実用的なツールに作り変えます。
モデル ツール作成の全般的な概要については、ModelBuilder を使用したツールの作成の概要 をご参照ください。
このチュートリアルを開始する前に、ArcGIS Desktop(ArcGIS Desktop Basic、ArcGIS Desktop Standard、または ArcGIS Desktop Advanced) がインストールされていることを確認してください。このチュートリアルに必要なデータ (ArcGIS Desktop の CD に収録) は、デフォルトでは C:\arcgis\ArcTutor にインストールされます。チュートリアルのシナリオは架空のものであり、元のデータはチュートリアルに合わせて変更されています。
元のデータへの変更を回避するために、ModelBuilder フォルダーを C:\arcgis\ArcTutor からコンピューター上の C ドライブにコピーしてください。別のドライブまたは格納場所にデータをコピーする場合、そのコピー先のドライブを下記のすべての手順において同様に使用するようにしてください。
- マップ ドキュメントを開く
- モデルの作成
- ツール パラメーターの設定
- モデル パラメーターの作成
- モデル エレメントの名前の変更
- モデル パラメーターの順序の設定
- モデル パラメーターのタイプの設定
- モデル パラメーターに対するフィルターの設定
- 出力データのシンボルの設定
- 中間データの管理
- 一般的なモデル プロパティの変更
- モデルのドキュメント化
1 - マップ ドキュメントを開く
Windows エクスプローラーで C:\ModelBuilder フォルダーの場所を参照し、Extract Vegetation.mxd をダブルクリックします。ArcMap が起動し、マップ ドキュメントが開きます。または、
- ArcMap を起動します。
- [ArcMap - はじめに] ダイアログ ボックスで、[既存のマップ] > [詳細検索] の順にクリックします。
[ArcMap ドキュメントを開く] ダイアログ ボックスが表示されます。
- C:\ModelBuilder フォルダーの場所を参照し、Extract Vegetation.mxd を選択して、[開く] をクリックします。
Extract Vegetation.mxd が開きます。
2 - 初期モデルの作成
ModelBuilder でのツールの実行の手順に従います。その同じモデルを、このチュートリアルの最初のベースとして使用します。モデルを以前に保存しておいた場合、モデルを右クリックし、[開く] を選択してモデルを開きます。このモデルを「ModelBuilder でのツールの実行チュートリアル」で実行した後に保存している場合、モデル エレメントの周囲に影が表示されています。影を削除するには、[ModelBuilder] ツールバーの [すべてのモデルを整合チェック] ボタンをクリックして、モデル全体に対して整合チェックを実行します。
カタログ ウィンドウから、サンプル モデルをダブルクリックします。ツールのダイアログ ボックスが開きますが、パラメーターは表示されません (次の図を参照)。
[OK] をクリックしてツールを実行すると、モデルが実行されます。出力変数に対して [マップへ追加] がオンになっている場合でも、モデルの出力 (ClippedFC) は ArcMap [コンテンツ] ウィンドウに追加されません。モデルはそのツール ダイアログ ボックスから実行されるため、[マップへ追加] 設定は無視されます。マップ画面に出力を追加するには、出力変数をモデル パラメーターに設定する必要があります。
毎回 ModelBuilder を開くことなく複数の入力を使用してモデルを実行できるようにすることが、モデル パラメーターを作成するもう 1 つの理由です (次の図を参照)。
モデル パラメーターが作成されたら、[Input Roads]、[Buffer Distance]、[Input Vegetation]、[Output Clipped Feature Class]、および [XY Tolerance] の各パラメーターの値を個別に指定することで、そのツールのダイアログ ボックスからモデルを実行することができます。モデルを実行するたびに毎回 ModelBuilder を開く必要はありません。かわりにツールのダイアログ ボックスを使用することができます。モデルをツール ダイアログ ボックスから実行すると、[結果] ウィンドウ内に結果が作成されるというメリットがあります。ModelBuilder 内でモデルを実行した場合、[結果] ウィンドウ内に結果が作成されません。
以降の手順では、モデル変数をパラメーターとして設定します。これにより、上の図に示すように、モデル ツールのダイアログ ボックスに表示されるようになります。
3 - ツール パラメーターの設定
[バッファー距離] パラメーターと [XY 許容値] パラメーターを定義するには、モデル変数を作成する必要があります。
モデルにツールを追加すると、入力データセットと出力データセット用のモデル変数が自動的に作成されます。ただし、それ以外のツール パラメーターに対しては作成されません。これは画面の表示を整然とさせるためです。すべてのツール パラメーター用変数の自動生成が終わるとモデル ダイアグラムが直ちに読み込み禁止になります。たとえば、[バッファー (Buffer)] ツールをモデルに追加すると、[出力フィーチャクラス] パラメーター用の変数が自動的に作成されます。[バッファー (Buffer)] を右クリックし[入力フィーチャ] パラメーターに入力した後、入力フィーチャのモデル変数が作成されます。それ以外のパラメーター (たとえば、[距離]、[サイド タイプ]、[エンド タイプ]) はいずれも、モデル内の変数として自動的には追加されません。バッファーの距離 [値、またはフィールドを指定] および [XY 許容値] 用のモデル変数は、下の手順で作成します。
- カタログ ウィンドウで、モデルを右クリックし、[開く] をクリックします。[ModelBuilder] ウィンドウにモデルが開きます。
- [バッファー (Buffer)] を右クリックします。
- [変数の作成] > [パラメーターから] > バッファーの距離 [値、またはフィールドを指定] の順にクリックします。
[距離] パラメーターがモデル内の変数として追加されます。
- [クリップ (Clip)] を右クリックします。
- [変数の作成] > [パラメーターから] > [XY 許容値] の順にクリックします。
4 - モデル パラメーターの作成
これで、[距離] および [XY 許容値] 変数が作成されたので、モデル パラメーターを作成する準備が整いました。
- バッファーの距離 [値、またはフィールドを指定] を右クリックし、[モデル パラメーター] をクリックします (次の図を参照)。
英字 P が変数のそばに表示され、その変数がモデル パラメーターであることが示されます。このモデル パラメーターは、モデルのツール ダイアログ ボックスにも表示されます。
- 次の変数用のモデル パラメーターを作成します ([BufferedFC] 用にはモデル パラメーターを作成しません)。
- PlanA_Roads
- vegetype
- XY 許容値
- ClippedFC
5 - モデル エレメントの名前の変更
ModelBuilder では、変数にデフォルト名が割り当てられます。変数名は、モデル ツールのダイアログ ボックスでパラメーター名に使用されます。変数の名前を変更することは、特に変数がモデル パラメーターである場合に有効な手段です。
- [PlanA_Roads] を右クリックし、[名前の変更] をクリックします。
- 「Input Roads」と入力し、[OK] をクリックします。
変数の名前が「Input Roads」に変更されます。
- 次の手順で、残りの変数の名前を変更します。
- 「バッファーの距離 [値、またはフィールドを指定]」という名前を「バッファー距離」に変更します。
- 「vegetype」という名前を「Input Vegetation」に変更します。
- 「ClippedFC」という名前を「Output Clipped Feature Class」に変更します。
- モデルを保存 します。ModelBuilder を終了する必要はありません。
- カタログ ウィンドウからモデルをダブルクリックし、モデル ツールのダイアログ ボックスを開きます。カタログ ウィンドウにアクセスする場合は、必要に応じて [ModelBuilder] ウィンドウを移動するかまたは最小化してください。モデル ツールのダイアログ ボックスが、下の図のようになります。ダイアログ ボックス上では、パラメーターの順序が図とは異なる場合がありますが、下の順序は変更されるので問題ありません。
[OK] をクリックすればツールを実行できますが、まず別の出力フィーチャクラスを選択してから、実行するようにしてください。ツールが実行され、ArcMap [コンテンツ] ウィンドウに出力フィーチャクラスが追加されます。ModelBuilder 内でモデルを実行した場合とは異なり、そのダイアログ ボックスからモデルを実行した場合、モデル ダイアグラムが変更されません。
6 - モデル パラメーターの順序の設定
上の図では、パラメーターの順序が望ましくありません。一般的に推奨されるパラメーターの順序は、次のとおりです。
- 必須の入力データセット
- ツールの実行に影響する他の必須パラメーター
- 必須の出力データセット
- オプション パラメーター
- ModelBuilder で、[モデル] > [モデル プロパティ] の順にクリックします。
- [パラメーター] タブをクリックします。
- [Input Roads] パラメーターを選択し、右側にある上方向矢印ボタンと下方向矢印ボタンを使用して、上へ移動します。
- 下の図に示すように、他のパラメーターの位置を変更します。
7 - モデル パラメーターのタイプの設定
モデル パラメーターが正しい順序で設定されたら、パラメーターのタイプを変更します。モデル内のツールの必須パラメーターに対しては、以下の設定で [必須] タイプを [オプション] に変更することはできません。
- ModelBuilder で、[モデル] > [モデル プロパティ] の順にクリックします。
- [パラメーター] タブをクリックします。
- [XY 許容値] の [タイプ] カテゴリの下のセルをクリックします。リストに 2 つのオプションが表示されます。下の図に示すように、この例では [XY 許容値] を [オプション] パラメーターのままにし、残りを [必須項目] パラメーター タイプにしています。
8 - モデル パラメーターに対するフィルターの設定
パラメーターにフィルターを適用すれば、入力のタイプを特定のパラメーターだけに制限することができます。このモデルの例では、[Input Roads] パラメーターが、ライン フィーチャであることを想定しています。次の手順ではフィルターを適用して、ライン フィーチャだけを受け入れるようパラメーターを変更します。
- [モデル] > [モデル プロパティ] をクリックします。
- [パラメーター] タブをクリックします。
- [Input Roads] をクリックし、[フィルター] カテゴリの下のセルをクリックします。
- [フィーチャクラス] フィルターを選択します。
[フィーチャクラス] ダイアログ ボックスが開きます。
- ポリライン以外のすべてのタイプをオフにして、[OK] をクリックします。
- [モデル プロパティ] ダイアログ ボックスで [OK] をクリックし、フィルターを適用します。
9 - 出力データのシンボルの設定
モデルの出力には、出力の表示に使用するための特定のシンボルを設定することができます。この例では、バッファー ゾーン内の植生タイプに基づいてシンボルが設定されています。出力データのシンボルを設定するには、最初の手順でレイヤー ファイルを作成し、2 番目の手順で出力データ プロパティでレイヤー ファイルを定義します。このチュートリアル用のレイヤー シンボル ファイルは事前に作成済みです。
- [ModelBuilder] ウィンドウで、[Output Clipped Feature Class] を右クリックして、[プロパティ] をクリックします。
- [レイヤー シンボル] タブをクリックします。
- C:\ModelBuilder\ToolData 内にコピーした ToolData フォルダーから、レイヤー ファイルを参照します。
- OutputSymbology.lyr を選択し、[追加] をクリックします。
- [OK] をクリックします。
10 - 中間データの管理
モデルを実行すると、モデル内のプロセスごとに出力データが作成されます。作成されたデータの一部は、新しい出力を作成する別のプロセスに接続するためだけに作成されるので、モデルの実行後には無効になる場合があります。そのようなデータは、中間データと呼ばれています。最終出力以外の出力、およびモデル パラメーターに設定された出力はすべてモデル内で自動的に中間データになります。この例で、[バッファー (Buffer)] ツールの出力は [クリップ (Clip)] ツールへの入力としてのみ有効であり、入力後は使用されないので、[中間] オプションがオンになります。[中間] オプションをオフにすれば、中間データの保存が可能になります。
11 - 一般的なモデル プロパティの変更
モデルのモデル名、ラベル、および説明を設定することができます。
- ModelBuilder インターフェイスから [モデル] > [モデル プロパティ] をクリックします。
- モデルの名前として「ExtractVegetationforProposedRoads」と入力します。モデル名には空白を含めることができません。
- [ラベル] テキスト ボックスに、「Extract Vegetation for Proposed Roads」と入力します。モデル ラベルには空白を含めることができます。このラベルを使用して、カタログ ウィンドウにモデル名が表示されます。
- [説明] テキスト ボックスに、適当なテキストを入力します。
[相対パスで保存] オプションがオンの場合、モデル ツールを共有することも、モデル データとモデルを別の格納場所に移動することもできます。このオプションはこのチュートリアルでは使用しません。ここで取り上げたのは、後に共有されるモデルおよびモデル ツールに対して適用することを推奨するためです。
- [OK] をクリックします。
- 完成したモデルを保存 し、ModelBuilder を終了します。
カタログ ウィンドウからモデルをダブルクリックし、モデル ツールのダイアログ ボックスを開きます。モデルは定義済みの値で保存されたので、ダイアログ ボックス上のすべてのパラメーターに値が設定されています。ここで新しい値を入力して、パラメーターの値を変更することもできます。[OK] をクリックして実行します。モデルの最終出力 ([Output Clipped Feature Class]) はデフォルトでマップ画面に追加され、モデル メッセージが [結果] ウィンドウに表示されます。結果を表示するには、マップ ドキュメントの [コンテンツ] ウィンドウで、[植生タイプ] レイヤーをオフにします。
12 - モデルのドキュメント化
常に、モデルをドキュメント化して共有することを推奨します。ドキュメント化の手順:
- カタログ ウィンドウでモデルを右クリックし、[アイテムの説明] をクリックします。[アイテム説明] ウィンドウに 説明 ページが表示されます。
- [アイテム説明] ウィンドウで [編集] ボタンをクリックします。
ドキュメント エディターが開き、アイテムの説明を入力できます。
- このモデル内のアイテムごとに適当な説明を入力し、[保存] ボタンをクリックします。
追加の解析
モデルに対してなんらかの解析を実行する場合、[要約統計量 (Summary Statistics)] ツールを追加することにより、計画道路の周囲にあるバッファー ポリゴン内の植生タイプごとに影響を受ける領域の要約テーブルを取得できます。
次の手順には、モデルを別のモデル内ツールとして使用する方法について説明してあります。
- ArcMap の [標準] ツールバーの [ModelBuilder] ボタン をクリックして、新しいモデルを開きます。
- これで、モデル ツールの作成は完了です。このモデル ツールは、他のツールと同様に使用できます。次の図に示すように、モデル ツールをカタログ ウィンドウから新しいモデルにドラッグして、新しいモデルに追加することができます。
- [ジオプロセシング] > [ツールの検索] の順にクリックし、[検索] ウィンドウ (ArcMap ですでに開いていない場合) を開きます。
[検索] ウィンドウが開きます。
- [検索] ウィンドウで、「要約統計量」と入力し、[検索] ボタン をクリックします。
- ツールをモデル内にドラッグします。
- [要約統計量 (Summary Statistics)] エレメントをダブルクリックし、ツール ダイアログ ボックスを開きます。
- [入力テーブル] パラメーター用の矢印をクリックし、横に青色のリサイクル アイコン が表示されている [Output Clipped Feature Class] を選択します。リサイクル アイコンは、モデル内の変数を意味します。
- [出力テーブル] パラメーター用に、出力ジオデータベースの場所 (C:\ModelBuilder\Scratch\Output.gdb) を参照し、「AffectedVegetation」を名前として入力し、[保存] をクリックします。
- [統計フィールド] パラメーターについては、リストから [Shape_Area] を選択します。
- [統計の種類] で [Shape_Area] の横にあるセルをクリックし、ドロップダウン リストから [SUM] を選択します。
- [ケース フィールド] パラメーターについては、リストから [VEG_TYPE] を選択します。
- [OK] をクリックします。
- [Output Clipped Feature Class](緑色の楕円) を右クリックし、[マップへ追加] をオンにします。モデルの実行が終わると、マップ画面に出力が追加されます。
- 右クリックして、[AffectedVegetation] 変数の [マップへ追加] オプションをオンにします。モデルの実行が終わると、画面に出力が追加されます。
- モデルを実行します。
出力の [Output Clipped Feature Class] および [AffectedVegetation] テーブルが、ArcMap [コンテンツ] ウィンドウのマップ画面に追加されます。
- テーブルを右クリックし、[開く] をクリックして開きます。
テーブルに、プラン A の道路計画により影響を受けるバッファー ポリゴン内の植生タイプ別エリアのサマリーが表示されます。