booleanUnion->explode->join works diffrently in rhinoscriptsyntax and rhino command

I have 7 closed polysurfaces that I try to BooleanUnion together, but I get a open polysurfaces back, this is fine since two of them have surfaces that are allined, and I know that this can happen.

Tried to exploed and joint the open polysurfaces which gave me a open polysurface back ones more.

Tried BooleanUnion -> exp lode -> join again but with rs.Command(), this gave me a open polysurfaces after the ooleanUnion but a closed polysurfaces after the join

Can any explane why this two identical opration behaves diffrent.

Have uploaded the geometry in the test.3dm attach, and the small python script that show what I mean, with color, print and everything :smile: .

test.3dm (947.8 KB) (2.1 KB)


The problem is that unioning two of the polysurfaces in your file (indicated in red in the attached) produces a non-manifold object - Rhino tells you it’s “open”, but naked edges tells you it’s non-manifold. The surfaces only touch on one edge, on the other end, the edges are are slightly out - right around the file tolerance value. If you fix that, everything should work.

HTH, --Mitch

NM.3dm (195.5 KB)

Tanks for the reply,
Yes I know that the two polysurfaces Is place closes but why do BooleanUnion -> exp lode -> join act diffrently when used in rhino that in python?

I can fix this problem by scaling the block and doing the union afterwords but do you know if I can change thee tolerance when doing Union, such that the will snap together?

best kasper