2025-05-17 03:54 PM
Hello, I am currently working on a parametric facade in archicad and grasshopper and the idea is that the curtain wall panels are a sheet metal which have a grid of circular perforations, and the parametric aspect is that i would like to add an attractor point/curve that makes the holes larger or smaller. I am wondering if it is possible for GH to take an existing curtain wall from archicad, extract from it only the panels and replace them with ones that can be adjusted by this attractor point script, and then also sync back to archicad in the same position. How would i go about achieving this effect? Would it be better to try and build the curtain wall in GH from scratch, or even to just make the panels entirely separate? I saw some videos achieving similar things but not much info on the archicad-GH curtain wall object.
Operating system used: Windows INT 3001
2025-05-18 10:01 PM
The Archicad-Grasshopper connection cannot modify geometry that it did not create. So, any geometry you bring into Rhino-Grasshopper from Archicad with the relevant components can only serve as a reference geometry, based on which you will need to create your Curtain Wall with the attractor point affecting its panels.
2 weeks ago
I think there is a feasible approach, which is to use GDL to achieve this. I have a few ideas and if they work out, I will share them here. I believe it’s better not to use the Curtain Wall component in the AC connection set—it is too complex yet difficult to customize. Using GDL is the best way.
2 weeks ago
I think I’m almost done by combining GH + Python and GDL. The last issue I’m facing is that the holes don’t render correctly — only the first hole looks fine. I suspect it’s a status code error, and I’ll fix it soon once I find the cause.
2 weeks ago
I have completed it, and I drew the following process as my experience: Grasshopper will design the geometric form, Python will process the data to feed into GDL. I believe most geometries can be done this way.
I will write a small guide on this forum about my approach, in case it could be helpful to someone else.
2 weeks ago
Can you attach a LoD to the generated panels? Circular holes can get poly heavy very fast...
AC22-28 AUS 3110 | Help Those Help You - Add a Signature |
Self-taught, bend it till it breaks | Creating a Thread |
Win11 | i9 10850K | 64GB | RX6600 | Win11 | R5 2600 | 16GB | GTX1660 |
a week ago
Thanks, I’m just testing the modeling capabilities in GDL. As shown above, each panel has about 200 holes, with roughly 4,500 holes in total. The model slows down a bit but it’s not too heavy. Since my computer is quite old, I assume it wouldn’t be an issue on a more powerful machine. I’ll lower the RESOL value when working with the overall model.
a week ago
There is a point (in terms of number of polygons in 3D) that can cause slowness due to the sheer amount of processing power required. It usually happens when you are dealing with millions of polygons (less on older machines or machines with lower specs).
The default RESOL values in GDL is 36, if I remember correctly, so with 4500 holes, that is already over a hundred thousand polygons. And if you will have many more of these panels, that can go into the millions of polygons, so using the RESOL command is probably the way to make easier to handle.
a week ago
Very interesting topic!
@RhinoX I assume you just gave a prism an array of coordinates and sizes and then you will `put` them in in a for loop, fed to a prism?
On a sidenote: if the holes will be of much different sizes it will probably better to switch to TOLER instead of RESOL.
While RESOL is much easier to grasp ("how many segments per ideal circle") it will also lead to janky forms. TOLER is adaptive to the radius because one gives the maximal deviation from the ideal circle.
a week ago
- last edited
a week ago
by
Laszlo Nagy
Exactly. First, I’ll use xform to switch the coordinate system, then process the data with Python and feed it into GDL.