How to remove selected points and extrude in both directions?

Hello everyone,

I’m trying to make perforations in my surface but I’m running into a few problems. Firstly, I don’t know how to leave out the points that are not on the surface (circled in black). I managed to leave out the points that are on the perimeter of my surface using Cull Index/Flip Matrix, but am not sure how to connect that back into my Circle CNR component since it doesn’t apply with the proper vector direction.

Secondly, I am not sure how to extrude these circles in both directions to subtract it from my surface. I tried extrude, amplitude but it doesn’t work correctly.

Any help would be greatly appreciated !


BranchPerforations.gh (48.8 KB)

Hi Kayla

Cutting holes in a surface using boolean may not produce the results you are after in this case.

Instead you can Pull the circle to the so it lies on the surface, then you can use surface split. I sorted the results to list the item with the largest remaining surface area.

There are some other things you can do, such as culling the normals in the same was as you did the points. Then the lists/trees will match.


BranchPerforationsv2.gh (35.3 KB)

you are drawing in a really small scale, I’d advice to set the Rhino Tolerance (Options → Units) at least to 0.0001

this said, I would do something like this:

A culls the Points (and Normals) in such a way only the Points that have distance to the surface < 0.001 and distance to the surface boundary > 0.05 are kept

B moves the residue points along 0.1 times the surface normal, then extrudes those -0.2 times surface normals

C splits the surface using those pipes, and just keeps the final surface Fragment with the highest area

BranchPerforations_Re.gh (36.9 KB)

1 Like