M3: A Seat at the Table
- Joelle McDonald

- Mar 9, 2025
- 3 min read
In this assignment I will use parametric code to generate furniture designs to be printed in miniature. This challenge should be a good brush up of my existing skills in parametric code for model generation and 3D printing. It is my first attempt at using code to create my own design for 3D printing.
Tools and Materials Used: Grasshopper, Rhino, PrusaSlicer Software, Prusa MINI2 FDM printer, PLA, Acrylic, Laser Cutter, Mod Podge
Resources Referenced: Parametric Vase Design Tutorial
Design One: Coffee Table with Storage

For my first design I was interested in creating a coffee table design with built in storage and a clear acrylic top. This design was guided by existing class tables on the market. To achieve the storage and a rim upon which the clear top could rest, I had to create two cylinders to subtract from the modeled table: one the depth of the clear topper to serve as a rim and one the depth of the storage space. I built these into my algorithm knowing this would be my only design with storage, and thus ensured I could set the parameters such that the cylinders would be absent from other designs without changes to the code itself.
Below is a snapshot of the code I used to generate this storage-filled coffee table and tabletop.

To view the files associated with this design in GitHub, use the links below.
Once the design was prepared, I 3D printed the table with organic supports and laser cut the top out of clear acrylic. I then frosted the acrylic top with texturized Mod Podge. I used orange PLA filament for the print due to availability, though aesthetically I imagine a neutral colored option being ideal. The fabricated model is pictured below. It matches my generation very closely and I am pleased with the outcome.

Design Two: Cocktail Table with a Twist

For my first design I was created a much taller and narrow-based table to suit the purpose of a cocktail table.
Below is a snapshot of the code I used to generate this storage-filled coffee table and tabletop. You will notice two code boxes producing warnings. These boxes are responsible for the storage cutout and are warning that the parameters are set such that the cylinders used to create negative space do not exist. This is intentional.

To view the files associated with this design in GitHub, use the links below.
I chose not to 3D print this design, though I still generated the STL file for printing. This print would create some fragile sections that would be difficult to non-destructively remove supports from.
Design Three: Jagged Dining Table

For my final design, I chose to make a dining table. This rounded out my table functionalities to a nice set: coffee, cocktail, and dining.
Again, below is a snapshot of the code I used to generate this storage-filled coffee table and tabletop. You will notice two code boxes producing warnings. These boxes are responsible for the storage cutout and are warning that the parameters are set such that the cylinders used to create negative space do not exist. This is intentional.

To view the files associated with this design in GitHub, use the links below.
Once the design was prepared, I 3D printed the table with organic supports. I used orange PLA filament for the print due to availability, though aesthetically I imagine a more muted color or tone being ideal. The fabricated model, pictured below, is more jagged than the generated preview appears. I prefer the rendering's appearance to the printed output.




Comments