Autodesk.Revit.DB.ColumnAttachmentCutStyle是Revit API中的一个枚举类型,用于定义楼板与柱子交叉处剪切的类型。枚举类型有以下成员:
没有剪切。楼板会整齐地停在柱子旁边。
仅剪切在梁顶上的柱头。这意味着,如果柱顶在梁顶以下,那么原始柱形将保留。如果柱头在梁顶以上,则保留部分柱头。
同时剪切柱顶和梁顶上的柱头。这意味着在梁顶以上保留部分柱头,并在梁顶以下剪切柱子。
剪切整个柱子,楼板会完全覆盖柱子。
以下示例演示如何设置楼板与柱子的交叉点剪切类型:
// 获取文档中的第一个楼板
Floor floor = new FilteredElementCollector(doc)
.OfCategory(BuiltInCategory.OST_Floors)
.OfClass(typeof(Floor))
.First() as Floor;
// 获取楼板的标高
Level level = doc.GetElement(floor.LevelId) as Level;
// 获取文档中的第一个柱子
FamilyInstance column = new FilteredElementCollector(doc)
.OfCategory(BuiltInCategory.OST_Columns)
.OfClass(typeof(FamilyInstance))
.First() as FamilyInstance;
// 设置交叉点剪切类型为LevelHeadsOnly
floor.StructuralColumnAttachmentCutType = ColumnAttachmentCutStyle.LevelHeadsOnly;
// 停用柱头承载功能
Parameter columnHeads = column.get_Parameter(BuiltInParameter.COLUMN_AUTO_EMBED);
columnHeads.Set(0);
// 将楼板绑定到柱子
doc.Create.NewSpotElevation(level, column, floor, true);
在上述示例中,首先获取第一个楼板和柱子,并获取楼板的标高。然后将交叉点剪切类型设置为LevelHeadsOnly,该类型只剪切在梁顶上的柱头。在停用柱头承载功能后,将楼板绑定到柱子。