C# のアプリケーションレベル マクロ コード例

例では、Revit.DB.Geometry.XYZ クラスは、文字注記の位置(X、Y、Z 座標)を設定するために使用されます。マクロはアクティブなドキュメントのアクティブなビューのその位置にテキスト ボックスを追加します。

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 マクロ IDE でそのプロジェクトを構築してください。