C# 應用程式層級巨集程式碼範例

在 IDE 中,對該方法使用下列程式碼:

public
void MyFirstMacroAppCS(){
Autodesk.Revit.DB.XYZ
baseVec = Application.Create.NewXYZ(1.0, 0.0, 0.0);Autodesk.Revit.DB.XYZ
upVec = Application.Create.NewXYZ(0.0, 0.0, 1.0); Autodesk.Revit.DB.XYZ
origin = Application.Create.NewXYZ(0.0, 0.0, 0.0);
Autodesk.Revit.DB.TextAlignFlags align
= Autodesk.Revit.DB.TextAlignFlags.TEF_ALIGN_LEFT | Autodesk.Revit.DB.TextAlignFlags.TEF_ALIGN_TOP;
string
strText = "My First Macro, App level, C#!"; double
lineWidth = 4.0 / 12.0;
Autodesk.Revit.DB.View
pView = ActiveUIDocument.Document.ActiveView;Autodesk.Revit.DB.Transaction
t = new Autodesk.Revit.DB.Transaction(ActiveUIDocument.Document, "NewTextNote");t.Start();ActiveUIDocument.Document.Create.NewTextNote(pView,
origin, baseVec, upVec, lineWidth, align, strText);
t.Commit();
}

請注意,由於這個應用程式層級巨集是撰寫用於修改文件,因此必須開始一個處置 (t.Start();) 並結束該處置 (t.Commit();),巨集才能正確執行。

在此範例中,Revit.DB.Geometry.XYZ 類別將用於定義文字註釋的位置 (以 X、Y、Z 座標),該文字註釋表示巨集會加入文字方塊到作用中文件的作用中視圖。

已放置巨集的文字方塊

提示: 請確定先在 Revit VSTA IDE 中建立專案,然後再嘗試從巨集管理員加以執行。