Algorithmic design

case studies

Explanations of recent parametric projects. Click images or titles for more info

Nautilus Lamp

A lampshade constructed from variegated lasercut paper strips which are curved and overlapped to resemble a nautilus shell.

The Grasshopper script provides adjustable inputs for the  number of slats, the slat width, and the waviness of the edge.

lampshade render
parametric lampshade constructed from green lasercut Priplak strips

The competition comprised two rounds and challenged participants to design and manufacture the most aesthetic, ergonomic, and overall impressive pen. Both rounds required the pen to fit a standard Uniclick ballpoint cartridge. In the first round, designs were printed in Nylon using Selective Laser Sintering. The top 10 designs were chosen to compete in the second round, where the final pens were printed in a mixture of stainless steel and nylon.

Design Round 1

The pen comprises a click-on cap and 2 body pieces that enclose the pen cartridge. The body pieces screw together via a 3d-printed thread and feature embossed Differential Growth patterns, for visual interest and added grip. The cap features frills created with a differential growth algorithm. These create volume and grippy surfaces and also stop the pen from rolling when placed on a flat surface.  The printed nylon parts were dyed different colours, for added sea-creature resemblance.

Design Round 2

A pen inspired by ocean-dwelling creatures like coral, radiolaria, and crinoids, which is pleasing to write with, but also forms an aesthetic and unusual object which might have been found at the bottom of some ocean trench. I first modelled the overall shape and twist-extension mechanism in Rhino, and then developed a parametric Grasshopper script that combined remeshing, differential growth, and dual mesh algorithms to convert the outer form into an organic and frilly lattice, resembling illustrations of radiolaria by Haeckel. After printing, plastic parts were dyed green for a more biological appearance

A series of silver rings featuring unique patterns created with a Reaction Diffusion algorithm.

For each customer, a custom ring shape is created based on their preferences and finger size. The Reaction Diffusion algorithm is then applied to the surface. Because the algorithm uses different random seeds and design parameters each time it is run, no two rings are alike. The result is a striking piece with a unique pattern mimicking those found in many places in nature, from corals and fish skin to ferrofluids and convection patterns.

A collaboration with local prop and mascot manufacturer CompassRoseCollective to model and 3d print the facial features for various mascot characters. I created a Grasshopper script that produces mouths of different shapes based on 2 input curves and a single tooth model. A separate script was used to create eyes of varying “openness”. The resulting meshes were watertight and ready to print.

The script saved a lot of modelling time on future mascot orders for different characters.

Inspired by the classic Taiyo toy, updated with various features including glowing indicator bulbs and a colourful metallic finish. Raised reaction-diffusion patterning on the handle and nozzle serves as a grip and gives the device a more organic feel.

raygun5

A parametric Grasshopper script to aid an orthotist or prosthesist in the creation of a corrective helmet for an infant with plagiocephaly. This tool uses a 3D scan of the infant’s head, along with several adjustable design curves, and outputs a symmetrical 3D-printable helmet to encourage even growth of the child’s skull.

The script also lets the user select different lattice patterns, which make the helmet lighter and breathable. The helmet can also be embossed with the name of the child.

Custom helmet for an infant with plagiocephaly or brachiocephaly. Generated procedurally from 3D scan of the patients head and design curves (in collaboration with Calvaria, Canada)

An adapted version of the helmet script, for creating a custom protective face mask from a 3D scan of an athlete’s face. Commonly used in contact sports such as ice hockey and basketball.

The same script was adapted to create a variety of patterned masks for fancy-dress parties.

A client required a parametric Grasshopper script to create a variety of benches in the style of Matthias Pliessnig. They wanted to be able to input several open or closed curves to describe the shape of the bench, and then edit them in real-time to adjust that shape.

Various parameters needed to be adjustable, such as the number of vertical ribs and horizontal slats, as well as the width and thickness of these components. Desired outputs included the 3D model of the bench (for rendering), as well as labelled profile curves of the bench ribs, for laser cutting.

In addition to the Grasshopper script, the client was provided with a screen-capture video tutorial of how to use the script to create additional iterations.

 

An engagement ring was required as a prop for the film <em>Redeeming Love</em>. They had sourced a simple silver and labradorite ring with a delicate bone design, but they needed it resized to two different ring sizes, to make sure it fitted the actress’s finger. They also required a copy of each size, so that if one was lost, there could still be continuity across shots.

I modelled a single “bone” in Rhino, and then created a Grasshopper script that duplicated the bone and “rolled it up” into a ring of the correct size. The models were then 3D printed and cast in silver, and set with cubic zirconia, for that classic diamond look.

The Grasshopper script can be used to make a variety of rings, by inputting different base objects, and adjusting the ring size and number of repeats.

render of modelled ring
3d printed ring copies

A Grasshopper script to create a series of rings with wavy profiles, based on the smooth oscillations of a sine curve. The script generates a circle with a specified radius, divides that curve into points, and displaces them in 3 dimensions, with the displacement distance specified by a sine curve. The points are then joined up again with arcs, which are lofted together to create the undulating form.

By adjusting the input parameters of the sine curve (e.g. amplitude, frequency, and shift), one can easily adjust the shape of the ring, changing the ring size, the number of peaks or “blobs”, and the width and height of the ring at various points. Embellishments can then be added, along or across the ring shank, to create an interesting and unique ring form.

The rings with an even number of peaks appealed to me the most, and I ended up selecting a 4-peak ring with lateral pipes for 3D printing. I then cast this print in silver, and added some surface oxidation (or blackening) to highlight the surface pipes.

sine-curve ring