Przykład kodu makra poziomu aplikacji w języku C#

W przedstawionym przykładzie klasa Revit.DB.Geometry.XYZ służy do zdefiniowania położenia (przy użyciu współrzędnych X, Y, Z) notatki tekstowej, która zostanie dodana do pola tekstowego aktywnego widoku aktywnego dokumentu.

W środowisku IDE użyj przedstawionego poniżej kodu jako metody:

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();
}

Należy zauważyć, że ponieważ to makro poziomu aplikacji jest napisane w celu zmodyfikowania dokumentu, trzeba rozpocząć transakcję (t.Start ();) i zakończyć transakcję (t.Commit ();), aby zapewnić prawidłowe działanie makra.

Pole tekstowe wstawione przez makro

Wskazówka: Należy pamiętać, że przed próbą uruchomienia projektu w Menedżerze makr należy go zbudować w środowisku Revit macro IDE.