Introduction to Grasshopper

by VJ Taverna

VJ Taverna is a junior mechanical engineer at the University of Pittsburgh. He is our longest serving intern, having started working with Fluxspace in early 2021. He pushes the limits of our 3D printers and laser cutters every day.

June 24, 2022

The world of computed-aided design (CAD) is filled with confusing terminology and complex softwares. On one end of the spectrum of CAD softwares, you have those made for animators and 3D illustrators, such as Blender. On the other end, you have those made for engineers like Solidworks or Fusion360. However, when tasked with creating something that incorporates both artistic elements and engineering elements, we turn to architects. Architects frequently use the CAD software Rhino, because it has a variety of different tools and plugins to create visually pleasing, yet precise creations.

Inside Rhino lies a plugin called Grasshopper, which allows users to procedurally generate 3D models. That is, users can create a procedure for the program to follow to create their object. Additionally, Grasshopper empowers users to parameterize the procedure for generation of an object. This allows for massive changes to ripple through a design with little time input.

I first heard about Grasshopper in a conversation with our friends at DiveDesign (Go check them out!) about a month ago at our Steam Festival (Also check it out!). They explained how it gave them the tools to create a quickly changing 3D model to show clients different options for what a final product might look like in a render. Immediately, I got extremely excited; I had been toying with methods of incorporating procedural generation into my own CAD models using Wolfram Mathematica and Solidworks but had realized that it would be incredibly inefficient. Solidworks wasn’t made to design things based off of 3D graphs, and Wolfram Mathematica wasn’t made to export 3D models. Fortunately for me, Grasshopper was made capable of doing both of these things. The following Monday, I started my 90-day free trial of Rhino.

We at Fluxspace, of course, prefer things that everyone can use. Which is why we’re extremely excited about the web app ShapeDiver. ShapeDiver allows designers to post their Grasshopper scripts online with a user interface to adjust the parameters that have been incorporated. This opens an unbelievably awesome can of worms. Designers are empowered to create customizable pieces that they can sell online using ShapeDiver, while clients are empowered to customize their piece before they purchase it! The combination of these two things creates a whole new playing field for e-commerce. However, even cooler than that, in my opinion is the opportunity to—in the words of our boys at DiveDesign—democratize CAD. Finally, people who have no interest or lack the time to learn CAD can access 3D printing! Not just by copying files from Thingiverse, but by creating their own models!

Learning Grasshopper can be extremely overwhelming, so I think it’s easiest to start by working with TinkerCAD’s codeblocks feature to get a feel for how to procedurally model. From there, I started watching tutorials made by the creator of Grasshopper to get oriented with the software itself. After that, I started following some basic vase tutorials to get a sense for how the different array and pattern tools work, since these are some of the most powerful tools in the program. Once I had a basic toolkit from that I asked around the building what folks could envision and got to work. Now it’s your turn. I hope you enjoy Grasshopper as much as I do.

materials

https://www.rhino3d.com/download

keep reading