此章節要教學的是,如何將寫好的外掛製作成按鈕,讓人可輕鬆執行,這裡會學習到的是以下…
- Visual C# 程式撰寫Revit的UI外掛-FirstButton
- 使用Add-In Manager製作addin檔
這裡先提供稍後要製作按鈕的圖示,請先另存圖片下列綠色圖示,放置到你要讀取圖片的位置,下方提供的程式碼我是將它放在專案內。
Visual Studio 新增項目進行UI程式撰寫
使用上一章節的專案新增項目
通常 Visual C# 項目 會預設為類別,如果太多選項找不到,可以先選擇左方的程式碼,再選擇類別。接著將底下的Class取名,在此我取的Class名稱為FirstButton,如果你不是用這名稱的話,稍後提供的程式碼記得更改為你取的Class名稱。
VS環境建置完成,開始寫程式嘍~ 底下有提供程式碼,可以直接整個複製貼上,留意如果專案名稱不同的,記得要修改為自己的專案名稱,另一是輸出的dll檔與圖片路徑也記得要修改。
using Autodesk.Revit.UI;
using System;
using System.Windows.Media.Imaging;
namespace FirstPlugin
{
public class FirstButton : IExternalApplication
{
public Result OnStartup(UIControlledApplication app)
{
// 要執行的dll與按鈕圖片檔案路徑
string firstBtnDll = @"C:\Prj\Revit\FirstPlugin\bin\Debug\FirstPlugin.dll";
string picPath = @"C:\Prj\Revit\FirstPlugin\FirstButton.png";
// 創建一個新的工具列
string tabName = "Revit API";
app.CreateRibbonTab(tabName);
// 添加面板
RibbonPanel firstBtnPanel = app.CreateRibbonPanel(tabName, "First Button");
// FirstBtn按鈕創建
PushButton firstBtn = firstBtnPanel.AddItem(new PushButtonData("First_Button", "FirstPlugin", firstBtnDll, "FirstPlugin.Class1")) as PushButton;
// 給按鈕添加圖片
Uri firstBtnImage = new Uri(picPath);
BitmapImage firstBtnLargeImage = new BitmapImage(firstBtnImage);
firstBtn.LargeImage = firstBtnLargeImage;
return Result.Succeeded;
}
public Result OnShutdown(UIControlledApplication app)
{
return Result.Succeeded;
}
}
}
最後到VS的建置中重建方案(或建置方案),輸出顯示為成功即可,記得VS輸出dll的路徑位置。
接著就是要透過Add-In Manager製作addin檔,然後將外掛按鈕載入到Revit中使用。
底下這個我說明一下
- Save checked items to Addins folder:路徑會輸出至C:\ProgramData\Autodesk\Revit\Addins\2014
- Save checked items to Local .addin file:路徑會輸出至同dll檔資料夾中
因為稍後會將dll與addin兩個檔案一起搬移,讓Revit啟動此外掛,所以我將addin生成到同dll資料夾中
最後,我們將輸出的dll與addin檔複製到C:\ProgramData\Autodesk\Revit\Addins\20XX貼上,Revit即會詢問你是否要將外掛載入,載入後即可使用。