Solid union does not work in Grasshopper

I can make boolean union in Rhino with my model. The result is an OK brep. But when I try to do the same thing with Solid Union in Grasshopper it gives an invalid brep. Is there a workaround in Grasshopper?

su problem.gh (4.4 KB) SU problem.3dm (400.8 KB)

If you change your rhino .3dm’s absolute tolerance fr 0.001 to 0.0001, it should work.
I’ve no idea why there’s tolerance differences in rhino and GH when using boolean operations…


SolidUnion_re.gh (174.5 KB)

1 Like

where can I change that?

Type “Options” in command line --> Units–>Model (Absolute tolerance)

That’s a great tip - thanks. I always thought Solid Union was a bit quirky.

I wonder if increasing Rhino’s internal tolerance has the effect of increasing the # triangles in an Export to STL format. I’ll try some experiments to find out.

The answer is that Export to STL brings up it’s own dialog that allows you to specify “The maximum distance between the original surface or solid and the polygon mesh created for the STL file.” This is what controls the triangle count of the resulting STL file - it is independent of Rhino’s internal tolerance value.

For 3D printing I’ve always specified a distance (tolerance) of 0.01 mm which is pretty gross for machining stuff but just fine for a 3D printer.

I always knew about the slight overlap trick to get solid union to work, but thanks for the 0.0001 tolerance idea - I changed Sasquatch fast solid accordingly and it worked all the same!