Family |
A filter used to match families that have the given structural material type.

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
Namespace: Autodesk.Revit.DB.Structure
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)

The FamilyStructuralMaterialTypeFilter type exposes the following members.

Name | Description | |
---|---|---|
![]() | FamilyStructuralMaterialTypeFilter(StructuralMaterialType) | Constructs a new instance of a filter to match families that have the given structural material type. |
![]() | FamilyStructuralMaterialTypeFilter(StructuralMaterialType, Boolean) | Constructs a new instance of a filter to match families by structural material type, with the option to match all families which are not of the given structural material type. |

Name | Description | |
---|---|---|
![]() | Inverted | True if the results of the filter are inverted; elements that would normally be accepted by this filter will be rejected, and elements that would normally be rejected will be accepted. (Inherited from ElementFilter ) |
![]() | IsValidObject | Specifies whether the .NET object represents a valid Revit entity. (Inherited from ElementFilter ) |
![]() | StructuralMaterialType | The family structural material type. |

Name | Description | |
---|---|---|
![]() | Dispose | (Inherited from ElementFilter ) |
![]() | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object ) |
![]() | GetHashCode | Serves as the default hash function. (Inherited from Object ) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object ) |
![]() | PassesFilter(Element) | Applies the filter to a given element. (Inherited from ElementFilter ) |
![]() | PassesFilter(Document, ElementId) | Applies the filter to a given element. (Inherited from ElementFilter ) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object ) |

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.

// 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();
