Culling to create regular patterns – Example 1.4

04_03_cullx5While most contemporary design expression tends to avoid patterns like the one above, introducing regular rhythms into projects is still important, and can be done very easily using the “Cull” components in grasshopper. The English verb “cull” implies getting rid of things (such as livestock) in a systematic manner. This is exactly what these components do. You give grasshopper a set of items, and then get rid of some of them using components. There are a couple of these, but the two discussed in this exercise are “Cull Nth” and “Cull Pattern”

There are basically two steps to this simple exercise.

Step One – Setup a rectangular Grid


This is similar to a square grid, but with a couple of more options. After setting up the grid this time we are using the Cells (C) output and flattening them since we don’t want to consider the rows and columns of the grid in this example. Before moving onto the next step, we are going to go ahead and color our cells now to make the next step easier to see. Just leave a bit of space between the setup and the coloring operation to insert the next step.


Step Two – Do the cull with Cull N


For our first Pattern, we are going to be using the “CullN” tool. This gets rid of objects in the frequency indicated. In the example above, the frequency is “2” which means every second object is removed from the list of geometry. Note that if in our initial setup, the “Extent Y” was equal to an odd number, you will get a checkerboard pattern. If the “Extent Y” was even, you will get bands.


Why does it do this? Remember, in the default structuring of a flattened grid in Grasshopper the computer starts counting at the bottom left corner and works its way up each column, and continues the series at the bottom of the next column. See Example 1.1. So as it gets rid of geometry, this is the sequence it follows. If you want to “force” the pattern to be always a checkerboard, you can go into the options on the “Extent Y” slider, and specify that it only ever output “Odd” numbers. (or even numbers, if you wanted to force bands.)

Cull N has limited functionality, but can be used for introducing a simple rhythm into a project. You can only change this one element in the rhythm, but playing around with the matrix, through the use of “Flip” components or also the “Reverse List” component, could yield some variation. The examples below show some different results based on changing the frequency and/or the the sequence of the matrix.


Cull Pattern

For a slightly more complex pattern, you can use the Cull Pattern component. Here you input a list of the words “True” or “False”  I will abbreviate it here to T and F but be aware you need to type the words fully into a “Panel” component. Alternatively, you can substitute the numbers “1” for True and “0” for False.


The panel is very useful for inputing fixed bits of data, and can also be used for inputing fixed constants for which you don’t want a slider. One word of caution about the Panel though. When you are inputing a list of values, say True, False, True or 1, 0, 1 and you push enter between each line, you need to make sure the option “Multi-Line” data is checked on the panel or else it will generate an error. Right click the panel and you should see multi-line data as an option.



Below are some simple variations with this script. Examples 1-4 use the “Cull N” component using a frequency of 2, 3, 5, or 12.

In the examples 5-9 below, the cull pattern is used with varying sequences of T and F. This can be used for basically any regular rhythm in a design. Also, this can substitute for Cull N in most cases. Instead of using “Cull N” with an “N” of 3, for example, you can use a “Cull Pattern” with “T T F”  This yields the same results.


OK, this is pretty simple, but here is a screenshot of the overall grasshopper script for this one…