Python ラスター関数は、ArcGIS 内でのラスター データの処理および解析に使用できるカスタム スクリプトです。 ArcGIS には組み込みラスター関数が多数用意されていますが、特定の解析要件によってはカスタム実装が必要になる場合があります。 これらのカスタム関数は Python で開発され、ラスター関数チェーンに統合して、標準のラスター解析の解析機能を拡張することができます。
ArcGIS Enterprise 11.5 では、カスタム Python ラスター関数の登録、デプロイメント、管理を効率化する新しい管理 API が導入されました。 この API は、管理者がエンタープライズ環境全体でカスタム関数を管理するための簡単なインターフェイスを提供します。
この管理 API の利用の詳細については、ArcGIS Enterprise ドキュメントをご参照ください。
カスタム Python ラスター関数のパッケージ化に関する要件
ArcGIS Enterprise でカスタム Python ラスター関数を正常にデプロイするには、次の前提条件が満たされていることを確認してください。
- 必須ファイル
- ラスター関数テンプレート (.rft.xml) - ラスター関数チェーンを定義し、関連付けられた Python スクリプトを参照します。
- Python スクリプト (.py) - カスタム ラスター関数の実装が含まれます。
どちらのファイルもデプロイメント パッケージに含める必要があります。
- 命名規則
- 一貫性 - Python スクリプトの名前は、ラスター関数テンプレート ファイルで指定された名前と一致している必要があります。
- 有効な文字 - ファイル名は文字で始まる必要があり、文字、数字、アンダースコアを使用できます。
注意:
数字から始まる名前には、特殊文字を使用しないでください。
- ファイル パスの仕様
ラスター関数テンプレートでは、接頭辞 [functions] の後に相対パスを使用して、Python スクリプトを参照します。 例:
[functions]Custom\Subfolder\script_name.py
この構文により、ArcGIS は指定された関数ディレクトリー内でスクリプトを特定できます。
- ディレクトリー構造
ラスター関数テンプレートで指定したファイル パス ディレクトリーに従って、サブフォルダーのファイルを整理します。 次に例を示します。
"PythonModule": "[functions]Custom\\Tree_Health.py"
この zip ファイルの例では、rft ファイルと Python ファイルが含まれている必要があります。

フォルダー コンテンツの概念図。 - デプロイメント パッケージ
.rft.xml ファイルと .py ファイルを含むサブフォルダーを .zip アーカイブに圧縮します。 ArcGIS Enterprise 11.5 で導入された管理 API を使用して、このパッケージを登録およびデプロイできます。
ArcGIS Enterprise でのカスタム Python ラスター関数のデプロイ
ArcGIS Enterprise でカスタム Python ラスター関数をデプロイするには、次の手順を実行します。
- Administrator API ディレクトリーへのアクセス
- ArcGIS Enterprise Administrator API ディレクトリーに移動します。
- 管理権限を持つアカウントを使用してサイン インします。
- カスタム ラスター関数の登録
- Administrator API ディレクトリーで、[サービス] → [タイプ] の順に移動します。
- [カスタム ラスター関数] を選択します。
- [登録] ボタンをクリックします。
- [ファイルの選択] オプションを使用して、カスタム ラスター関数を含む .zip ファイルを参照および選択します。
- [登録] をクリックして登録プロセスを完了します。
- 登録の確認
- 登録が正常に完了すると、カスタム ラスター関数は Administrator API ディレクトリーの [登録されたカスタム ラスター関数] に表示されます。
- ポータルで [登録された関数] にアクセスします
- ArcGIS Enterprise ポータルにサイン インします
- [マイ コンテンツ] または [組織] に移動し、登録されたカスタム ラスター関数テンプレート アイテムを特定します。
- カスタム ラスター関数の利用
- 登録されたカスタム ラスター関数が、システムが提供するラスター関数テンプレートと同様に使用できるようになりました。
- [ラスター関数エディター] などのツールを使用して、ラスター処理ワークフローに組み込むことができます。