Pinholes for perforated facade

I am attempting to make a perforated facade from an article I read.

The portion of my metal facade which has the pinholes is 9 ft x 9 ft and 1" thick.

The perforations are 5 mm in diameter and are spaced 2 mm apart.

I have used GH, have used cylinders and tried BooleanDifference and my latest attempt is using extruded and capped circles as block elements with an array having the distance for the holes being 12 mm for both X and Y directions and then using BooleanDIfference in Rhino.

My computer is quite good with the CPU running at 5.2 Ghz, 64GB of DDR5 and an RTX 4090 graphics card, but this last attempt has been running (and continues to do so) for more than 10 minutes and I only used 1/4 of the space mentioned above for the facade.

Is there a more efficient way of doing this in Rhino so that I do not have to wait for more than 10 minutes for just one (1) facade?

Should I break it down into multiple smaller facades and then place them together?

I will be placing the facade pieces on a high-rise tower, so there will be many of them.

Thank you for any suggestions.

There are many possibilities to improve the process, but without pics or file, the answers will be speculative at best.

Possible course of actions instead of boolean:

  • Use a surface and “split” the holes. And only after that _ExtrudeSrf or OffsetSrf
  • Draw panel outline and holes as curves on same flat plane. Then do _PlanarSrf to get the perforated surface. This is propably the fastest method.

Something like this is/can be managed in under a minute even in gh with the right and smart process.

Thank you very much!

I waited for at least 30 minutes as my computer tried to save the Rhino file, and when it was still not saved, I used the Task Manager to end the task.

When I reopened the auto-Rhino-backup file, I saw that it was larger than 4.5 GB, so I decided to not save it.

A photo of what I am trying to achieve is the following:

Blanco, J. M., A. Buruaga, J. Cuadrado, and A. Zapico. “Assessment of the Influence of Façade Location and Orientation in Indoor Environment of Double-Skin Building Envelopes with Perforated Metal Sheets.” Building and Environment 163, no. 106325 (2019): 106325. Redirecting.

Looking at your picture, consider adapting the following process:
-panel outlines as curves
-perforation as hatch
-with the hatch scale you can freely and fast define the and change the perforation size
-once you actually really really need 3d, then explode the hatch to curves and proceed from there

This whole process can be in Gh as well

@Toni_Osterlund I must be doing your second suggestion incorrectly.

  1. I created a rectangle as a curve.
  2. Then I created a circle as a curve with a diameter of 5 mm.
  3. I used Array to give me 100x100 circles which are spaced 30 mm apart.
  4. a. Next, I used the PlanarSrf command on the circles and rectangle and it took about 5 minutes to give me a surface.
  5. b. I re-did the previous step, but only using the circles with PlanarSrf and it still took 3 minutes to give me surfaces. I now have 10,000 surfaces and open extrusions.

I would like to include my Rhino file, but even when I Save Small, it is still 24 MB. (I also deleted the rectangle and the curves to try and make it as small as I could.)

Did I miss something?

I thank you for your time.

Could you “export selected” one panel’s curves?

PerfFacade-1.3dm (4.2 MB)

Of course. How stupid of me to not have thought of doing that earlier.

That is one tight perforation…

  1. Why do you need 3D? Why not 2D?
  2. If for renders, maybe use texture instead. If for fabrication, 2D should be enough.
  3. Are all panels the same? If so, then create one block and populate facades with that.
  4. For preview or 3D purposes, remember that meshes are way more lightweight than breps and surfaces.

I just looked at the Lumi Supercomputer Envelope. Amazingly complex.

  1. I could probably get away with 2D; I am doing a light study that incorporates the depth of the screen/panel. From my research, this needs to be no less than 1 cm thick. Also, I was wanting to change the angle of the holes to be not perpendicular to the panel, but rotated to about 35 degrees. Lastly with this, I would like to 3D print the tower on which these panels will be placed, so at some point it will need to be 3D.
  2. I would like to render it, but no actual fabrication.
  3. I could also get away with all panels being the same. I did try to create a block of extruded circles, but what does your idea of using a block entail?
  4. I did not know that about meshes being more lightweight. I could certainly try something with that.

Again, thank you for your time and suggestions.

I can look it a bit more detailed in the evening (now being noon-ish), but I have to say that optimisation of the process for a lightweight model is usually case-by-case study.

  1. Depending on the renderer, use proxy objects.
  2. I was thinking that once you get one panel, make it into a block. One option would also be to divide the panel itself also into blocks; frame and rectangular part with one hole. Then populate the frame interior with holes. Blocks are more lightweight as well because they reuse the geometry.
  3. Every surface and polysurface is meshed before displaying it on screen. Rhino does this automaticallly, but this takes a bit time to compute. If you already have mesh objects instead, it’s much more lightweight. However as meshed are approximations, the needed resolution of the mesh needs to be carefully considered. And also that there is a profound different between 1000 mesh objects with each having 1 face, and one mesh with 1000 faces. Esch mesh object comes with an overhead costs.

I quickly tested this fast perforation method by @dale

It seems that the outline needs to be a Rhino surface in order to work.
It gives me about 7mins for the current outline and the 10.000 holes you had in the file (on an old laptop).
This includes the meshing and mesh Offsetting… The thickening seems to be the slowest operation by far.
The perforations are generated only in about 10secs. But for display and file saving purposes the meshes are way more lightweight to use.

Fast (210.2 KB)

Also note that in order for the _PlanarSrf to work on your file, you need to increase the File tolerance to 0.001. Otherwise I couldn’t get the outline and holes recognised to be on the same plane.

1 Like

Thank you so much for your time and assistance.

I am only able to utilize my phone right now, but I will definitely utilize your suggestions and see what I get!

Again, a tremendous thank you for your assistance.

1 Like