🌓
搜索
 找回密码
 立即注册

RevitAPI之如何创建风管

万联Revit开发 2018-3-21 22:03:14 73413

创建一般风管可以调用RevitAPI的函数Duct.Create:
Duct Create(Document document,Elementld systemTypeld,Elementld ductTypeld,
Elementld levelld, XYZ firstPoint, XYZ secondPoint) 

参数含义见下表。

参数

描述

Document

文档

systemTypeld

水暖电系统族的Id

ductTypeld

风管类型的Id

levelld

所在标高的Id

firstPoint

起点

secondPoint

终点


如果要创建风管,可以根据MEPSystemClassification 过滤出风管类型参数,然后使用Duct.Create创建。


代码如下:


public Duct CreateDuct(Document doc, ElementId levelId, MEPSystemClassification ductSystemType, ElementId ductTypeId, XYZ startPoint, XYZ endPoint)  

        {  

            ElementId systemTypeId = ElementId.InvalidElementId;  

  

            // 获取类型为SupplyAir的系统类型   

            var systemTypeFilter = new ElementClassFilter(typeof(MEPSystemType));  

            FilteredElementCollector systemTypes = new FilteredElementCollector(doc);  

            systemTypes = systemTypes.WherePasses(systemTypeFilter);  

            List<MEPSystemType> systypes = new List<MEPSystemType>();  

            foreach (MEPSystemType element in systemTypes)  

            {  

                if (element.SystemClassification == ductSystemType)  

                {  

                    systemTypeId = element.Id;  

                    break;  

                }  

            }  

            if (systemTypeId == ElementId.InvalidElementId)  

                throw new Exception("无法找到系统类型");  

  

            // 创建风管   

            using (Transaction transaction = new Transaction(doc))  

            {  

                transaction.Start("创建风管");  

                Duct duct = Duct.Create(doc, systemTypeId, ductTypeId, levelId, startPoint, endPoint);  

                transaction.Commit();  

                return duct;  

            }  

        }  


扫一扫

58963.jpg

0 回复

高级模式
游客
返回顶部