Revit二次开发之“创建直线”并显示出来

直接用NewLine();显示不了,需要一个草图平面。
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
// [Journaling(JournalingMode.NoCommandData)]
public   class  NewLine : IExternalCommand
{
    
public  Result Execute(ExternalCommandData revit,  ref   string  message, ElementSet elements)
    {

        Document doc 
=  revit.Application.ActiveUIDocument.Document;
        
// 需要启动一个事务
        Transaction tr  =   new  Transaction(doc,  " test " );
        tr.Start();

        XYZ pt1 
=   new  XYZ( 5 5 0 );
        XYZ pt2 
=   new  XYZ( 5 10 0 );

        Line line 
=  doc.Application.Create.NewLine(pt1, pt2, true );
        XYZ origin 
=   new  XYZ( 0 0 0 );
        XYZ normal 
=   new  XYZ( 0 0 1 );

        Plane plane 
=  doc.Application.Create.NewPlane(pt2.CrossProduct(pt1), pt1); // 平面
        SketchPlane skplane  =  doc.Create.NewSketchPlane(plane); // 草图平面
        ModelCurve modelcurve1  =  doc.Create.NewModelCurve(line, skplane); // 模型曲线

        tr.Commit();

        
return  Autodesk.Revit.UI.Result.Succeeded;
    }
}
from: http://revit.5d6d.com/thread-913-1-4.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值