Boolean union for creating internal structure on a mesh

Hi, I am trying to add an internal structure(simple rectangular shape) to the mesh that has been shrinkwrapped.

I first Meshbooleansplit the rectangle with my mesh.
Then I clean up by deleting unecessary parts.
Finally Meshboolean union the selected cut out piece with my mesh.

The last step somehow makes my mesh filled completely after the meshbooleanunion. Does any one know how I can simply add such shape inside? thanks



1 Like

Is the goal here to have the thickened edge, then inside that have another shape that completely fills the internal space? Is there a small gap between the inner thickened skin and the filled shape? For instance a small gap that would be needed if this is 3d printed?

Normally I would either use the inner thickened mesh by copying it when created and flipping its normal. So now that inner thickened skin would act as the inner skin and the out shape of the fill.

1 Like

Hi Scott,

the goal is the slice them/ contour them in grasshopper to prepare for CNC cutting. So each layer has to be one continuous contour. However, as you can see in the first image here, there will be two pieces. So I’ll need 2,3 connection pieces/internal structures/ribs to connect them to the mesh.


1 Like

Try this. Think about creating a big cutter. Start witht he Shrinkwrap offset to the inside, but do not use it as a shell yet, just as a solid shape. Then hide the outer surface, the original and start to cut channels and hollows out of this theoretical cutter. The hollows and channels will actually be the webs in the end of this. Then difference out the cutter shape from a solid version of the outer shape.

Does that make sense? I probably did not explain it that well.

you can boolean mesh stuff using nurbs parts,

BUT(this is a big but)

you have to use the mesh boolean tools, NOT the nurbs boolean tools.

in the video below, the green parts are nurbs, the mesh parts are red and blue.

and for the first time in Rhino history, mesh booleans actually work now…

and this video may be helpful if the Booleans drop any faces, which can happen with coplanar stuff-

2 Likes

indeed, it has 44insersecting faces…

One way to handle that is to overbuild it a bit then trim it back as needed.

overbuild it? can i do that with by current mesh?

sure, you can edit a mesh using gumball or smash in some new surfaces and shrinkwrap it all together.

ctrl+shift+ click (or drag select) to select faces or edges of a mesh and then drag them with gumball.

Patchsingleface to make bridges between parts, and fill mesh hole or fillmeshholes to fill in holes.

mesh editing is a little tedious, but it’s totally do able.

ahh some how cant get the hang of it. the Meshbooleanunion keeps giving me the same result. saying i have 10 intersecting faces, I dont know if that is whats causing the issue(image 3 of the main question).

can you post two files, the inputs in one and the results you are getting in the other?

If they need to stay confidential, you can send them to us at tech@mcneel.com attn: kyle
and we can sort it via the direct tech support route instead of a public forum.

Yes!

I couldn’t upload the file for the size limit, so I’ve sent an email.

-File_1 : Mesh and a rib
-File_2 : Mesh and a rib(after MeshBooleanSpit & SplitDisjointMesh
-File_3 : Mesh and a rib MeshBooleanUnion.

I appreciate for taking a look at it. thank you!

Hi Kyle, I was wondering if you were able to take a look into it, cheers!

I do not see the file in our system, what email did you send it from?

I emailed to tech@mcneel.com
I just forwarded again!

hmm… nothing here yet…

they may be bouncing because they are too big-

try our uploader here-

https://www.rhino3d.com/upload

Yup! just did

Try to use ShrinkWrap to make offseted mesh and BooleanIntersect offseted mesh with red plate. Then you can have internal palate easily.
I used ShrinkWrap with Target edge length = 3 and Offset = -10.

After you have this internal plate, you can use MeshBooleanUnion.

1 Like

Hi Yoon,
Thank you for the demo,

I’ve tried your method, but same thing when I MeshBooleanUnion the shrinkwraped mesh and the MeshBooleanIntersected red plate, it filles up the whole space…