搜索
您的当前位置:首页正文

Revit二次开发,在墙上创建门窗

来源:步旅网

创建门窗的方法大致相同,这里我们以创建门为例。
先用收集器获取我们想要创建门的族类型,然后在指定的墙上创建门实例。

 /// <summary>
        /// 创建门
        /// </summary>
        /// <param name="wall"></param>
        /// <param name="level"></param>
        /// <param name="point"></param>
        public void CreateDoor(Wall wall, Level level, XYZ point)
        {
            //获取门
            FamilySymbol fmSymbol = null;//门
            FilteredElementCollector elements = new FilteredElementCollector(document);
            List<FamilySymbol> familySymbols = elements.OfCategory(BuiltInCategory.OST_Doors).OfClass(typeof(FamilySymbol)).Cast<FamilySymbol>().ToList();
            foreach (FamilySymbol item in familySymbols)
            {
                if (item.Name.Equals("750 x 2000mm"))
                {
                    fmSymbol = item;
                 
                    break;
                }
            }
            FamilyInstance fmInstance = document.Create.NewFamilyInstance(point, fmSymbol, wall, level,
                Autodesk.Revit.DB.Structure.StructuralType.NonStructural);
          
        }

因篇幅问题不能全部显示,请点此查看更多更全内容

Top