Esempio di codice macro a livello di applicazione in C#

Nell'esempio, la classe Revit.DB.Geometry.XYZ viene utilizzata per definire la posizione (con le coordinate X, Y, Z) di una nota di testo che la macro aggiungerà alla casella di testo della vista attiva del documento corrente.

In IDE, utilizzare il seguente codice per il metodo:

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

Poiché questa macro a livello di applicazione viene scritta per modificare un documento, è necessario avviare una transazione (t.Start();) e terminarla (t.Commit();) affinché venga eseguita correttamente.

La casella di testo viene posizionata dalla macro

Suggerimento: Assicurarsi di generare il progetto in Revit macro IDE prima di eseguirlo in Gestione macro.