BoundingBoxContainsPointFilter Class


A filter used to match elements with a bounding box that contains the given point.

Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 2015.0.0.0 (2015.0.0.0)
Since: 2011

Syntax

C#
public class BoundingBoxContainsPointFilter : ElementQuickFilter
Visual Basic
Public Class BoundingBoxContainsPointFilter _
	Inherits ElementQuickFilter
Visual C++
public ref class BoundingBoxContainsPointFilter : public ElementQuickFilter

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.

Examples

Copy C#
// 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();
Copy VB.NET
' 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)
Dim basePnt As New XYZ(0, 0, 0)
Dim filter As 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
Dim collector As New FilteredElementCollector(document)
Dim elements As IList(Of Element) = 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
Dim notContainFilter As New BoundingBoxContainsPointFilter(basePnt, True)
' inverted filter
collector = New FilteredElementCollector(document)
Dim notContainFounds As IList(Of Element) = collector.OfClass(GetType(Wall)).WherePasses(notContainFilter).ToElements()

Inheritance Hierarchy

See Also

ArchiLabs Desktop

Put AI to work inside Revit.

Give Desktop your instructions and project files to build Revit families, update model elements, and create views and schedules. Works directly in Revit and AutoCAD.

Explore Desktop →