Here is the Grasshopper implementation of the famous Evolution Door design by Klemens Torggler. The code I used here is from my course on Parametric Modeling. This Grasshopper algorithm is a good exercise for the basics of Kangaroo. I attached several goal objects to a special mesh object created in Rhinoceros. Kangaroo’s goal objects work as expected to simulate the folding door behavior. I used the goal objects to fix […]
Posts categorized under Education
In this 5th episode of Grasshopper for Beginners, the interface continued by exploring the interface of Grasshopper. With the help of these two methods (tabs and search box), we can find the components. We can select them with the left click and place them on the canvas with the left click again. Now take random components and try to place them on the canvas with both methods. Therefore, components with […]
In this fourth episode of Grasshopper for Beginners, the explanation of the graphical user interface continued. We call the data flow diagrams definitions. GH definitions are rendered on a large blank screen area called canvas. We can zoom in and out (zoom) the canvas with the middle mouse wheel. Or pan sideways by holding down the right mouse button. Tabs and panels are menus where all the components of the […]
We will try to create collapsible structures in this new series called Folding Experiments. In this example, we will be using Grasshopper and Kangaroo components to understand the Folding Experiments: Basics first. Like other projects, this is a Parametric Modeling course exercise that usually includes primary Grasshopper usage. In our first example, we will try to fold a mesh object. To be able to fold a surface like origami, we […]
Installation In this episode of Grasshopper for Beginners, we will look at the Interface. If you do not have the Rhino software, you can download the 90-day trial version from www.rhino3d.com and install it. The website will give you the latest version, Rhino 7. The compatibility of the applications and examples with the Rhino 7 version has been checked. Therefore, all applications and examples can run on version 1.0.0007 of […]
“Strange Start Startling Stop” was designed by Mary Purdy at the State University of New York in 1985. The composition is based on a hexagonal lattice (above figure). There are four prototiles, marking the four key moments in the shape-shifting process. The first prototile is a regular hexagon, which is also the first tile of the composition. This prototile morphs into a shape that is a composition of four smaller […]
We continue the Grasshopper for Beginners (2) series with the data flow programming concept. Control flow diagrams we use in traditional programming languages control the sequence of executed commands. In data flow diagrams, the focus is not on the order of commands but on how the data progresses. In the previous example, it doesn’t matter whether the Circle and Polyline command runs first. As a result, both are prerequisites for […]
This is a new series aimed at beginners in Grasshopper. The design method pioneered by Grasshopper with the way he defines geometric relationships is becoming increasingly popular today. Its interactive interface, which looks like a game or a puzzle at first glance may seem easy and its impressive geometric results are a little dazzling. But when you enter the world of Grasshopper, it is understood that it is not a […]
In this session, I will add two new methods to the Vector class. I think this will finish the basics for the vectors. In the future, we are going to need several new methods like adding multiple vectors and interpolation. But for now, I think this would be sufficient to further advance into parametric curves and surfaces. These new methods will be based on the dot product method we created […]
This is the continuation of the Vector class we started here, and further advanced here, here, and here. This new Rhino Python implementation is mostly educational and partially a hobby. Before this session, we have developed display, magnitude, add, multiply, reverse, and subtract methods. This time, I am adding the vector normalization and dot product methods and seeing the utilizations of the dot product. Line Explanation 1-26 Already explained in […]
Today, I am going to make only one addition to the Vector class we recently started in Rhino Python. The magnitude of a vector can be easily calculated by assuming that the axes (2 or 3 axes) of it are perpendicular to each other. This gives us an opportunity to assume a right triangle visually, and calculate the magnitude (length) of a vector by using the Pythagorean Theorem. In short, […]
This is the continuation of my new project of re-creating the parametric curve and surface methods of Rhino via Python scripting. If you remember, I started with the building block of vector operations, here and here. Then, I defined vector addition and multiplication, before going deeper into the geometric calculations. In fact, they are using the previously defined addition and multiplication methods. New Vector Operations: Subtraction and Reversing In the […]
Today, I am going to advance the Vector class a bit more. Firstly, I will improve the display method I introduced recently. Then, I will add two new methods which handle the fundamental vector arithmetics in Rhino Python. Improving the Display Method In the previous attempt, I displayed vectors on the origin of the Rhino viewport. The coordinates of the tail of a vector are not stored within the object […]
Let’s continue from the Vector class that started yesterday. Previously, I defined this class to store three numbers (coordinates), named as “components”. I defined a method named __init__ for this. Similarly, I am adding a display method to the Vector class today. Note that I am using Rhino 6 in this code, but it should also work in Rhino 5 or 7. The code Below is the line-by-line explanation of […]
In this new series, I will be using Rhino Python to create some of the fundamental mathematical objects in Rhino. We will learn how to code in Python, and also try to get deeper into the intuition behind some of the fundamental concepts we use every day in Rhino and Grasshopper. The Vector class in Rhino Python is the starting point of this journey. Just like vectors, most of the […]
Below are some of the student works from the 2018 course: Design Mathematics. The final project of the course was about experimenting the designerly creativity. This included utilizing the mathematical concepts and objects studied throughout the semester. This was a rather open-ended homework question. But in the following years, I am not planning to repeat it. Because it becomes difficult to assess the learning outcome from open-ended homework within such […]
In Design Mathematics 2019 course, Berke Çelik designed the Enneper Slide in his final project. The Enneper surface is an interesting case since it is a minimal surface with potential variations for spatial implementations. Berke used Rhino Math and Grasshopper / Weaverbird to generate his design. I think the Enneper Slide, as a minimal surface, is an exciting start for a Design Mathematics student work. But as always, much more […]
Today, I am introducing a student work from the Design Mathematics course. Foad Sarsangi is a very talented designer, who attended my elective course last semester. The final project he studied was inspired by Peter Zumthor’s Bruder Klaus chapel. Foad wanted to experience its special production process. However, as the course was about “mathematics”, he also studied, solved, and generated an interior volume to be subtracted from a solid mass. […]
This is a student project of the Computation-based Basic Design Lanterns finals of the year 2019. This year was exceptionally successful in creating 3d components and constructing relationships as a systematic whole. Again, the students started with small-scale experiments on folding and attaching cards. This is a study of how planar elements can generate volumetric units. They also studied Archimedean solids to understand geometric performances of particular shapes. We encouraged […]
This is a robotic fabrication student project developed in the Digital Fabrication elective course in 2018. This group of students experimented with the hot wire cutting of EPS foam. Their aim was to create curved surfaces by using a straight wire. Design research started with a literature study of precedents. Then, after several cutting experiments with the available hotwire cutter tool, they gained better control over the technology. However, they […]