Revit Element Clash Detection v1

We can easily use builtin nodes like Element.Geometry, Geometry.DoesIntersect and Geometry.Intersect to put together a simple clash detection process in Dynamo. However, these geometry nodes bring some processing overhead.

To speed things up, I packaged it all into a Python Script in this node. Basically, it doesn’t have to unpack or ‘draw’ the actual element geometries, so the performance should be better than the standard nodes.

Inputs:

· RevitElementSetA – the first set of elements

· RevitElementSetB – the elements to clash against set A

The node does a full cross-product check to find the clashes.

Outputs:

· clashSetA – elements that clash with same index in set B

· clashSetB – elements that clash with same index in set A

· SetA_GeometryFailures – instances where Element.Geometry (pythonic / api) failed to make a geometry

· SetB_GeometryFailures – as above

· IntersectingSolid – the full geometry intersection between the two clashing elements

· clashPoint – the centroid of the intersectingSolid

This will be made available in Bakery package.

Future versions will likely be ‘chasing more speed’.