I’m getting this really weird case where for two intersecting breps, a union command returns the difference of the two breps, and a difference command returns the union of the two breps. This is occurring in both SR10 and SR9. I cannot reproduce the bug using simple shapes in a new document, it only seems to occur in a small subset of my builds (which are being generated with python). The swapped union/difference behavior is occurring even when the GUI is used to issue the commands.
Another interesting note is that when generating normal vectors from the main surface, the normal directions were flipped from what is usual, i.e., normal = -normal.
Model file attached. There are three separate breps in which the reversed behavior is happening.
What could cause this?
union-difference-bug.3dm (2.0 MB)