Hello, I am new to Rhino and am learning to use it to model my own 3D prints.
I made a bamboo-like object by lofting a few circles together and then capping it. I then created the structure in the screenshot by using ArrayLinear, some gumball copying and mirroring.
I now wanted to change this in one bigger object by selecting all 100 with SelClosedPolysrf and then using BooleanUnion, but every time I try this I get an error that it failed. I tried it also on just 2 bamboo sticks close to each other, but this also fails.
Am I misunderstanding how BooleanUnion works? What would be the best way to merge these objects together for 3D printing them?
(I had to remove a few bamboo sticks so my file was under 22MB, but the BooleanUnion still fails)
This one is tricky. I’m able to get a solid but I have to do it piece by piece. I checked the geometry and can’t find anything wrong with it.
What I’m doing is exploding it into surfaces, and then trimming. But the trimming only works on one piece… so then I’m mirroring it. Once I get every piece made I might be able to just join them. I kind of hope someone finds the ‘fix’ instead of so much manual work… plus I’m not sure how big this actually is as you said you didn’t share the entire file?
Edit: I’m also moving the surface seam (srfSeam). Not sure if that’s the problem but it’s a good idea to keep the seams away from any operation especially if it’s struggling.
Edit 2: It doesn’t like your control points. By that I mean if a row kinks back over itself. This occurs in multiple places. On one try I fixed one and it worked. I tried to repeat it and had to fix all 3 places. It seems to struggle more and more as I go but also I have the seams right in the join again…
Let me know if my explanation sucks I can just post a surface as an example.
If you want a sharp kink you might have to use two separate surfaces.
I do not completely understand this part I think. Is this related to what points were chosen when it created the loft between the circles? I assume it’s related to your first screenshot?
Anyways it’s a good tip to try to keep the seam out of the boolean union, I’m going to try to play a bit more around later today. Thanks already for the help
When diagnosing Boolean operations failures, always run Intersect and carefully examine the result. If Rhino can’t find a clean intersection between objects, boolean operations will fail.
There’s your self-intersection. These are to be avoided at all costs. Building the objects with Loft appears to have created the problem, I would create a profile curve instead and use Revolve (+Cap to close the objects). Below is an example, I adjusted the seam curve a bit to remove the self-intersection and I even added a tiny radius at the kink. These should BooleanUnion OK.
a more reliable way to do this would be to extract all the top surfaces of the extrusions, duplicate the border, curveboolean the borders and extrude again. see attached.
also if you’re 3d-printing, nearly any slicer will automatically process overlapping solids as a single solid, so you don’t have to worry about creating a single polysurface. i’ve done this with revit models (100,000+ individual pieces of geometry) and at least prusaslicer and chitubox successfully union the geometry.
edit: didn’t see the rib w/ a self-intersection, but the tip about overlapping solids still applies