Revit二次開發—建立文字註釋(TextNote)
Revit API 在2016版本及以後對建立文字註釋做了改動
新版本建立方法:
using (Transaction tran = new Transaction(RevitDoc, "Creating a Text note")) { XYZ origin = new XYZ(10, 10, 0); ElementId defaultTypeId = RevitDoc.GetDefaultElementTypeId(ElementTypeGroup.TextNoteType); tran.Start(); TextNote note = TextNote.Create(RevitDoc, someView.Id, origin, "Text Note", defaultTypeId); note.AddLeader(TextNoteLeaderTypes.TNLT_STRAIGHT_L); tran.Commit(); }
using (Transaction tran = new Transaction(RevitDoc, "Creating a Text note")) { XYZ origin = new XYZ(10, 10, 0); double width = 3.0 / 12.0; // feet on paper TextNoteOptions options = new TextNoteOptions(); options.HorizontalAlignment = HorizontalTextAlignment.Center; options.TypeId = RevitDoc.GetDefaultElementTypeId(ElementTypeGroup.TextNoteType); tran.Start(); TextNote note = TextNote.Create(RevitDoc, someView.Id, origin, width, "Text Box Content", options); tran.Commit();
舊版本建立方法:
文字註釋的建立方法:
通過以下方法可以建立文字註釋。
①Autodesk.Revit.Creation.Document NewTextNote( View pView,XYZ origin,XYZ baseVec, XYZ upVec, double lineWidth, TextAlignFlags textAlign, string strText)
其中,pView是文字註釋所要建立在的檢視,origin是其原點,baseVec和upVec決定了其水平和垂直方向,lineWidth是線寬,textAlign是文字的對齊方式,strText是文字內容。
② Autodesk.Revit.Creation.Document. NewTextNote( View pView, XYZ origin, XYZ baseVec,XYZ upVec,double lineWidth,TextAlignFlags textAlign, TextNoteLeaderTypes leaderType, TextNoteLeaderStyles leaderStyle,XYZ leaderEnd,XYZ leaderElbow,string strText)
其中,pView是文字註釋所要建立在的檢視,origin是其原點,baseVec和upVec決定其水平和垂直方向,lineWidth是線寬,textAlign是文字的對齊方式,leaderType是箭頭的型別(直線型或弧形),leaderStyle是箭頭的樣式(一段直線型、一段弧線型或兩段直線型),leaderEnd是箭頭的端點,leaderElbow是箭頭的彎曲點,strText是文字內容。