オブジェクト モデルでのアドオン操作

 
 
 

Softimage アドオンのパッケージング、インストール、およびアンインストールに、Autodesk Softimage SDK のオブジェクト モデルを使用できます。 この機能は、簡単なスクリプトまたはコンパイル済みライブラリ ファイルを介して使用できます。

また、v1.0 プラグインのデバッグに役立つスクリプト用コマンドもいくつか用意されています。 プラグイン マネージャで実行できるタスクの一部は、これらのコマンドでシミュレートできます。

スクリプティングを使用してアドオンをパッケージングするには

アドオンをパッケージングするには、PackageAddon コマンドを使用して、アドオン ディレクトリ全体(たとえば、¥myserver¥myworkgroup¥Addons¥MyParticleTool)をパッケージングする方法が簡単です。

また、Addon オブジェクトを作成し、項目をまとめて一度に追加する方法もあります。 このようにスクリプティングを介してアドオンのパッケージングを利用する基本ワークフローは、[アドオンのパッケージ]ダイアログからアドオンをパッケージングするのとほぼ同じです。

  1. XSIApplication.CreateAddon を使用して、オブジェクトへのポインタを取得します。

    set oAddOn = Application.CreateAddon
  2. 必要に応じて、カスタマイズのコンポーネントを追加します。 次のように Addon.AddItem を使用して、UI から追加できるアイテムと同じ種類のアイテムを追加することができます。

    oAddOn.AddItem siToolbarAddonItemType, "MyToolbar" 
    		oAddOn.AddItem siScriptCmdAddonItemType, "myCmd"
    ヒント:

    アドオン作成スクリプトをより汎用的にするには、システム情報を使用してユーザ パスを取得します。

    sPath = InstallationPath( siUserPath )
    		oAddOn.AddItem siOtherAddonItemType, sPath & "\Data\MyHelpPage.html"
    注:

    Addon.AddItem メソッドを siOtherAddonItemType と併用することも、Addon.AddOtherItem·メソッドを単独で使用することもできます。異なる点は、AddOtherItem ではデスティネーション ディレクトリを指定できますが、AddItem では指定できないことです。 次のように入力すれば、最後の行と同等になります。

    oAddOn.AddOtherItem sPath & _
    		"\Data\MyHelpPage.html", "Help"
  3. アドオン用のデフォルト インストール パスを指定する場合、次のように Addon.DefaultInstallationPath·プロパティを使用してください。

    oAddOn.DefaultInstallationPath = siFactoryPath
    		oAddOn.SubDirectory = "ToxicTools"
  4. 項目の追加を終えたら、Addon.Save メソッドを使用して、新規の .xsiaddon ファイルを保存します。

    oAddOn.Save sPath & "¥addons¥myAddOn.xsiaddon"

スクリプティングを介してアドオンパッケージをインストールするには

  • XSIApplication.InstallAddon メソッドを使用する方法があります。このメソッドでは、.xsiaddon ファイルのフルパス、およびアドオンのインストール先(Addons¥InstalledAddons パス。「siInstallationPath」を参照)を取得します。

    ヒント:

    インストール先は以下のいずれかになります。

    • 4 または siAddonPath(Add-on ディレクトリ パス)

    • 5 または siUserAddonPath(User Add-on ディレクトリ パス)

    • 6 または siWorkgroupAddonPath(Workgroup Add-on ディレクトリ パス)

    ' Install myAddon.xsiaddon in the workgroup
    		sPath = InstallationPath( siUserPath )
    		InstallAddon "\myAddon.xsiaddon", siWorkgroupAddonPath
    注:

    XSIApplication オブジェクトはネイティブ オブジェクトであり、Softimage の実行インスタンスを表すため、Application オブジェクトを Softimage 内で明示的に指定する必要はありません。

オブジェクト モデルを使ってアドオン パッケージをアンインストールするには

  • UnInstallAddon (XSIApplication)メソッドを使用する方法があります。このメソッドでは、.xsiaddon ファイルのインストール先のフルパス(Addons¥InstalledAddons·パス)を取得します。

    ' Uninstall the add-on by name
    		sPath = InstallationPath( siWorkgroupAddonPath )
    		UninstallAddon sPath & "¥myAddon.xsiaddon"

単一アドオン ライブラリをロードし、アンロードするには

  • UnloadAddonLib·コマンドを使用して、指定した単一の v1.0 プラグイン ライブラリをメモリからアンロードすることができます。これにより、開発環境内のライブラリを容易に修正し、再コンパイルした後、ReloadAddonLib コマンドを使って再びロードすることができます。

これらのコマンドは両方とも、唯一の引数としてライブラリ ファイルのフル パスを取りますが、値は返しません。

すべてのアドオンのライブラリを一括してロードし、アンロードするには

  • UnloadAllAddonLibs コマンドを使用して、現在ロードされている v1.0 プラグイン ライブラリをメモリからすべてアンロードすることができます。これにより、開発環境内のライブラリを容易に修正し、再コンパイルした後、ReloadAllAddonLibs コマンドを使って再びロードすることができます。

    これらのコマンドは、引数を取らず、値を返しません。

COM(ActiveX)DLL をメモリからフラッシュするには

  • UnloadAllCOMLibs·コマンドを使用して、未使用の ActiveX ライブラリを明示的に解放することができます。

    これらのコマンドは、引数を取らず、値を返しません。