I am trying to find the collisions between objects in a bunch of BREPs and I do found the Collision Many | Many component that can do almost what I want, excepting that it is detecting the geometries that are barely touching between them. It is a way to add somehow a tolerance to this component? i do want to get only the geometries that have intersections between them.
In the image bellow the geometries from the left are barely touching, so i do want to exclude them from the result.
Not a general solution but since your Breps seem to be boxes, you could deflate them by half your tolerance and check collisions on those.
Of course GH doesn’t have the Brep offset available but it’s possible with RhinoCommon.
Or you can deconstruct the boxes, reduce the domains and rebuild a smaller box…
Problem is the Clash component or the RhinoCommon method tolerances are a maximum distance between objects for detection, not a minimum one. Providing zero does not remove tangent-only Breps.
I thought of using Solid Intersect to distinguish real clash and tangency… Not sure this will work on your geometry but worth a try.
The following project have three colliding parts that unfortunately I didn’t detected in time and got into fabrication like that. I fixed after when the joiner complained that can’t fit together all the parts. Was a quick fix, but I want to detect this kind of issues before fabrication. I don’t do myself the design.
The magicteddy definition works well, detecting the intersecting parts.