A filter used to match families that have the given structural material type.
Namespace: Autodesk.Revit.DB.StructureAssembly: RevitAPI (in RevitAPI.dll) Version: 21.0.0.0 (21.1.1.109)
Since: 2011
Syntax
C# |
---|
public class FamilyStructuralMaterialTypeFilter : ElementSlowFilter |
Visual Basic |
---|
Public Class FamilyStructuralMaterialTypeFilter _ Inherits ElementSlowFilter |
Visual C++ |
---|
public ref class FamilyStructuralMaterialTypeFilter : public ElementSlowFilter |
Remarks
This filter is a slow filter, but it uses a quick filter to eliminate non-candidate elements
before the elements are obtained and expanded. Therefore this filter does not have to be
paired with another quick filter to minimize the number of Elements that are expanded.
Examples

// Use FamilyStructuralMaterialType filter to find families whose material type is Wood FamilyStructuralMaterialTypeFilter filter = new FamilyStructuralMaterialTypeFilter(StructuralMaterialType.Wood); // Apply the filter to the elements in the active document FilteredElementCollector collector = new FilteredElementCollector(document); ICollection<Element> woodFamiles = collector.WherePasses(filter).ToElements(); // Find families are not Wood: Use inverted filter to match families FamilyStructuralMaterialTypeFilter notWoodFilter = new FamilyStructuralMaterialTypeFilter(StructuralMaterialType.Wood, true); // inverted filter collector = new FilteredElementCollector(document); ICollection<Element> notWoodFamilies = collector.WherePasses(notWoodFilter).ToElements();

' Use FamilyStructuralMaterialType filter to find families whose material type is Wood Dim filter As New FamilyStructuralMaterialTypeFilter(StructuralMaterialType.Wood) ' Apply the filter to the elements in the active document Dim collector As New FilteredElementCollector(document) Dim woodFamiles As ICollection(Of Element) = collector.WherePasses(filter).ToElements() ' Find families are not Wood: Use inverted filter to match families Dim notWoodFilter As New FamilyStructuralMaterialTypeFilter(StructuralMaterialType.Wood, True) ' inverted filter collector = New FilteredElementCollector(document) Dim notWoodFamilies As ICollection(Of Element) = collector.WherePasses(notWoodFilter).ToElements()
Inheritance Hierarchy
System..::..Object
Autodesk.Revit.DB..::..ElementFilter
Autodesk.Revit.DB..::..ElementSlowFilter
Autodesk.Revit.DB.Structure..::..FamilyStructuralMaterialTypeFilter
Autodesk.Revit.DB..::..ElementFilter
Autodesk.Revit.DB..::..ElementSlowFilter
Autodesk.Revit.DB.Structure..::..FamilyStructuralMaterialTypeFilter