ElementDesignOptionFilter
Description:
A filter used to find elements contained within a particular design option.
A filter used to find elements contained within a particular design option.
Remarks:
This filter is a quick filter. Quick filters operate only on the ElementRecord, a low-memory class which has a limited interface to read element properties. Elements which are rejected by a quick filter will not be expanded in memory.
This filter is a quick filter. Quick filters operate only on the ElementRecord, a low-memory class which has a limited interface to read element properties. Elements which are rejected by a quick filter will not be expanded in memory.
Inheritance Hierarchy:
System.Object
Autodesk.Revit.DB.ElementFilter
Autodesk.Revit.DB.ElementQuickFilter
Autodesk.Revit.DB.ElementDesignOptionFilter
System.Object
Autodesk.Revit.DB.ElementFilter
Autodesk.Revit.DB.ElementQuickFilter
Autodesk.Revit.DB.ElementDesignOptionFilter
public class ElementDesignOptionFilter : ElementQuickFilter
// Create an ElementDesignOption filter to find all walls in the active design option.
// Note that if no design option is being edited, GetActiveDesignOptionId() method will return ElementId.InvalidElementId,
// ElementDesignOptionFilter with invalid id will filter elements not associated to a design option
ElementId activeOptId = Autodesk.Revit.DB.DesignOption.GetActiveDesignOptionId(document);
// Create an ElementDesignOption filter
ElementDesignOptionFilter filter = new ElementDesignOptionFilter(activeOptId);
// Apply the filter to the elements in the active document,
// use shortcut method OfClass() to find Walls only
FilteredElementCollector collector = new FilteredElementCollector(document);
ICollection<Element> wallsOfDesignOpt = collector.WherePasses(filter).OfClass(typeof(Wall)).ToElements();
// Find all walls that are not contained within active design option: use inverted filter to match elements
ElementDesignOptionFilter notActiveOptFilter = new ElementDesignOptionFilter(activeOptId, true); // inverted filter
collector = new FilteredElementCollector(document);
ICollection<Element> notActiveOptWalls =
collector.WherePasses(notActiveOptFilter).OfClass(typeof(Wall)).ToElements();
| Name | Return Type | Description | Inherited From |
|---|---|---|---|
| ElementDesignOptionFilter(ElementId) | None | Constructs a new instance of a filter to match elements contained within a particular design option. | |
| ElementDesignOptionFilter(ElementId, Boolean) | None | Constructs a new instance of a filter to match elements contained within a particular design option, with the option to invert the filter and find elements not contained within a particular design option. |
| Name | Return Type | Description | Inherited From |
|---|---|---|---|
| Dispose() | None | (Inherited from ElementFilter ) | ElementFilter |
| Equals | None | Determines whether the specified object is equal to the current object. (Inherited from Object ) | Object |
| GetHashCode | None | Serves as the default hash function. (Inherited from Object ) | Object |
| GetType | None | Gets the Type of the current instance. (Inherited from Object ) | Object |
| PassesFilter(Element) | Boolean | Applies the filter to a given element. (Inherited from ElementFilter ) | ElementFilter |
| PassesFilter(Document, ElementId) | Boolean | Applies the filter to a given element. (Inherited from ElementFilter ) | ElementFilter |
| ToString | None | Returns a string that represents the current object. (Inherited from Object ) | Object |
| Name | Return Type | Description | Inherited From |
|---|---|---|---|
| DesignOptionId | ElementId | The design option id. | |
| Inverted | bool | 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 ) | ElementFilter |
| IsValidObject | Boolean | Specifies whether the .NET object represents a valid Revit entity. (Inherited from ElementFilter ) | ElementFilter |