Hello, I have this pattern applied to a surface, but I have no idea on how to delete the circles I created off the surface, im trying to make a metallic perforated facade.
Thank you!
Perforated surface model.3dm (2.4 MB)
perforated surface.gh (10.4 KB)
Iâm not sure I understand? You want the circles to cut holes in the surface, right?
6040 circles takes SrfSplit one full minute! No need for most of your code.
perforated surface_2025Jun21a.gh (12.3 KB)
If you want to avoid circles on the edges, the purple group in this version does that. 5562 holes instead of 6040, but that alone doesnât explain the big difference in profiler times? Only 26.0s instead of 1.0m
Still, I added a Data Dam (red group).
perforated surface_2025Jun21b.gh (19.4 KB)
Thank you! I was also wondering how to do that. ![]()
Iâm guessing fully-interior cuts are less resource intensive since itâs just adding a trim loop to the brep. The edge-intersecting trims have to repeatedly split and rejoin the boundary.
This might not matter if you donât care about R7. But itâs still my default for opening GH files so I âdiscoveredâ the dependency on the R8 Rhino file - and âfixed itâ by internalizing the surface.
Then was reminded that GH (R7 and R8) always bypass the Data Dam when opening the GH file. ![]()
I remembered a post I read recently by @AndersDeleuran that has a Python solution to that problem so tried it.
perforated surface_2025Jun21bb.gh (24.6 KB)
The way this works is that the Data Dam is disabled when you first open the GH file, allowing changes to the âUV Countâ sliders without triggering the SLOW SrfSplit component. The circles are visible though. When you want to cut holes the first time, you must click âEnableâ in the group at the top. Nothing happens! After ~24 seconds, SrfSplit completes and a short while later, the holes appear. The delays are not ideal, of course.
After that, Data Dam is enabled, the âUV Countâ sliders can be used and when ready to cut holes again, the button on Data Dam is clicked. Tested in R8. ![]()
I was wondering, once I get the code to the point that everything is already done, how could I actually cut the holes through the surface? Because after I could delete the circles, I would like to create an extrusion of the surface, so I can use it on my model, I donât know if thatâs possible, maybe I would need to change the code based on an extrusion and not a surfaceâŚ
Very basic GH ![]()
GH components generally copy geometry. In other words, the holes are cut in a copy of the surface, which can be extruded (in GH) and must be baked to get something useable in Rhino.
Extruded holes:
Baked extruded holes:





