常规过滤、逻辑过滤

来源:互联网 发布:java语言是一种面向 编辑:程序博客网 时间:2024/05/02 06:31

过滤的使用:

                FilteredElementCollector collector = new FilteredElementCollector(doc);                //ICollection<Element> collection = collector.OfClass(typeof(FamilyInstance)).ToElements();                ElementClassFilter filter1 = new ElementClassFilter(typeof(FamilyInstance));                ElementClassFilter filter2 = new ElementClassFilter(typeof(HostObject));                LogicalOrFilter filter = new LogicalOrFilter(filter1, filter2);                ICollection<Element> collection = collector.WherePasses(filter).ToElements();

根据自己的需要,可以添加不同的过滤条件。


HostObject可以过滤出系统族创建的实例。


过滤专用设备的实例。

ICollection<Element> collection = collector.OfClass(typeof(FamilyInstance)).OfCategory(BuiltInCategory.OST_SpecialityEquipment).ToElements();


多种过滤条件需要用什么就选择什么。如:ElementClassFilter、ElementClassFilter、ElementLevelFilter、ElementLogicalFilter、LogicalOrFilter、LogicalAndFilter等。

原创粉丝点击