Python ツールボックスのツールの定義

ツールは *.pyt にクラスとして追加されます。各ツール クラスには、最低でも __init__ および execute メソッドが含まれている必要があります。オプションとして、getParameterInfoisLicensedupdateParameters、および updateMessages メソッドを使用して、ツールの動作をさらに制御することもできます。

ツール クラスを定義するためのメソッド

ツール メソッド

必須/任意

説明

__init__

必須

ツール クラスを初期化します。

getParameterInfo

オプション

ツールのパラメータを定義します。

isLicensed

オプション

ツールに実行するためのライセンスがあるかどうかを返します。

updateParameters

オプション

ツール ダイアログ ボックスでユーザがパラメータを変更するたびに呼び出されます。updateParameters が終了すると、ジオプロセシングは内部整合チェック ルーチンを呼び出します。

updateMessages

オプション

内部整合チェック ルーチンが終了すると呼び出されます。内部整合チェックで作成されたメッセージは、必要に応じて変更できます。

execute

必須

ツールのソース コード。

ツール クラスの __init__ の設定

ツール クラスの __init__ メソッドは、標準 Python クラスの初期化メソッドです。Python ツールボックスのツールでは、__init__ メソッドを使用してツールのプロパティ(ツールの labeldescription など)を設定します。ツールの名前は、クラス自体の名前によって設定されます(以下の例では、ツールの名前は CalculateSinuosity です)。

__init__ メソッドは、label や description などのツールのプロパティを設定します。以下の例では、CalculateSinuosity という名前のツールが作成されます。

class CalculateSinuosity(object):
    def __init__(self):
        self.label = "Calculate Sinuosity"
        self.description = "Sinuosity measures the amount that a river meanders within its valley, " + \
                           "calculated by dividing total stream length by valley length."

次のプロパティはツールの __init__ メソッドで設定できます。

プロパティ

説明

canRunInBackground

canRunInBackground が設定されていないか、True に設定されている場合、[ジオプロセシング オプション] ダイアログ内の現在の [バックグラウンド処理] 設定値がツールに適用されます。

False に設定すると、ツールが常にフォアグラウンドで実行され、[ジオプロセシング オプション] ダイアログ内の現在の [バックグラウンド処理] 設定が無効になります。

バックグラウンドでのカスタム ツールの実行の詳細

category

ツールが格納されているツールセットの名前。ツールセットは、ツールボックス内でツールを整理するための方法です。

description

ツールの説明。

label

ラベルはツールの(カタログ ウィンドウに表示される)表示名です。

stylesheet

ツールに使用するデフォルトのスタイルシートを変更します。設定しない場合、デフォルトのスタイルシートが使用されます。

関連トピック

5/10/2014