源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

使用revit api画垂直于风管的风管示例

  • 时间:2022-04-05 15:24 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:使用revit api画垂直于风管的风管示例
[u]复制代码[/u] 代码如下:
/// <summary> /// 选择风管与风管外一点,画与风管垂直的风管。 /// </summary> [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;         UIApplication uiApp = cmdData.Application;         Document doc = uiDoc.Document;         Selection selection = uiDoc.Selection;         Transaction ts = new Transaction(doc, "http://www.1sucai.cn");         ts.Start();         //得到一种风管类型         DuctType ductType = null;         FilteredElementCollector collector = new FilteredElementCollector(doc);         collector.OfClass(typeof(DuctType));         foreach (Element el in collector.ToElements())         {             ductType = el as DuctType;             break;         }         //         Reference refDuct = selection.PickObject(ObjectType.Element, "选择一根风管:");         Duct duct = doc.GetElement(refDuct) as Duct;         XYZ xyz = selection.PickPoint();//选择一点         LocationCurve lCurve = duct.Location as LocationCurve;         IntersectionResult interResult = lCurve.Curve.Project(xyz);//点在直线上的投影         if (interResult != null)         {             doc.Create.NewDuct(xyz, interResult.XYZPoint, ductType);         }         ts.Commit();         return Result.Succeeded;     } }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部