Sunday - last edited 4 hours ago
Grasshopper and GDL are two powerful tools that bridge the gap between design and BIM. However, learning resources are still quite limited, and often fragmented. In this thread, I will share some of my approaches and workflows so that newcomers can more easily get started.
I use some designs from leading studios as remodeled examples, simply because these projects are too beautiful not to showcase.
1. GRADIENT PANEL
(Designed by Enzyme APD)
This is a stadium designed with triangular panels that shift color in a gradient. The approach can be achieved by creating the panels and gradient in Grasshopper, then bringing them into Archicad as a GDL Object.
The corner anchor points are decomposed into x, y, z coordinates, and the RGB colors are separated into r, g, b values before being passed into GDL as arrays.
Use GDL to group the decomposed values, apply DEFINE MATERIAL for materials, and PLANE for geometry generation. Thickness can be added (if needed) by generating the six plane surfaces of the panel.
Materials and colors can be quickly changed.
You can use this method for mesh models: after running the physics simulation with Kangaroo in Grasshopper, you can simulate the Membrane Structure in Archicad.
Operating system used: Windows
4 hours ago - last edited 4 hours ago
2. THE XFORM
The building façade was designed by Archiradar, featuring panels that can rotate to open at different angles as the sun moves during the day.
The challenging part of this project is that the panels are placed on a curved and twisted surface. This makes it a very interesting project.
First, create the curved surface using control points, then divide it into panels with UV.
Since the panel corners are not coplanar, you need to optimize them to be coplanar, making it easier to model in GDL.
Since most shape-creating commands in GDL are built on the XY plane, we need to align the panel planes with the XY plane in GDL. XFORM will help us do that.
You just need to deconstruct each panel’s plane in Grasshopper, then send it into GDL for XFORM to process.
The coordinates of the panels in the Global system are also converted into the Local system for each individual panel.
Once the coordinate system is standardized and you have the 4 corner points, you can easily create the geometry in GDL.
Since some panels are trapezoidal, the best way is to use the PRISM command with the converted corner point coordinates.
XFORM is a great command and the key point for smoothly converting models from Grasshopper to Archicad through GDL.
3 hours ago - last edited 3 hours ago
3. PUT AND GET
This is a case I posted in another topic, but I’m gathering it here and giving a bit of explanation.
You can use PUT and GET to transfer ARRAY values from Grasshopper, which means you can send the entire geometry from Grasshopper into GDL.
Standardize the plane with XFORM, then use PRISM or EXTRUDE to generate the shape.
Use Python to process Grasshopper data so it matches GDL’s format — for example, adding values like 15, -1, or hole parameters such as 900, 4000....
After Python processes the values, send them to GDL, then use a LOOP in GDL with PUT, and combine it with GET to generate the desired geometry.
You can customize different hole shapes of the panels according to the geometry created in Grasshopper.