Skip to content

6. Computational Couture

Intro

Computational Couture week got me obssesed literally! Merging fashion with algorithmic design felt truely limitless, wanting to try endless concepts, patterns and possibilities. The idea of designing pieces that respond to data, adapt to percise equations, opened a completely new dimension for me, where it became both experimental and deeply addictive.

General Workflow

I. Inspiration and References

II. Introduction to Parametric 3d Modelling

1. Rhino and Grasshopper Workflow

Rhino provides full control over geometry creation and modification, while Grasshopper acts as a visual programming environment that drives this geometry through parameters and logic. Changes are made instantly and non-destructively, allowing iterative design and rapid testing, accordingly we can use it for complex pattern exploration and generation of fabrication-ready outputs.

Afterwards we can simply connect an a point, or any 2d or 3d geometry in Rhino to component in Grasshopper

Connecting geometry in Rhino to component in Grasshopper

To connect geometry from Rhino to a component in Grasshopper, select the geometry directly in the Rhino viewport, right-click the component’s input and choose Set One or Set Multiple, this links the Rhino object to Grasshopper so it can be controlled and modified parametrically.

2. Visual Programming with Grasshopper

Grasshopper was difficult to grasp at first and I must confess with each new idea it was a bit challenging, but with some repetition of different tutorials and exercises you do start to get the hang of its logic, as it is a very practical tool for parametric control and faster design exploration.

Grasshopper 101

You can add components in Grasshopper either by double-clicking on the canvas and typing the component name, or by selecting it from the menu and clicking on the canvas to place it.

Most Useful Starter Components in Grasshopper
  • Number Slider – controls any numeric input

  • Construct Point – creates points from X, Y, Z values

  • Move – move geometry

  • Rotate – rotate geometry

  • Scale – resize geometry

  • Divide Curve – split curves into points

  • Extrude – turn 2D shapes into 3D

  • Panel – view data passing through wires

Basic Grasshopper Workflow
  1. Start with geometry or a base input: Use a point, curve, or surface (either drawn in Rhino or generated in Grasshopper).

  2. Add components step by step: Move → Rotate → Scale → Divide → Extrude → etc.

  3. Control everything with parameters: Use sliders to change values like height, number of divisions, radius, etc.

  4. Preview and bake: Right-click > Bake to convert Grasshopper output into real Rhino geometry.

First Grasshopper Definition Trial in Class

A definition to create an extruded polygon.

Note

Don't forget to choose group prior to baking.

We can continue on this definition by creating a pattern from our geometry by using one of the Array components such as rectangular or polar array.

Export 3d geometry for 3d slicer
  • Select geometry

  • From File >> Export Selected >> Save as stl. (make sure binary is checked in options)

Grasshopper Cheat Sheet

Since this was my first time using Grasshopper, I put together a cheat sheet with the key definitions and components that helped me get started, hoping it can do the same for other beginners.

Mini Grasshopper Cheat Sheet (Components and their Purposes)

1. Inputs & Parameters

Number Slider :Adjust numeric values interactively

Panel :View or type text, numbers, or lists

Construct Point :Create a point using X, Y, Z values

Point / Curve / Surface Params :Reference Rhino geometry

2. Basic Geometry

Line :Create a line between two points

Circle :Create a circle by center + radius

Rectangle :Create rectangles by width/height

Polygon :Generate regular polygons

Boundary Surface :Create a surface from closed curves

3. Transformations

Move :Move geometry in a direction

Rotate :Rotate around a point/axis

Scale :Scale from a base point

Mirror :Mirror geometry

Extrude :5Execute 2D to 3D extrusion

4. Math & Logic

Addition/Subtract/Multiply/Divide :Math operations

Range :Create a list of numbers between a domain

Series :Generate a sequence of numbers

Domain :Define numeric limits

5. Lists & Data

List Item :Pick an item from a list

Cull Pattern :Remove items using True/False patterns

Flip Matrix :Reorganize data

Merge :Combine lists

Flatten :Simplify data tree

Graft :Split data into branches

6. Analysis & Division

Divide Curve :Split a curve into equal segments

Evaluate Curve :Get position on a curve

Area :Find area + centroid

Surface Normals :Extract direction from surface

Contour :Create sectional slices

7. Intersections & Sets

Intersect :Find intersections

Solid Difference :Subtract solids

Solid Union :Merge solids

Dispatch :Split a list into two groups

III. Overview of Textile 3D Printing Process

After exporting the geometry from Rhino as an STL file, we open it in a 3D slicer that matches the printer being used. In my case, I worked with the Ultimaker S5 and the Prusa XL Enclosure, so I prepared separate workflows based on the requirements of each machine.

