hopific logo blue

The Series Component in Grasshopper – A Beginner’s Guide

Series in Grasshopper - Featured Image
Quick links

In digital design, patterns and sequences lay the groundwork for sophisticated outputs. The Series component in Grasshopper is a fundamental tool that streamlines this process, generating a sequence of numbers to enhance precision and predictability in your designs.

In this article we’ll cover how to use it and walk through a real-life application example.

Let’s dive in!

Adding the Series component

Let’s start with the basics – adding the component to your script. You can find the ‘Series’ component in the ‘Sets‘ component tab, in the ‘Sequence‘ group. Select it and click anywhere on the canvas to add it to your script.

Adding the Series Component via the component tabs

If you prefer to use the component search bar, simply double-click on the Grasshopper canvas where you want the component to be placed, and type “series” into the search bar. Then click on the first result to add the component.

Adding the Series Component in Grasshopper

The Series Component – Inputs and Outputs explained

The Series component will generate a, you guessed it, series of numbers. We can control three aspects of the series: the starting number, the increment from one number to the next, and the count of numbers.

Series in Grasshopper - Inputs and Outputs explained
Example of Series component in action.

In the example below, I defined the Start (S) of the Series as 10, the Step Size (N) as 2.00, and the Count (C) as 5. This results in the following output, presented as a list.

10, 12, 14, 16, 18

When to use the Series component

Use the Series component whenever the most important part of the generated numbers is the step size.

Series in Grasshopper – Step-by-Step Tutorial

Now when would we use the Series component? Here is a practical application example:

Let’s say we’ve written a script that generates a number of stacked floors of a tower, and we now want to apply an incremental rotation to each floor. We are most interested in controlling the increment of the rotation in this case, so the Series component is perfect for this.

Series in Grasshopper Example Outcome

Basic Script Setup

In the basic setup below, I have a set of floors as well as their center points already prepared. Since we want to rotate the tower segments, the first step is to add a ‘Rotate‘ component.

We want to specify the rotation in degrees, but the ‘Rotate‘ component’s rotation input requires the rotation specified in radians. To solve that I also added a ‘Radians‘ component. This component will convert values provided as degrees to radians.

I already connected the geometry to rotate, the tower segments, as well as their respective rotation center points.

Series in Grasshopper - Example Step 1

Generating Increments with the Series Component

All that’s left now is to specify the incremental rotation with the Series component.

Let’s add the Series component. We can leave the Start (S) input of the Series at the default of 0. That way the first floor will not be rotated.

We want to generate as many rotation values as we have floors, so let’s get the number of floors with a ‘List Length‘ component, and connect that value to the ‘Count (C)‘ input of the Series component.

We now get a Series of numbers starting at 0, with the default Step Size (N) or increment of 1, and a count of 10 values. Each tower segment is now rotated incrementally by 1 degree, as shown in the preview.

Series in Grasshopper - Example Step 2

Let’s add a Number Slider to adjust the Step Size, or increment – our rotation angles in degrees.

We can now control the rotation of the tower segments!

Series in Grasshopper - Example Step 3

Using the Series component means that while we are able to control the start, increment and count of values generated, we don’t have direct control of the final number – it is simply a result of our specified values. If we want to have control over the start and end value, it’s best to use the ‘Range‘ component.

Concluding thoughts

In conclusion, the Series component in Grasshopper is an indispensable component in algorithmic design, particularly for tasks requiring sequenced or incremental logic. Its ability to create ordered numerical sequences with controlled increments is invaluable in projects ranging from simple repetitive patterns to complex adaptive systems.

Want to improve your Grasshopper skills quickly and explore even more advanced techniques? Don’t miss out on Grasshopper Pro, our comprehensive online course tailored for architects. Fast-track your learning journey and unlock the full potential of algorithmic design to level up your design workflow!

Happy designing!

Like this article?
Share on LinkedIn
Thomas Tait
Thomas Tait
Lead Designer at Snøhetta and Head Instructor @ Hopific (or, in plain English, I help designers use Grasshopper to supercharge their designs.

Free Course​

Get started with Grasshopper

Start learning Grasshopper today: visual programming, essential components, parametric models, & more!