2021 Class
Changes 0
C

BoundingBoxContainsPointFilter

Description:
A filter used to match elements with a bounding box that contains the given point.
Remarks:
This filter excludes all objects derived from View and objects derived from ElementType. 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.BoundingBoxContainsPointFilter
// Use BoundingBoxContainsPoint filter to find elements with a bounding box that contains the 
// given point in the document.

// Create a BoundingBoxContainsPoint filter for base point of (0, 0, 0)
XYZ basePnt = new XYZ(0, 0, 0);
BoundingBoxContainsPointFilter filter = new BoundingBoxContainsPointFilter(basePnt);

// Apply the filter to the elements in the active document
// This filter will excludes all objects derived from View and objects derived from ElementType
FilteredElementCollector collector = new FilteredElementCollector(document);
IList<Element> elements = collector.WherePasses(filter).ToElements();


// Find walls that do not contain the given point: use an inverted filter to match elements
// Use shortcut command OfClass() to find walls only
BoundingBoxContainsPointFilter notContainFilter =
    new BoundingBoxContainsPointFilter(basePnt, true); // inverted filter
collector = new FilteredElementCollector(document);
IList<Element> notContainFounds =
    collector.OfClass(typeof(Wall)).WherePasses(notContainFilter).ToElements();
Name Return Type Description Inherited From
C BoundingBoxContainsPointFilter(XYZ) None Constructs a new instance of a filter to match elements with a bounding box that contains the given point.
C BoundingBoxContainsPointFilter(XYZ, Boolean) None Constructs a new instance of a filter to match elements with a bounding box that contains the given point, with the option to invert the filter and match all elements with a bounding box that do not contain the given point.
C BoundingBoxContainsPointFilter(XYZ, Double) None Constructs a new instance of a filter to match elements with a bounding box that contains the given point, while specifying the tolerance to be used in deciding if the point matches the criteria.
C BoundingBoxContainsPointFilter(XYZ, Double, Boolean) None Constructs a new instance of a filter to match elements with a bounding box that contains the given point, while specifying the tolerance to be used in deciding if the point matches the criteria.
Name Return Type Description Inherited From
M Dispose() None Releases all resources used by the ElementFilter
M PassesFilter(Document, ElementId) bool Applies the filter to a given element. ElementFilter
M PassesFilter(Element) bool Applies the filter to a given element. ElementFilter
Name Return Type Description Inherited From
P Point XYZ The XYZ point to use when matching element bounding boxes.
P Tolerance double Allows control over the match criteria by using a tolerance in the geometry comparison. It is suggested to use this in cases where trivial differences should be considered when matching elements.
P 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. ElementFilter
P IsValidObject bool Specifies whether the .NET object represents a valid Revit entity. ElementFilter