Ultimaker S5

The Ultimaker S5 is a professional FDM 3D printer known for its reliability, dual extrusion capabilities, and large build volume. It allows printing with multiple materials in one job and delivers consistent, high-quality results, making it suitable for detailed prototypes, functional parts, and experimental fabrication like 3D printing on textiles.

1. Slicing via Ultimaker Cura
  • When we open Ultimaker Cura we get the following interface:

  • Generic slicing process for 3d printing

Slicing in Cura Generic Process for (Ultimaker S5)
  • Open Stl. file with Ultimaker Cura.

  • Set Printer: Ultimaker S5.

  • Set Material: TPU or PLA

  • Make sure the model is placed flat on the build plate (Z = 0).

  • Adjust scale.

  • Adjust print settings.

  • Add a pause after layer 1 or 2 to insert fabric (if we are printing on a fabric).

  • Click Slice and save the file.

Make a pause!
  • If we are printing on fabric we should make sure a pause happens after first or second layer in order to adjust the fabric above the first printed layer,assuring material bond on the fabric (in example: PLA on fabric), however if we are printing a fabric by itself we don't need to pause (in example: printing TPU mesh fabric layer)

How to make a pause? Extensions → Post Processing → Modify G-Code → Add Pause at Layer Number 1 or 2

2. 3D Printing Process

Clean the nozzle!

Don't forget to clean the nozzle before starting, especially after extruding the first material, to make sure the first layer is unobstructed.

3D Printing on Fabric

Below is a class a demo:

3D Printing as Fabric

3D printing as fabric follows the same process, but without adding a pause or inserting fabric. The material must be TPU, and the geometry needs to be interconnected so the print can function as a continuous, flexible structure.

Prusa XL Enclosure

The Prusa XL with Enclosure is a large-scale, high-precision 3D printer built for advanced and multi-material fabrication. Its enclosure provides a stable, temperature-controlled environment to improve print quality and reduce warping. Equipped with a modular multi-tool system, it enables clean material switching and reliable printing of engineering and flexible filaments, making it ideal for complex and experimental workflows.

1. Slicing via Prusa Slicer 2.9.3
  • When we open Prusa Slicer we get the following interface:
  • How to add a new printer to Prusa Slicer
Slicing via Prusa Slicer (Generic Workflow)
  • Prepare the 3D model and export it as an STL file.

  • Open PrusaSlicer → Set Printer: Prusa XL and select PLA or TPU filament.

  • Import the STL, place it on the build plate, and adjust orientation if needed.

  • Set print parameters:

PLA: 0.2mm layer, 40–50 mm/s, 205–210 °C nozzle, 60 °C bed, 0% infill

TPU: 0.2mm layer, 20–30 mm/s, 230 °C nozzle, 50 °C bed, retraction OFF, flow 110–115%

  • Add pause for fabric after Layer 1 or 2: Right-click model → Add Pause (M601).

  • Click Slice → review first layers → Export G-code.

2. 3D Printing Process

3D Printing with Prusa XL Enclosure
  • Turn on printer and make sure enclosure doors are closed.

  • Preheat the toolhead and bed for the filament you sliced for (use the printer menu → Preheat).

  • On the printer, Insert flash drive into the USB port on the printer. and keep it in.

  • On the printer screen choose Print from USB / Files and select your G-code.

  • Confirm filament/tool assignment if prompted (which tool/nozzle will print).

  • Start the print, wait for it to finish.

  • Watch first layer(s) closely — confirm extrusion is consistent and first layer adheres.

  • If you added an automatic pause (M601) for fabric or an intervention, the printer will stop at the set layer:

When paused, follow the on-screen prompt (usually Unload/Resume options).

Place and secure the fabric over the printed base with magnets (flat + tight), make sure nothing blocks the nozzle path.

  • Click Resume and continue printing onto the fabric.

  • For TPU prints: monitor for filament buckling / under-extrusion; keep speeds low and watch the extruder drive.

  • Let the print finish fully. Do not open the enclosure while hot unless necessary.

  • Clean the build plate of filament residue and remove any tape/clips used to secure fabric.

IV. Research Study

1. Study A : Sadu Stitch Pattern (Small Size)

Technique

Printing PLA on Fabric (Tulle) with Ultimaker S5

Swatch

Workflow

3d Printing and Slicing Settings
  • Printer: Ultimaker S5

  • Material: PLA

  • Make sure the model is placed flat on the build plate (Z = 0).

  • Adjust slicing settings:

Layer Height: 0.15–0.2 mm

Wall Line Count: 2

Top/Bottom Layers: 4

Infill Density: 20%

Infill Pattern: Triangles

