近期做项目,碰到需要筛选Revit中的【基础墙】类型,找到方法可以通过Wallkind的枚举判断,
WalType. WallKind枚举代表以下四种墙:
●Stacked (叠层墙)。
●Curtain (幕墙)。
●Basic (基础墙)。
●Unknown (未定义墙)。
幕墙比较好区分,叠层墙因为本身也是基础墙实现的,所以比较难区分。
具体用法:
var walls = new FilteredElementCollector(document).WherePasses(new ElementClassFilter(typeof(Wall))).Cast<Wall>().ToList();
walls=walls.FindAll(x => x.WallType.Kind.Equals(WallKind.Basic) && !x.Name.Contains("复合")).ToList();
需要的朋友可以试试~