このドキュメントでは、Python を使用したアドインの作成方法を理解するために必要な概念を説明します。
Python アドイン ウィザード
アドインの開発を簡単に行うために、Python アドイン ウィザードを使用してカスタマイズのタイプを指定することをお勧めします。Python アドイン ウィザードは、アドインの動作に必要なファイルとフォルダを自動的に作成することで、開発時間を短縮してエラーが発生する可能性を小さくします。
Python アドイン ウィザードをダウンロードします。
ダウンロード ファイルは、ウィザードをサポートするために必要なすべてのファイルを含む圧縮された ZIP ファイル(*.zip)です。ウィザードを使用するには、圧縮ファイルの内容をフォルダに展開して、addin_assistant.exe という名前の実行可能ファイルを bin フォルダに配置する必要があります。この実行可能ファイルをダブルクリックすると、ウィザードが起動されます。Python アドイン ウィザードの使用例は、アドインを作成するトピックで説明しています。
ファイルとフォルダの構造
アドインは、扱いやすいように 1 つの圧縮ファイルにパッケージ化されたファイルとフォルダのコレクションです。ユーザと ESRI ArcGIS Add-In Installation Utilityがアドインを簡単に識別できるように、「.esriaddin」の拡張子が付けられています。たとえば、アドインを Windows エクスプローラ、Web サイト、または電子メール内でダブルクリックすると、Add-In Installation Utilityが自動的にアドインをコンピュータにインストールし、事前設定されたフォルダに配備します。
アドイン アーカイブのルート レベルには、config.xml ファイルが配置されています。このファイルはアドインを説明する情報を含み、カスタマイズを宣言します。このファイルは、[保存] ボタンを押したときに Python アドイン ウィザードによって作成され、アドインを表す情報(ArcGIS 製品、キャプション、ツールチップ、ヘルプ情報、画像、レイアウトの詳細など)をすべて含みます。
アドインには Install フォルダも用意されます。Install フォルダの主な目的は、アドインの Python スクリプト(動作する部分)を格納することです。たとえば、ボタンは構成ファイルで宣言されますが、ボタンのカスタム動作は関連付けられた Python スクリプトで定義されます。
Install フォルダにはフォルダおよびファイルを追加作成できます。これらのファイルとフォルダは、データをアドインの一部として含める場合に役立ちます。このデータには、レイヤ ファイル、ツールボックス、*.xml ファイルなどを含めることができます。インストール場所内に配置したデータにアクセスするには、組み込み関数の __file__ を利用します。次の例は、インストール フォルダ内に作成した data フォルダのレイヤ ファイルにアクセスする方法を示しています。
eq_layer = os.path.join(os.path.dirname(__file__), r'data\earth_quakes.lyr')
宣言されるほとんどのアドイン タイプには、グラフィックスが関連付けられています。ウィザードを利用して入力されたすべてのグラフィックスは、構成ファイル内で参照され、アーカイブのルート レベルにある Images フォルダにコピーされます。
次の図は、アドイン ファイル(*.esriaddin)のファイルおよびフォルダ構造を示しています。
makeaddin.py
makeaddin.py Python ファイルは、Python アドイン ウィザードによって作成されるユーティリティ スクリプトで、プロジェクト フォルダ内のファイルとフォルダを圧縮されたアドイン ファイルにパッケージ化するために使用されます。このファイルをダブルクリックすると、アドイン ファイルが作成されます。アドインに変更を加えるごとに、このスクリプトを実行して最新の更新を含むアドイン ファイルを再パッケージ化する必要があります。
事前設定されたフォルダの場所
アドインは ArcGIS for Desktop を起動したときに、ユーザごとまたはデスクトップごとの事前設定されたフォルダで自動的に検出されます。以下、例です。
- Vista/7: C:\Users\<ユーザ名>\Documents\ArcGIS\AddIns\Desktop10.1
- XP: C:\Documents and Settings\<ユーザ名>\My Documents\ArcGIS\AddIns\Desktop10.1
アドインは、ESRI ArcGIS Add-In Installation Utilityと [アドイン マネージャ] ダイアログ ボックスを使用して、自動的に追加および削除されます。ArcGIS for Desktop 内の [アドイン マネージャ] ダイアログ ボックスでも、独自の事前設定されたフォルダを追加してネットワーク共有にすることができます。
また、アドインは Install フォルダの内容を自動的に一時フォルダに解凍します。以下、例です。
- Vista/7: C:\Users\<ユーザ名>\AppData\Local\ESRI\Desktop10.1\AssemblyCache
- XP: C:\Documents and Settings\<ユーザ名>\Local Settings\Application Data\ESRI\Desktop10.1\AssemblyCache
アドイン フレームワークは、アドインがシステムからインストール解除されていることを検出すると、このデータを自動的に削除します。