Bounding
|
A filter used to match elements with a bounding box that intersects the given Outline.
System
Object
Autodesk.Revit.DB ElementFilter
Autodesk.Revit.DB ElementQuickFilter
Autodesk.Revit.DB BoundingBoxIntersectsFilter
Autodesk.Revit.DB ElementFilter
Autodesk.Revit.DB ElementQuickFilter
Autodesk.Revit.DB BoundingBoxIntersectsFilter
Namespace: Autodesk.Revit.DB
Assembly: RevitAPI (in RevitAPI.dll) Version: 27.0.4.0 (27.0.4.0)
The BoundingBoxIntersectsFilter type exposes the following members.
| Name | Description | |
|---|---|---|
|
|
BoundingBoxIntersectsFilter(Outline) | Constructs a new instance of a filter to match elements with a bounding box that intersects the given Outline. |
|
|
BoundingBoxIntersectsFilter(Outline, Boolean) | Constructs a new instance of a filter to match elements with a bounding box that intersects the given Outline, with the option to invert the filter and match all elements with a bounding box that are not intersecting the given Outline. |
|
|
BoundingBoxIntersectsFilter(Outline, Double) | Constructs a new instance of a filter to match elements with a bounding box that intersects the given Outline. |
|
|
BoundingBoxIntersectsFilter(Outline, Double, Boolean) | Constructs a new instance of a filter to match elements with a bounding box that intersects the given Outline, with the option to invert the filter and match all elements with a bounding box that are not intersecting the given Outline. |
| Name | Description | |
|---|---|---|
|
|
Inverted |
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 ) |
|
|
IsValidObject |
Specifies whether the .NET object represents a valid Revit entity.
(Inherited from ElementFilter ) |
|
|
Tolerance | 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. |
| Name | Description | |
|---|---|---|
|
|
Dispose |
(Inherited from ElementFilter ) |
|
|
Equals |
Determines whether the specified object is equal to the current object.
(Inherited from Object ) |
|
|
GetBoundingBox | Gets the outline being used for this filter. |
|
|
GetHashCode |
Serves as the default hash function.
(Inherited from Object ) |
|
|
GetType |
Gets the
Type
of the current instance.
(Inherited from Object ) |
|
|
PassesFilter(Element) |
Applies the filter to a given element.
(Inherited from ElementFilter ) |
|
|
PassesFilter(Document, ElementId) |
Applies the filter to a given element.
(Inherited from ElementFilter ) |
|
|
ToString |
Returns a string that represents the current object.
(Inherited from Object ) |
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.
C#
// Use BoundingBoxIntersects filter to find elements with a bounding box that intersects the
// given Outline in the document.
// Create a Outline, uses 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 BoundingBoxIntersects filter with this Outline
BoundingBoxIntersectsFilter filter = new BoundingBoxIntersectsFilter(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 all walls which don't intersect with BoundingBox: use an inverted filter to match elements
// Use shortcut command OfClass() to find walls only
BoundingBoxIntersectsFilter invertFilter = new BoundingBoxIntersectsFilter(myOutLn, true); // inverted filter
collector = new FilteredElementCollector(document);
IList<Element> notIntersectWalls =
collector.OfClass(typeof(Wall)).WherePasses(invertFilter).ToElements();