今回は、Design Automation for Revit 用に実装したアドインをローカルにインストールされているデスクトップ版 Revit でデバッグするためのツールをご紹介します。
このツールは、デスクトップ版 Revit のアドイン(外部コマンド)の Visual Studio プロジェクトとして GitHub にて公開されております。
下記のページから Visual Studio プロジェクトをダウンロードするか、Git for Windows をインストールしてコマンドプロンプトから git clone コマンドを通じて入手してご利用いただけます。
git clone https://github.com/Autodesk-Forge/design.automation-csharp-revit.local.debug.tool.git
前提条件
- Forge アカウントは、Design Automation for Revit をご利用いただく際に必要ですが、このツールをお試し頂くだけでしたら必要ありません。
- Visual Studio 2019 以降がインストールされていることと、.NET Framework と C# の知識が必要です。
- Revit 2018 ~ 2021でいずれかのバージョンがインストールされていること。
- Design Automation for Revit 用に実装したアドインの Visual Studio プロジェクト。
ビルド手順
- DesignAutomationHandler ソリューションを開きます。各 Revit のバージョン毎にプロジェクトがありますので、デバッグしたいアドインの Revit バージョンのプロジェクトを展開します。現在、Design Automation for Revit は Revit 2018, 2019, 2020, 2021 に対応しております。
- プロジェクトの参照を展開すると、DesignAutomationBridge ライブラリがインストールされていない状態となっているため、NuGet パッケージマネージャーを開いて、Design Automation Bridge for Revit をインストールします。
※ 下記のように[復元]ボタンが表示されている場合は、押下して再インストールすることもできます。 - DesignAutomationHandler 20xx プロジェクトをビルドします。
ビルド後イベントのスクリプトで、自動的にリソースが %APPDATA%\Autodesk\Revit\Addins\20xx フォルダ配下にコピーされます。 - 同じフォルダに Design Automation for Revit 用に作成したアドインとその関連アセンブリ、アドインマニフェストファイルを配置します。
DesignAutomationHandler アドインは、2つ以上のアドインを同時にテスト・デバッグすることはできませんのでご注意ください。また、DesignAutomationBridge.dll アセンブリも同じフォルダに配置されているか確認してください。 - Design Automation for Revit 用に作成したアドインの Visual Studio プロジェクトを開き、プロパティの [デバッグ] タブの [外部プログラムの開始] プロパティで Revit.exe ファイルのパスを指定します。
利用手順
ここでは、Design Automation for Revit 2021 向けに作成した CountIt アドインをサンプルとして利用する手順をご紹介します。
- Design Automation for Revit 用に作成したアドイン(ここでは CountIt アドイン)を Visual Studio のデバッグモードで実行して Revit を起動します。
- Design Automation for Revit のアドインで使用する Revit プロジェクトファイルを開きます。
CountIt アドインでは、プロジェクトに配置されている要素の要素数をカテゴリ別に集計するシンプルなアドインのため、任意の Revit プロジェクトでお試し頂けます。 - Design Automation の Activity で入力値に JSON パラメータを定義している場合は、WorkItem で JSON データを渡すことを想定されているはずです。その場合は、.json ファイルを作成して、開いている Revit プロジェクトファイルが配置されているフォルダと同じ場所に配置します。
例えば、Activity で JSON の入力値パラメータを CountItParams という名前で定義している場合は、CountItParams.json というファイル名になります。
CountItParams.json では、下記のように、どの要素カテゴリをカウントするかを True / False で指定します。 - Revit のアドインタブにある[外部ツール]から[DesignAutomationHandler]コマンドを実行します。すると、自動的に CountIt アドインが実行され、処理の終了後に通知ダイアログが表示されます。
- カウント結果は、result.txt というファイル名で CountIt アドインのコードで指定している場所に保存されます。基本的には、開いている Revit プロジェクトファイルを同じフォルダ配下に保存されます。
- デバッグモードで起動している場合は、CounIt アドインの Visual Studio でブレークポイントを設定すれば、処理のデバッグに入ることができます。
今回、利用手順で使用した CountIt アドインの Visual Studio プロジェクトは、こちらからダウンロードしてご利用頂けます。
なお、Deisng Automation API for Revit につきましては、Autodesk University 2020 の下記のクラスでも詳しく解説しております。英語クラスに加え、日本語クラスを設けておりますので、ご興味ある方は、ぜひご視聴ください。
- SD473692: Design Automation for Revit: Basics and beyond
- SD473594: Design Automation for Revit: 基礎から応用へ
By Ryuji Ogasawara
コメント