Print Speed: 70 mm/s

Initial Layer Print Speed: 6 mm/s

Fan Speed: 100%

Initial Fan Speed: 0.0%

Printing Temp: 205°C

Build Plate Temp: 60°C

Build Plate Adhesion Type: None

Disable supports.

  • Add a pause after layer 1 or 2 to insert fabric: Extensions → Post Processing → Modify G-Code → Add Pause at Height

  • Click Slice and save the file.

2. Study B : Sadu Pattern (Big Size)

In this study I went with same workflow and setting of Study A, except for enlarging the scale of pattern and minimizing the amount of repititions. I made this study on 2 colors, black and pink.

Technique

Printing PLA on Fabric (Tulle) with Ultimaker S5

Pink Swatch

Black Swatch

Workflow

3d Printing and Slicing Settings
  • Printer: Ultimaker S5

  • Material: PLA

  • Make sure the model is placed flat on the build plate (Z = 0).

  • Adjust slicing settings:

Layer Height: 0.2 mm

Wall Line Count: 2

Top/Bottom Layers: 4

Infill Density: 20%

Infill Pattern: Triangles

Print Speed: 70 mm/s

Initial Layer Print Speed: 6 mm/s

Fan Speed: 100%

Initial Fan Speed: 0.0%

Printing Temp: 205°C

Build Plate Temp: 60°C

Build Plate Adhesion Type: None

Disable supports.

  • Add a pause after layer 1 or 2 to insert fabric: Extensions → Post Processing → Modify G-Code → Add Pause at Height

  • Click Slice and save the file.

3. Study C : Octa Star Lace

Technique

Printing TPU as Fabric with Ultimaker S5

Swatch

Workflow

3d Printing and Slicing Settings
  • Printer: Ultimaker S5

  • Material: TPU 95A

  • Make sure the model is placed flat on the build plate (Z = 0).

  • Adjust slicing settings:

Layer Height: 0.2 mm

Wall Line Count: 2

Top/Bottom Thickness: 1.2 mm

Top Thickness: 0.0 mm

Top Layers: 0

Bottom Thickness: 0.0 mm

Bottom Layers: 0

Infill Density: 30%

Infill Pattern: Gyroid

Print Speed: 25 mm/s

Initial Layer Print Speed: 10 mm/s

Fan Speed: 0.0%

Initial Fan Speed: 0.0%

Printing Temp: 205°C

Build Plate Temp: 60°C

Build Plate Adhesion Type: None

Disable supports.

  • Click Slice and save the file.

4. Study D : Lace Weave on Fabric.

Technique

Printing TPU on Fabric (Tulle) with Ultimaker S5

Swatch

Workflow

In this study I went with same workflow and setting of Study C, except for printing it on fabric and changing the Infill pattern in Cura to ''Concentric''.

3d Printing and Slicing Settings
  • Printer: Ultimaker S5

  • Material: TPU 95A

  • Make sure the model is placed flat on the build plate (Z = 0).

  • Adjust slicing settings:

Layer Height: 0.2 mm

Wall Line Count: 2

Top/Bottom Thickness: 1.2 mm

Top Thickness: 0.0 mm

Top Layers: 0

Bottom Thickness: 0.0 mm

Bottom Layers: 0

Infill Density: 30%

Infill Pattern: Concentric

Print Speed: 25 mm/s

Initial Layer Print Speed: 10 mm/s

Fan Speed: 0.0%

Initial Fan Speed: 0.0%

Printing Temp: 205°C

Build Plate Temp: 60°C

Build Plate Adhesion Type: None

Disable supports.

  • Add a pause after layer 1 or 2 to insert fabric: Extensions → Post Processing → Modify G-Code → Add Pause at Height

  • Click Slice and save the file.

5. Study E : Monochrome Cubes

Technique

Printing PLA on Fabric (Tulle) with Prusa XL Enclosure

Swatch

Workflow

3d Printing and Slicing Settings
  • Printer: Prusa Slicer 2.9.3

  • Material: PLA

  • Prepare the 3D model and export it as an STL file.

  • Adjust slicing settings:

Open PrusaSlicer → Set Printer: Prusa XL and select PLA or TPU filament.

Import the STL, place it on the build plate, and adjust orientation if needed.

Make sure the model is placed flat on the build plate (Z = 0).

Set print parameters:

Assign 1st group to white PLA and 2nd group to black PLA

PLA: 0.2mm layer, 40–50 mm/s, 205–210 °C nozzle, 60 °C bed, 0% infill

Add pause for fabric after Layer 1 or 2: Right-click model → Add Pause (M601).

Click Slice → review first layers → Export G-code.

Tools

Fabrication files