FAQ
ArcGIS Pro: 別のモデルの処理を呼び出したい (サブモデルの利用)
ナレッジ番号:3209 | 登録日:2023/05/29 | 更新日:2024/11/21
概要
ModelBuilder でモデルを作成する際、行いたい処理がひとつのモデルに収まらないケースがあります。 例えば以下の場合は、処理を複数のサブ モデルに分けて、メイン モデルで全体の処理を行う手法が有効です。
- 反復処理のツール(イテレーター)を複数個使用したいとき。
反復処理のツールはモデルの中で1つのみ使用可能であるため、複数のモデルを統合する方法により可能となります。 - 処理が複雑なモデルの処理を分かりやすく表現したいとき。
一見してモデルの処理内容がわかりにくいときは、複数のモデルに分けることで管理しやすくなります。
ここでは1つのワークスペースに存在するフィーチャクラスを1つのフィーチャクラスにマージする処理を、複数のワークスペースに対して行うためのモデルを作成します。
モデル作成の基礎
ツールボックスの追加方法
- ArcGIS Pro → [挿入] タブ → [ツールボックス] プルダウンを選択 → [新しいツールボックス] を選択します。
- [新しいツールボックス] 画面でフォルダーを選択 → [名前] にツールボックス名を入力して [保存] します。
ModelBuilderの表示方法
ArcGIS Pro → [解析] タブ → [ModelBuilder] ボタンをクリックしますと、空のジオプロセシング モデルが作成され、[ModelBuilder] タブが追加されます。
① ジオプロセシング ツールの追加方法
本手順では、[マージ] ツールを利用します。
[ModelBuider] タブ → [ツール] ボタンをクリックしますと、[ジオプロセシング] ウィンドウが表示されますので、必要なツールを選択してジオプロセシング モデルにドラッグ アンド ドロップします。② 反復ツールの追加方法
本手順では、[ワークスペースの反復] ツールなどを利用します。
[ModelBuider] タブ → [反復] ボタンをクリックしますと、メニューが表示されますので、必要な反復ツールを選択します。③ ユーティリティの追加方法
本手順では、[値の収集] ツールを利用します。
[ModelBuider] タブ → [ユーティリティ] ボタンをクリックしますと、メニューが表示されますので、必要なユーティリティ ツールを選択します。④ モデルの保存方法
- [ModelBuider] タブ → [名前を付けて保存] ボタンをクリックします。
- [モデルの保存] 画面にてツールボックスを選択 → モデルの名前を入力して [保存] します。
※[ModelBuider] タブ → [保存] でもモデルを保存することができます。この場合はモデルに任意の名前を付けることができませんので、[カタログ] ウィンドウよりモデルのプロパティを開いて名前を変更します。
補足 モデルの新規作成方法
[ModelBuider] タブ → [新規作成] ボタンをクリックしますと、モデルが新規作成されます。
手順
サブモデルの作成
- 「ModelBuilderの表示方法」 を参考に、サブモデルの作成を行います。
本手順においてのサブモデルでは、指定したワークスペース内のフィーチャクラスをマージする処理を行います。
「②反復ツールの追加方法」 を参考に、[フィーチャクラスの反復] ツールを配置します。
[フィーチャクラスの反復] を右クリック → [変数の作成] → [パラメーターから] → [ワークスペース、またはフィーチャ データセット] を選択します。
「③ユーティリティーの追加方法」 を参考に、[値の収集] ツールを配置します。
[FeatureClass] を選択して、[値の収集] ツールと接続します([入力の値] を選択します)。
「①ジオプロセシング ツールの追加方法」 を参考に、[マージ] ツールを配置します。
[出力値] ツールを選択して、[マージ] ツールと接続します([入力データセット] を選択します)。
サブモデルにおける入力データと出力データをモデル パラメーターに設定します。今回は [フィーチャクラスの反復]ツールの「ワークスペース、またはフィーチャ データセット」と [マージ] ツールの [出力データセット] をモデル パラメーターに設定します。
「ワークスペース、またはフィーチャ データセット」 を右クリックし、[パラメータ] を選択します。同様に [出力データセット] にも同じ操作を行います。
値の入力はメインモデルの方で行うため、入力の必要はありません。 - [ModelBuilder] タブにて [名前を付けて保存] しますと、[モデルの保存] 画面が表示されますので、モデル名(例:Submodel)を付けて保存します。
メインモデル作成
- 「ModelBuilderの表示方法」 を参考に、新しくメインモデル作成用のモデルを追加します。
[ModelBuilder] タブ → [新規作成] ボタンをクリックして、空のジオプロセシング モデルを作成します。 - [カタログ] ウィンドウからサブモデルをジオプロセシング モデルにドラッグし、サブモデルを配置します。
- 「②反復ツールの追加方法」 を参考に、[ワークスペースの反復] ツールを配置します。
[WorkSpace] を選択してサブモデルと接続します([ワークスペース、またはフィーチャ データセット] を選択します)。
- [ワークスペースの反復] ツールの [フォルダー] パラメーターや [マージ] ツールの [出力データセット] に対して値を設定します。今回は、[出力データセット] の名称にインライン変数を用いて、ワークスペースの反復で取得した [名前] 変数値を割り当てます。
[FeatureClass_Merge] をダブルクリックして、%名前% と入力しますとワークスペースの名前が出力フィーチャクラスに反映されます。
(例)merge_%名前% と入力しますと merge_<ワークスペースの名前>が出力フィーチャクラスに反映されます。
- [保存] をクリックして、[整合性のチェック] で問題がない場合は、モデルを [実行] します。
下図のように、ワークスペース (ファイル ジオデータベース) 内のフィーチャクラスがマージされ、個々のフィーチャクラスとして作成されます。
注意事項
※ ModelBuilder に関するお問い合わせにつきましては、関連情報の「サポートサービスのお問い合わせに関する留意事項」をご確認ください。
- 反復処理のツール(イテレーター)を複数個使用したいとき。
メタデータ
機能
種類
製品
バージョン