Logan Steele


Categories: Blog

Lesson 1_

Metaballs exploration

We started this task by examining how to make connections between functions, learning how to extract inputs from functions to create working operations. We created a Metaball form, exploring the creation of organic forms through basic, repeatable inputs.

Metaballs_Image2 Metaballs_Image1

Lesson 2_

We created a tower with twisted floor plates.


We started with a tower with multiple layers, then learned to twist the individual floor plates in a series so the whole form corkscrews as the layers rise.

Twisted Tower Finished

Then we added a point that would allow us to move the model, but adding the point “broke” the model because something in the rotation did not sync up with the point.

Twisted Tower Broken

Twisting Tower Fix to the change

Upon further exploration, the point needed to be added to the rotation function so the two commands were using the same point as a beginning reference.

Lesson 3_

We explored the graph mapper function to generate complex lines and shapes based off of a graph.Screen Shot 2020-03-03 at 6.46.04 PM

We added the graph mapper function into the twisted tower project to increase the complexity of the twisting floor layers.


Screen Shot 2020-03-03 at 6.46.49 PM


Screen Shot 2020-03-03 at 6.47.12 PM


Lesson 3.5 _

We investigated the random generation function. You can achieve seemingly random results with a specified number acting as a key for the generated information. We examined how to use it to assign random points on a line, populate a 2 dimensional area, and a 3 dimensional area.

Screen Shot 2020-03-03 at 7.02.51 PM

Screen Shot 2020-03-03 at 7.03.03 PM Screen Shot 2020-03-03 at 7.03.10 PM Screen Shot 2020-03-03 at 7.10.39 PM Screen Shot 2020-03-03 at 7.11.16 PM


Lesson 4_

We created surfaces by using the MD slider function.

Capture3 Capture2Capture1


Lesson 5_

We focused on processing data by splitting it with the dispatch function, adding inputs to the splits lists, then rejoining the data points into their original order with the weave function. Doing this, we created a pattern that would increase the height and randomness of placement in respect to a particular curve.

LEsson5.3  LEsson5.4


In order to change the growth of the “city” you need to change the number going into the height factor, modifying it with by a particular power (probably less than 0) to get a nonlinear growth.

Lesson5.5 Lesson5.6 Lesson5.7



Lesson 6_

We changed a lofted surface by dividing it into panels and used data trees to manipulate each panel. By switching between lists of data, we could alter one panel at a time, or set those changes to affect all the panels on the surface.






Lesson 8_

We used the Grasshopper Plugin Kangaroo to explore geometries found with gravity simulations



Lesson 8.3

Lesson8.2  Lesson8.1


Lesson 9_

We used Anemone and Dendro to form lines based off of attractors, then used those lines to create meshes

Lesson9.2 Lesson9.3 Lesson9.4LEsson9.1


Lesson 10_

We used Galapagos to organize shapes into as small of a surface area as possible without the shapes overlapping with each other.


Galapagos uses an evolutionary solver to narrow down the most accurate solution.

Lesson10.2 Lesson10.3


Lesson 11_

In this lesson we created different complex curves using expressions to calculate the positions along the curve.


Lesson11.2 Lesson11.3


Lesson 12_

We explored the concept of clusters to create a varied faced based off of a vector.



This is the cluster that gets plugged into the next grasshopper expression