Level: Beginner What you learn: working with lists, lists of lists (2D Arrays) and data trees.
Steps
- Make a wall that would serve as a base for perforations. Keep it 2D for now.
Illustration
๐ Hint Hint I: we need to create a plane first. This plane can later be extruded as a wall. Hint II: a plane can be constructed from a line and a point.
โ๏ธSolution
![]()
- Find points on one axis that would be centers of the perforation circles
Illustration
๐ Hint
Hint: divide the line into a number of segments.
โ๏ธSolution
- Propagate these centers along the second axis
Illustration
๐ Hint
Hint: You need to propagate each list along the axis. Check List of lists and Graft option in Grasshopper.
โ๏ธSolution
- Create a shape for your perforation. We can start with a circle.
Illustration
๐ Hint
Hint: you likely want this shape to lie in the same plane as the wall.
โ๏ธSolution
- Place the perforation in the defined cetner points.
Illustration
๐ Hint
Hint: you can use the points defined in step 3 as centers of the circles (or the amount of translation).
โ๏ธSolution
- Change the size of the perforation holes. Implement three different strategies:
- assign same radius to all the perforations
- assign random radius to all the perforations
- create a sphere in the scene, change radius of the holes based on their distance to the sphere (e.g. more distant โ smaller radius)
Illustration
![]()
![]()
๐ Hint
Hint: there is an inbuilt block to calculate distance between two points. Center of the sphere can be the first one.
โ๏ธSolution
![]()
![]()
- Time to perforate the wall! Letโs first extrude the holes.
Illustration
โ๏ธSolution
- Letโs subtract one surface from another
Illustration
๐ Hint
Hint: look through functions under Intersect / Shape.
โ๏ธSolution
-
๐ข Bonus: Add rotating circular panels in the middle of the holes. These panels can have a random rotation or be rotated versus the sphere.
Check out the full script if you get stuck!
This exercise has been developed under the workshop for Umeรฅ universitetetfor the course of Elena Vazquez Peรฑa Architectural Design Studio HT23-24.