A Great Way To Learn Grasshopper

By on January 9th, 2020 in book

Tags: , , , ,

 A new book on Grasshopper [Source: McNeel]
A new book on Grasshopper [Source: McNeel]

I’m looking through a fascinating eBook on how to create algorithms for McNeel’s Grasshopper

If you’re not familiar with Grasshopper, it’s an add-on for the popular Rhinoceros 3D CAD software system. While “Rhino3D” is a very handy and easy-to-use 3D CAD system, the Grasshopper feature takes it to places few, if any, other CAD systems can go. 

Generative Design with Grasshopper

Grasshopper is a graphical programming environment that can generate 3D models from algorithms. 

Readers may be familiar with the parametric design approach, where subcomponents of a design are “parametric”, that is, their dimensions and attributes can be modified at any time. This is an incredibly handy feature, as the changes can generate a cascade of dependent changes instantly. This can save a considerable amount of redesign effort. 

But an algorithmic approach is much, much deeper. Instead of simply tweaking a parameter, you can create highly sophisticated algorithms that not only change the 3D model, but actually create it from nothing! 

Grasshopper is quite visual, in that its interface is much like a flowchart. You start with some input parameters and push them through a series of builtin functions & combinations to generate a 3D model. However, it is essentially programming. 

Here’s an example of an extremely simple Grasshopper flow:

 Grasshopper circle generator [Source: McNeel]
Grasshopper circle generator [Source: McNeel]

As programming, any competent programmer should be able to pick up Grasshopper syntax and flow easily. The difficulty is this: how, exactly, do you make algorithms to generate structures in 3D space? 

That’s what McNeel’s latest eBook is all about. It’s titled, “Essential Algorithms and Data Structures for Computational Design in Grasshopper”, and that’s exactly what it is. 

Learning Grasshopper

The book takes you through the basics of Grasshopper syntax, flows and data structures, programming tools like sorting, etc, and then digs in deep into algorithms. I am very impressed with their presentation; it’s incredibly easy to follow and anyone with a programming background should breeze through this part. 

Here’s a section of a tutorial to explain how a circle is generated:

 Grasshopper circle tutorial [Source: McNeel]
Grasshopper circle tutorial [Source: McNeel]

What’s very interesting is that they provide a kind of mental approach for building sophisticated generators. The idea is to start at the result and work backwards through a series of steps to create the entire algorithm. 

Grasshopper Truss Tutorial

Here’s a complex and even relevant problem: designing a truss system, perhaps for an aircraft wing:

 Grasshopper Truss tutorial [Source: McNeel]
Grasshopper Truss tutorial [Source: McNeel]

The tutorial goes on for quite a while, but when finished, you assemble all the steps into this Grasshopper solution, which will indeed generate the required truss structure: 

 Grasshopper truss generating flow [Source: McNeel]
Grasshopper truss generating flow [Source: McNeel]

To use Grasshopper, you obviously must have a recent copy of Rhino3D. I should point out that it is not particularly expensive as far as 3D CAD tools go, so it is reasonably accessible. Rhino3D is also available on both Windows and Mac platforms. Grasshopper is automatically included in the package. 

If you’d like to look at this eBook, it is free for download — with registration — at McNeel’s link below. 

Via McNeel

By Kerry Stevenson

Kerry Stevenson, aka "General Fabb" has written over 8,000 stories on 3D printing at Fabbaloo since he launched the venture in 2007, with an intention to promote and grow the incredible technology of 3D printing across the world. So far, it seems to be working!