BoundingBoxIsInsideFilter Class


A filter used to match elements with a bounding box that is contained by the given Outline.

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

Syntax

C#
public class BoundingBoxIsInsideFilter : ElementQuickFilter
Visual Basic
Public Class BoundingBoxIsInsideFilter _
	Inherits ElementQuickFilter
Visual C++
public ref class BoundingBoxIsInsideFilter : 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 BoundingBoxIsInside filter to find elements with a bounding box that is contained(inside completely) 
// by the given Outline in the document.

// Create a Outline, use a minimum and maximum XYZ point to initialize the outline. 
Outline myOutLn = new Outline(new XYZ(0, 0, 0), new XYZ(100, 100, 100));

// Create a BoundingBoxIsInside filter for Outline
BoundingBoxIsInsideFilter filter = new BoundingBoxIsInsideFilter(myOutLn);

// Apply the filter to the elements in the active document
// This filter 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 outside BoundingBox: use an inverted filter to match elements
// Use shortcut command OfClass() to find walls only
BoundingBoxIsInsideFilter outsideFilter = new BoundingBoxIsInsideFilter(myOutLn, true); // inverted filter
collector = new FilteredElementCollector(document);
IList<Element> outsideFounds = collector.OfClass(typeof(Wall)).WherePasses(outsideFilter).ToElements();
Copy VB.NET
' Use BoundingBoxIsInside filter to find elements with a bounding box that is contained(inside completely) 
' by the given Outline in the document.


' Create a Outline, use a minimum and maximum XYZ point to initialize the outline. 
Dim myOutLn As New Outline(New XYZ(0, 0, 0), New XYZ(100, 100, 100))

' Create a BoundingBoxIsInside filter for Outline
Dim filter As New BoundingBoxIsInsideFilter(myOutLn)

' Apply the filter to the elements in the active document
' This filter 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 outside BoundingBox: use an inverted filter to match elements
' Use shortcut command OfClass() to find walls only
Dim outsideFilter As New BoundingBoxIsInsideFilter(myOutLn, True)
' inverted filter
collector = New FilteredElementCollector(document)
Dim outsideFounds As IList(Of Element) = collector.OfClass(GetType(Wall)).WherePasses(outsideFilter).ToElements()

Inheritance Hierarchy

See Also