A filter that contains a set of filters. The filter passes when all filters in the set pass.
Inheritance Hierarchy
System.ObjectAutodesk.Revit.DB.ElementFilter
Autodesk.Revit.DB.ElementLogicalFilter
Autodesk.Revit.DB.LogicalAndFilter
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 26.1.0.0 (26.1.0.34)
Syntax
C#
public class LogicalAndFilter : ElementLogicalFilter
The LogicalAndFilter type exposes the following members.
Constructors
Name | Description | |
---|---|---|
![]() | LogicalAndFilter(IList<ElementFilter>) | Constructs a new instance of the logical filter with any number of input filters. |
![]() | LogicalAndFilter(ElementFilter, ElementFilter) | Constructs a new instance of the logical filter with two input filters. |
Properties
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) |
Methods
Name | Description | |
---|---|---|
![]() | Dispose | (Inherited from ElementFilter) |
![]() | Equals | Determines whether the specified object is equal to the current object. (Inherited from Object) |
![]() | GetFilters |
Returns an array of copies of the filters that are logically combined by this ElementLogicalFilter.
(Inherited from ElementLogicalFilter) |
![]() | 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) |
![]() | SetFilters |
Replaces current filters in the logical filter with any number of input filters.
(Inherited from ElementLogicalFilter) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object) |
Remarks
The component filters may be reordered by Revit to cause the quickest acting filters to be evaluated first.Example
C#
// Find all door instances in the project by finding all elements that both belong to the door // category and are family instances. ElementClassFilter familyInstanceFilter = new ElementClassFilter(typeof(FamilyInstance)); // Create a category filter for Doors ElementCategoryFilter doorsCategoryfilter = new ElementCategoryFilter(BuiltInCategory.OST_Doors); // Create a logic And filter for all Door FamilyInstances LogicalAndFilter doorInstancesFilter = new LogicalAndFilter(familyInstanceFilter, doorsCategoryfilter); // Apply the filter to the elements in the active document FilteredElementCollector collector = new FilteredElementCollector(document); IList<Element> doors = collector.WherePasses(doorInstancesFilter).ToElements();
VB
' Find all door instances in the project by finding all elements that both belong to the door ' category and are family instances. Dim familyInstanceFilter As New ElementClassFilter(GetType(FamilyInstance)) ' Create a category filter for Doors Dim doorsCategoryfilter As New ElementCategoryFilter(BuiltInCategory.OST_Doors) ' Create a logic And filter for all Door FamilyInstances Dim doorInstancesFilter As New LogicalAndFilter(familyInstanceFilter, doorsCategoryfilter) ' Apply the filter to the elements in the active document Dim collector As New FilteredElementCollector(document) Dim doors As IList(Of Element) = collector.WherePasses(doorInstancesFilter).ToElements()