Hi, I have these two closed polysurfaces, and i need to join them to be one closed polysurface. But boolean union is failing? They are overlapping. Could someone help?closed polysrfs.3dm (1.3 MB)
Well, if you select badobjects, both polysrf are selected. Do an explode all then select bad objects, six of the srfs are selected.
So perhaps you need to do some work to make them non-bad.
It looks like you perhaps used JoinEdge to override the modeling tolerance. That will break the use of Booleans because it really does not get the gapped or overlapped edges within tolerance. You need to do that.
First I would suggest changing your absolute modeling tolerance to 0.001"
Hide one of the polysurfaces.
Explode the other.
Use RebuildEdge on all the exploded surfaces to fix the mess that JoinEdge made.
Join the surfaces.
Use ShowEdges set for Naked edges to see the edges that need work.
Use ExtractSrf to remove a surface you want to replace and delete it.
Use the surrounding edge curves to make new better fitting surfaces.
Join them as you go and watch for naked edges.
Do one polysurface one surface at a time.
Then run Show to bring back the second polysurface and Hide the fixed one.
Repeat the process.
Now you’ll have good polysurfaces that will Boolean.
I’ve always avoided JoinEdge command,
but just curious… what would be the practical use of the command?
Is it like making closed edges for render? I suppose it doesn’t cut it for 3D printing data…
. Could you maybe take a look to see if it works for you? I just did it, but it’s not working right.I’m kind of a novice when it comes to rhino. Thank you!
That’s horrible advice. He’s doomed to failure if he does that.
His model is almost 1/4 mile across. If he changes his tolerance at this point it should be the the other way. A tolerance of 1/10 inch should be adequate for something this big.
I must have misread his grid settings and model dimensions.
Sorry. Late in the day.
If you’re just going to get meshes from the model, then you can use it. If you need surfaces for anything, then don’t use it.