2024 Class
Changes 0
C

SelectionFilterElement

Description:
A filter element that stores an explicit list of ElementIds. Only elements whose ElementIds are in this list will pass the filter.
Inheritance Hierarchy:
System.Object
  Autodesk.Revit.DB.Element
    Autodesk.Revit.DB.FilterElement
      Autodesk.Revit.DB.SelectionFilterElement
public static void CreateSelectionFilter(Document doc, View view)
{
    // find room tags in this view
    FilteredElementCollector collector = new FilteredElementCollector(doc, view.Id);
    collector.WherePasses(new RoomTagFilter());

    // collect tags whose room number matches criteria
    List<ElementId> tagIds = new List<ElementId>();

    foreach (RoomTag tag in collector.Cast<RoomTag>())
    {
        int number = Int32.Parse(tag.Room.Number);
        if (number % 3 == 0)
        {
            tagIds.Add(tag.Id);
        }
    }

    using (Transaction t = new Transaction(doc, "Create SelectionFilterElement"))
    {
        t.Start();

        // Create selection filter and assign ids
        SelectionFilterElement filterElement = SelectionFilterElement.Create(doc, "Room tags filter");
        filterElement.SetElementIds(tagIds);

        ElementId filterId = filterElement.Id;

        // Add the filter to the view
        view.AddFilter(filterId);

        doc.Regenerate();

        // Use the existing graphics settings, and change the color to Blue
        OverrideGraphicSettings overrideSettings = view.GetFilterOverrides(filterId);

        overrideSettings.SetProjectionLineColor(new Color(0x00, 0x00, 0xFF));

        view.SetFilterOverrides(filterId, overrideSettings);

        t.Commit();
    }
}
Name Return Type Description Inherited From
M AddSet(ICollection<ElementId>) None Adds a set of ElementIds to the filter's set.
M AddSingle(ElementId) None Adds a single ElementId to the filter's set.
M Clear() None Removes all ElementIds from the filter.
M Contains(ElementId) bool Returns true if the given ElementId is a member of this filter's set.
M Create(Document, String) The new SelectionFilterElement. Creates a new SelectionFilterElement in the given document.
M GetElementIds() ICollection<ElementId> Returns the set of ElementIds contained by this filter.
M IsEmpty() bool Determines whether this filter's set is empty or not.
M RemoveSet(ICollection<ElementId>) int Removes a set of ElementIds from the filter's set.
M RemoveSingle(ElementId) None Removes a single ElementId from the filter's set.
M SetElementIds(ICollection<ElementId>) None Replaces the set of ElementIds contained by this filter.
M ArePhasesModifiable() bool Returns true if the properties CreatedPhaseId and DemolishedPhaseId can be modified for this Element. Element
M CanBeHidden(View) bool Indicates if the element can be hidden in the view. Element
M CanBeLocked() bool Identifies if the element can be locked. Element
M CanDeleteSubelement(Subelement) bool Checks if given subelement can be removed from the element. Element
M CanHaveTypeAssigned() bool Identifies if the element can have a type assigned. Element
M CanHaveTypeAssigned(Document, ICollection<ElementId>) bool Checks if all elements in the set can have a type assigned. Element
M ChangeTypeId(Document, ICollection<ElementId>, ElementId) IDictionary Changes the type of all elements in the given set. Element
M ChangeTypeId(ElementId) ElementId Changes the type of the element. Element
M DeleteEntity(Schema) bool Deletes the existing entity created by %schema% in the element Element
M DeleteSubelement(Subelement) bool Removes a subelement from the element. Element
M DeleteSubelements(IList<Subelement>) bool Removes the subelements from the element. Element
M Dispose() None Releases all resources used by the Element
M EvaluateAllParameterValues() EvaluatedParameter Evaluates all the parameters' values of the element. Element
M EvaluateParameterValues(ISet<ElementId>) EvaluatedParameter Evaluate the parameters' values of the element on the given parameter ID set. Element
M GetChangeTypeAny() ChangeType Returns ChangeType associated with any change in an element. Element
M GetChangeTypeElementAddition() ChangeType Returns ChangeType associated with element addition Element
M GetChangeTypeElementDeletion() ChangeType Returns ChangeType associated with element deletion. Element
M GetChangeTypeGeometry() ChangeType Returns ChangeType associated with a change in the geometry of an element Element
M GetChangeTypeParameter(ElementId) ChangeType Returns ChangeType associated with a change in a parameter's value Element
M GetChangeTypeParameter(Parameter) ChangeType Returns ChangeType associated with a change in a parameter's value Element
M GetDependentElements(ElementFilter) IList<ElementId> Get all elements that, from a logical point of view, are the children of this Element. Element
M GetEntity(Schema) The returned Entity. Returns the existing entity corresponding to the Schema if it has been saved in the Element, or an invalid entity otherwise. Element
M GetEntitySchemaGuids() IList<Guid> Returns the Schema guids of any Entities stored in this element. Element
M GetExternalFileReference() ExternalFileReference Gets information pertaining to the external file referenced by the element. Element
M GetExternalResourceReferenceExpanded(ExternalResourceType) IList<ExternalResourceReference> Gets the collection of ExternalResourceReference associated with a specified external resource type. Element
M GetExternalResourceReference(ExternalResourceType) ExternalResourceReference Gets the ExternalResourceReference associated with a specified external resource type. Element
M GetExternalResourceReferencesExpanded() IDictionary Gets the expanded map of the external resource references referenced by the element. Element
M GetExternalResourceReferences() IDictionary Gets the map of the external resource references referenced by the element. Element
M GetGeneratingElementIds(GeometryObject) ICollection<ElementId> Returns the ids of the element(s) that generated the input geometry object. Element
M GetGeometryObjectFromReference(Reference) GeometryObject Retrieve one geometric primitive contained in the element given a reference. Element
M GetMaterialArea(ElementId, Boolean) double Gets the area of the material with the given id. Element
M GetMaterialIds(Boolean) ICollection<ElementId> Gets the element ids of all materials present in the element. Element
M GetMaterialVolume(ElementId) double Gets the volume of the material with the given id. Element
M GetMonitoredLinkElementIds() IList<ElementId> Provides the link instance IDs when the element is monitoring. Element
M GetMonitoredLocalElementIds() IList<ElementId> Provides the local element IDs when the element is monitoring. Element
M GetOrderedParameters() IList<Parameter> Gets the parameters associated to the element in order. Element
M GetParameterFormatOptions(ElementId) FormatOptions Returns a FormatOptions override for the element Parameter, or a default FormatOptions if no override exists. Element
M GetParameter(ForgeTypeId) Parameter Retrieves a parameter from the element given identifier. Element
M GetParameters(String) IList<Parameter> Retrieves the parameters from the element via the given name. Element
M GetPhaseStatus(ElementId) ElementOnPhaseStatus Gets the status of a given element in the input phase Element
M GetSubelements() IList<Subelement> Returns the collection of element subelements. Element
M GetTypeId() ElementId Returns the identifier of this element's type. Element
M GetValidTypes() ICollection<ElementId> Obtains a set of types that are valid for this element. Element
M GetValidTypes(Document, ICollection<ElementId>) ICollection<ElementId> Obtains a set of types that are valid for all given elements. Element
M HasPhases() bool Returns true if this Element has the properties CreatedPhaseId and DemolishedPhaseId. Element
M IsCreatedPhaseOrderValid(ElementId) bool Returns true if createdPhaseId and demolishedPhaseId are in order. Element
M IsDemolishedPhaseOrderValid(ElementId) bool Returns true if createdPhaseId and demolishedPhaseId are in order. Element
M IsExternalFileReference() bool Determines whether this Element represents an external file. Element
M IsHidden(View) bool Identifies if the element has been permanently hidden in the view. Element
M IsMonitoringLinkElement() bool Indicate whether an element is monitoring any elements in any linked models. Element
M IsMonitoringLocalElement() bool Indicate whether an element is monitoring other local elements. Element
M IsPhaseCreatedValid(ElementId) bool Returns true if createdPhaseId is an allowed value for the property CreatedPhaseId in this Element. Element
M IsPhaseDemolishedValid(ElementId) bool Returns true if demolishedPhaseId is an allowed value for the property DemolishedPhaseId in this Element. Element
M IsValidType(Document, ICollection<ElementId>, ElementId) bool Checks if given type is valid for the set of elements. Element
M IsValidType(ElementId) bool Checks if given type is valid for this element. Element
M LookupParameter(String) nullNothingnullptr Attempts to find a parameter on the element which has the given name. Element
M RefersToExternalResourceReference(ExternalResourceType) bool Determines whether this Element uses external resources associated with a specified external resource type. Element
M RefersToExternalResourceReferences() bool Determines whether this Element uses external resources. Element
M SetEntity(Entity) None Stores the entity in the element. If an Entity described by the same Schema already exists, it is overwritten. Element
M IsNameUnique(Document, String) bool Determines whether the given name could be applied to a new FilterElement, or if it could not be applied because the name is already in use. FilterElement
M IsNameUnique(String) bool Determines whether a potential filter element name is unique. FilterElement
Name Return Type Description Inherited From
P AssemblyInstanceId ElementId The id of the assembly instance to which the element belongs. Element
P BoundingBox BoundingBoxXYZ Retrieves a box that circumscribes all geometry of the element. Element
P Category Category Retrieves a Category object that represents the category or sub category in which the element resides. Element
P CreatedPhaseId ElementId Id of a Phase at which the Element was created. Element
P DemolishedPhaseId ElementId Id of a Phase at which the Element was demolished. Element
P DesignOption DesignOption Returns the design option to which the element belongs. Element
P Document Document Returns the Document in which the Element resides. Element
P Geometry GeometryElement Retrieves the geometric representation of the element. Element
P GroupId ElementId The id of the group to which an element belongs. Element
P Id ElementId A unique identifier for an Element in an Autodesk Revit project. Element
P IsModifiable bool Identifies if the element is modifiable. Element
P IsTransient bool Indicates whether an element is transient or permanent. Element
P IsValidObject bool Specifies whether the .NET object represents a valid Revit entity. Element
P LevelId ElementId The id of the level associated with the element. Element
P Location Location This property is used to find the physical location of an element within a project. Element
P Name string A human readable name for the Element. Element
P OwnerViewId ElementId The id of the view that owns the element. Element
P Parameter Parameter Retrieves a parameter from the element given a parameter id. Element
P Parameter Parameter Retrieves a parameter from the element based on its definition. Element
P Parameter Parameter Retrieves a parameter from the element given a GUID for a shared parameter. Element
P ParametersMap ParameterMap Retrieves a map containing all of the parameters that are contained within the element. Element
P Parameters ParameterSet Retrieves a set containing all of the parameters that are contained within the element. Element
P Pinned bool Identifies if the element has been pinned to prevent changes. Element
P UniqueId string A stable unique identifier for an element within the document. Element
P VersionGuid Guid Get the element version Guid. Element
P ViewSpecific bool Identifies if the element is owned by a view. Element
P WorksetId WorksetId Get Id of the Workset which owns the element. Element