Intersection/Common of two faces that share the same surface.

Hello Everybody:

I have two faces that share the same surface and I want to calculate the intersection of these two faces. I attempted to use BRepAlgoAPI_Common, however sometimes it would throw exceptions, but the worst feature about this class is that it is so slow -- and I need a method that runs extremely fast.

The intersection of two faces sharing the same surface could be quickly done by finding the intersection of the outer wires (and any inner wires) in the UV plane. Once the 2D curves were intersected, then they could transformed into 3D curves, then into wires, and finally into the intersected face(s). Does anyone know how to quickly do this? It would really be a big help to me.

Thank you,


arkoala's picture

My contribution:

If your surface is planar, try to use IntAna2d_AnaIntersection and solve it as 2d problem. It is much faster than BRepAlgoAPI but you have to make the algorithm on your own, as you explained it.

J. Tonnison's picture

Unfortunately IntAna2d_AnaIntersection only works with analytical curves not bsplines.