Revit API 创建带箭头的标注

 
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
public class cmd : IExternalCommand
{
    public Result Execute(ExternalCommandData cmdData, ref string msg, ElementSet elements)
    {
        UIDocument uiDoc = cmdData.Application.ActiveUIDocument;
        Document doc = uiDoc.Document;
        Selection sel = uiDoc.Selection;

        Transaction ts = new Transaction(doc, "http://revit.5d6d.com");
        ts.Start();

        XYZ xyzOrigin = sel.PickPoint();
        XYZ pt1 = sel.PickPoint();
        XYZ pt2 = sel.PickPoint();
        //
        XYZ baseVec = new XYZ(000);
        XYZ upVec = new XYZ(000);
        double dWidth = 0.16;
        TextAlignFlags textAlign = TextAlignFlags.TEF_ALIGN_LEFT | TextAlignFlags.TEF_ALIGN_TOP;

        TextNote textNote = doc.Create.NewTextNote(
            doc.ActiveView, xyzOrigin, baseVec, upVec, dWidth, textAlign
            , TextNoteLeaderTypes.TNLT_STRAIGHT_L, TextNoteLeaderStyles.LCS_ONE_SEG_LINE, pt1, pt2, "标注");

        ts.Commit();

        return Result.Succeeded;
    }
}
url:http://greatverve.cnblogs.com/p/TextNoteLeader.html
posted @ 2014-03-20 08:56  大气象  阅读(3327)  评论(2编辑  收藏  举报
http://www.tianqiweiqi.com