Coding for 3D Part 3: Tools of Choice

Share this Article

Design Efficiency

Wasting time and being inefficient are never great strategies. I want to make sure that this is an all encompassing series that will take me from no skill to some skill as a designer and coder. Having a defined target within this series is crucial as it gets me to act. I understand that life becomes easier with intentional movement. I compare it to drawing a straight line. If one has a point on a paper they are drawing a line to, one shouldn’t look at the pencil, but rather the point they are looking to get to. This allows less deviation and a straighter free motion line than if we fixate on things outside of our point. Having a pointed trajectory is nice and it allows for quick prototyping and development. It also makes things easier to begin with. Skeletons and outlines towards a direction lead to tangible results.Today I will be explaining the tools of choice I will be using within this series to grow as a parametric 3D designer and coder.

I did a good amount of preliminary research on what tools are available for people who want to do what I am doing. After a good week of insight and talks with others through email, I have realized what will be my best tools for my series at hand. Firstly, I will be using the 3D modeling software Rhinoceros.


Rhinoceros is a free form surface modeler which uses the NURBS mathematical model. NURBS refers to non-uniform rational basis spline. This is a mathematical model that is used frequently in computer graphics. It generates curves and surfaces. There is a ton of precision embedded within this modeling system. It can handle surfaces that are defined by common mathematical formula (or analytic functions) as well as free form modeled shapes. We will take a deeper dive into NURBS in a different article. The designs created can be efficiently handled by computer programs and yet allow for easy human interaction. NURBS surfaces are functions of two parameters mapping to a surface in three-dimensional space. There are a plethora of plugins that can be used to complement Rhinoceros for fields such as rendering and animation, architecture, marine, jewelry, engineering, and prototyping.


We will be deep diving into Grasshopper when we use Rhino. Grasshopper is a visual programming language that runs inside of the Rhino application. Programs can be made through dragging components onto a canvas. These outputs are connected to inputs of different components to build a larger coding architecture. I like the idea of the program starting of as a visual based coding system. It works for bringing visual thinkers and artistic types into the world of coding, because typically coding is best for those who enjoy writing. Grasshopper is used to build generative algorithms for things like generative art. A lot of grasshopper’s components create 3D geometry. It has a slew of other applications such as numeric, textual, audio-visual, and haptic applications.


Python will be our code language of choice when we want to add more complexity within our program. For those of you who have read my other articles, I like to use Python quite a bit. It so happened that Python was the language of choice for many people who script within the Rhino and Grasshopper environment.

Outside of the technical tools, I will be doing a lot of reading and studying to get me up to speed in different ways. Think Parametric will be an online tutorial series that I will refer to. I want to literally think parametric. This will allow me to seamlessly integrate within a parametric modeling framework. I’ll be using the book “AAD Algorithms-Aided Design: Parametric Strategies Using Grasshopper” for inspiration and more tutorials as well. Lastly I will be reading the book, “The Design of Everyday Things.” I was recommended this book a while ago by a colleague, and I had been meaning to get to it, but this series definitely gives me reason to plunge into it as it will have relevant information for me to use when building parametric designs. 

This is the cookbook I will be using throughout this series. I am also willing to hear from others on recommendations for me in terms of learning resources or groups involved with this type of work. Please contact me through email if interested in helping ([email protected]). I am also looking to do some interviews with people within this line of work, so that I can gain more insight as well.

Share this Article

Recent News

3DPOD Episode 43: Powder Bed Fusion Innovations with Aerosint’s Edouard Moens de Hase

Scale Modeling Tutorials: 3D Modeling Basics for 3D Printing, Part Two


3D Design

3D Printed Art

3D Printed Food

3D Printed Guns

You May Also Like

Scale Modeling Tutorials: 3D Modeling Basics for 3D Printing

In my last article, I discussed the use of 3D printing for scale model hobbyists. Hobbyists are discovering 3D printing to be a useful tool to make customized parts, or...

3D Printing Webinar and Virtual Event Roundup: November 15, 2020

The week after Formnext Connect is no less busy, as we’ve got webinars and virtual events pretty much every day, Monday through Friday. Read on to learn more about what’s...

3D Printing Webinar and Virtual Event Roundup, September 20, 2020

Buckle up, we’ve got a lot of webinars and online events to tell you about this week! Ceramics Expo Connect starts on Monday, which is the same day that IMTS...

Low-Cost SLA 3D Printing Democratizes Scale Modeling

With the advent of affordable stereolithography (SLA) and digital light processing (DLP) printers like the Anycubic Photon and Elegoo Mars, the average consumer now has access to technology that, up...


View our broad assortment of in house and third party products.