Need help with Boolean Union for my design

I’m a 4th year architecture student working on making a 3D printable file of my design. I’ve been struggling for a couple hours now trying to make everything one closed polysurface so the printer can read the mass as a solid. I’m attaching the file here:
BooleanUnionIssue.3dm (3.2 MB)
Essentially, there is a support skeleton underneath a roof element, and I’ve been using boolean union to all the pieces into one solid, but now I’m running into a surface intersection error when I try to connect them. Does anyone know how to solve this issue? Also, if anyone knows of a more efficient way to make models 3d printable in the future please let me know. Thanks for the help!

are you printing it yourself ?
did you check what the printer s software is doing with those 2 solids ?

Hey Tom_P! I am not printing it myself, but since each is a closed polysurface on its own I’m assuming they could print independently. The problem is there are some overlaps between the two masses and I would prefer to have the two merged to make physical assembly easier

yep - stuff like above detail might bring trouble.

the hard way:
_intersectTwoSets (both complex parts)
clean all those details by _trim
partially _extractSrf _trim _join…
stepwise bring it together with join.

if you have a earlier stage of the model, - with all details being single closed polysurfaces…
stepwise add a simple polysurface to the final part.
I think you expect to much of trying to union those 2 very complex parts.
And there are many nearly coplanar and nearly identical surfaces…
boolean operations will fail on stuff like this. (as intersections are not precise enough)

running the what command - your edge tolerances are:
Edge Tolerances: 0" to 0-1/2"
Edge Tolerances: 0" to 0-1/4"

this is already not within document tolerance…

what s the final printing-Size ?
you might benefit from already scaling it to that size.

if the model will be printed quite small a fast and dirty solution might be to shrinkwrap it.

but maybe you re lucky and the slicer does a good job with the data as it is - my recommondateino: try this first.

I do have earlier iterations, but I’m not sure I understand how you mean I should use those pieces. As for the edge tolerances, I will do some research to understand that better and see what changes I can make. The final printing size will be at a 1/8" = 1’0" scale. I tried scaling it down and then trying again but it didn’t work. Thank you again for your help

those piece are much simpler - some of them are only boxes.

start one (final) polysurface (that gets more and more complex) and stepwise add (boolean union) those simpler pieces - this will give you less pain in finding errors.
if there is coplanar stuff - boolean union those elements first, and check if _mergeAllCoplanarFaces will remove the inner edges - otherwise you need to more precisely remodel this first.

…and define a measurement, that is not visible (0.1mm) in the final print. so you might move elements by this distance to cheat a bit.

but as already written: try to get a feedback from the slicer first. - it might do the job.