ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • ヘルプ
  • Sign Out
ArcGIS Desktop

ArcGIS Online

組織のマッピング プラットフォーム

ArcGIS Desktop

完全なプロ仕様の GIS

ArcGIS Enterprise

エンタープライズ GIS

ArcGIS Developers

位置情報利用アプリの開発ツール

ArcGIS Solutions

各種業界向けの無料のテンプレート マップおよびテンプレート アプリケーション

ArcGIS Marketplace

組織で使えるアプリとデータを取得

  • ドキュメント
  • サポート
Esri
  • サイン イン
user
  • マイ プロフィール
  • サイン アウト

ArcMap

  • ホーム
  • はじめに
  • マップ
  • 解析
  • データ管理
  • ツール
  • エクステンション

モデルへのモデルの統合

  • 大規模で複雑なモデルの単純化
  • モデル反復子の高度な使用

モデル ツールはジオプロセシング フレームワークに完全に統合され、すべてのシステム ツールまたはスクリプト ツールと同様に使用できます。他のすべてのジオプロセシング ツールと同様に、モデル ツールはダイアログ ボックスや Python スクリプトから実行することができ、別のモデルに追加して実行することもできます。

モデル ツールを別のモデルに追加して実行するという考え方は、サブモデル、ネストされたモデル、またはモデル内のモデルと呼ばれます。このようなモデル階層を使用する主な理由は、大規模で複雑なモデルを単純にすること、およびモデル 反復子をより高度に利用することの 2 つです。

大規模で複雑なモデルの単純化

モデル ツールを別のモデルに埋め込むことで、大規模で複雑なプロセスを、管理しやすく、別のモデルまたはスクリプトで再利用しやすい、小さなモデル単位に分割することができます。プロセス全体を再実行することなく、これらのサブモデルだけを変更および再実行できます。たとえば、あるサブモデルでエラーが発生した場合は、エラーが発生したモデルだけを修正し、プロセス全体をもう一度実行する代わりに、そのモデルだけを再実行します。

大きなモデルから小さいサブモデルへの分割
1 つの大きなモデルを 4 つのサブモデルと 1 つのメイン モデルに分割可能

上の図に示すモデルは、4 つのサブモデルと 1 つのメイン モデルに分割できます。小さいサブモデルをメイン モデルに追加して、最終プロセスに接続できます。サブモデルを別のモデルに追加すると、サブモデルの最終出力が出力変数として追加されます。

メイン モデルへのサブモデルの追加

モデル反復子の高度な使用

モデル ツールを別のモデルに埋め込む場合は、モデル 反復子のより高度な利用も可能です。ワークフローでモデルの反復処理が必要な場合、2 回以上の実行が必要なツールまたはプロセスは、各ワークフローで一度しか実行する必要がないツールまたはプロセスと分離する必要があります。この場合、複数回の実行が必要なすべてのツールをモデル反復子とともに 1 つのモデル内に配置して、サブモデルとして使用します。1 度しか実行する必要がないツールはメイン モデルに配置して、反復処理を行うサブモデルをメイン モデルから呼び出します。

次の例は、ジオデータベースからの入力セットをマージする自動化されたワークフローです。[マージ (Merge)] ツールは、複数のフィーチャクラスをマージ対象の入力として受け取りますが、特定のワークスペースにあるすべてのフィーチャクラスを自動的に追加する手段はありません。この場合は、[フィーチャクラスの反復 (Iterate Feature Classes)] モデル反復子と [値の収集 (Collect Values)] ツールを組み合わせて、ワークスペースにあるすべてのフィーチャクラスを読み取り、これらを 1 つの変数に収集することができます。これらの 2 つのプロセスは、複数回実行する (反復処理を行う) 必要があるためサブモデルに追加します。[マージ (Merge)] ツールは、1 度しか実行する必要がないためメイン モデルに追加して、[フィーチャクラスの反復 (Iterate Feature Classes)] と [値の収集 (Collect Values)] を追加したサブモデルの出力に接続します。

メイン モデルとサブモデル

次に、上のワークフロー全体を作成する方法を、手順ごとに説明します。使用されている用語と手法については、「ModelBuilder の基本用語」をご参照ください。

  1. メイン モデルとサブモデルの 2 つのモデルを作成します。サブモデルはメイン モデル内にネストします。メイン モデルに [マージ (Merge)] ツールを追加し、サブモデルに [フィーチャクラスの反復 (Iterate Feature Classes)] 反復子と [値の収集 (Collect Values)] ツールを追加します。
  2. サブモデルで、マージ対象のフィーチャクラスを含むワークスペースを [フィーチャクラスの反復 (Iterate Feature Classes)] 反復子の入力として設定します。ポイント フィーチャクラスだけを反復処理する場合は、[フィーチャクラスの反復 (Iterate Feature Classes)] の [フィーチャ タイプ] パラメーターを [POINT] に設定します。
    反復子の設定
  3. [フィーチャクラスの反復 (Iterate Feature Classes)] の出力変数「出力フィーチャクラス」を [値の収集 (Collect Values)] ツールに接続して、ワークスペース内の各ポイント フィーチャクラスのパスを反復処理して収集します。
  4. 入力ワークスペース変数と [値の収集 (Collect Values)] ツールの出力を、モデル パラメーターとして設定します。入力ワークスペース変数の「入力データセット」の名前を、変数の内容を表す、わかりやすい名前に変更します。
    サブモデルの設定
  5. サブモデルを保存して閉じ、メイン モデルにプロセスとして追加します。
  6. サブモデルをメイン モデルに追加すると、サブモデルのパラメーターが変数として自動的にメイン モデルに追加されます。
    サブモデルの追加
  7. サブモデルの出力変数を、[マージ (Merge)] ツールの [入力データセット] として設定します。[マージ (Merge)] ツールの出力に、有効なパスが設定されていることを確認します。
  8. サブモデルの入力変数の名前を「入力データセット」に変更し、[マージ (Merge)] ツールの出力変数を「マージ出力」に変更します。「入力データセット」変数と「マージ出力」変数の両方を、モデル パラメーターとして設定します。
    ネストされたモデル

ArcGIS Desktop

  • ホーム
  • ドキュメント
  • サポート

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Esri について

  • 会社概要
  • 採用情報
  • Esri ブログ
  • ユーザ カンファレンス
  • デベロッパ サミット
Esri
ご意見・ご感想をお寄せください。
Copyright © 2021 Esri. | プライバシー | リーガル