This is done because I needed to represent relationships between different factors and layers of a design process. Although this method of “Chord Diagrams” is a very common technique in information design, it became very hard to find an effective tool for generating those diagrams quickly. There seem to be a solution called “Circos” but however even installing it to the computer became very boring for me. So I decided to make a Grasshopper definition that generates simple circular relationship diagrams. The resulting Grasshopper definition ([GHX: 0.9.0076]) seem to be a […]

## Design Research »

This is a classical method of generating tree-like forms utilizing a simple command “Arc SED”. The idea is simple, as the command draws arcs using an input direction vector, so this could easily be implemented creating “smooth” composition of curves just by iteration. Actually, this has been a previous study, discussed before here, using Hoopsnake. Now, this time I’m implementing the same algorithm using Anemone and a couple of other changes. Here is the Grasshopper definition (Anemone Components should be installed first): [GHX: 0.9.0076].

Based on this post, the problem of modeling tree-like fractal shapes is still a good question for early years of computational design education. Last time, I used Rhino’s macro to study these kind of fractals in an “impossibly” limited interface, but this time both vb.net and Anemone are introduced to students. First, using a Vb.net component that creates “the binary tree”: Here is the Grasshopper definition if you would like to see the simple vb.net loop in there: [GHX: 0.9.0076] (Don’t left click on the link, right click and “save the file” to your computer). Then, […]

Some facade studies as early sketches of an architectural project; all of them are utilizing the similar Grasshopper approach. My favourite “Graph Mapper” generates the overall gridal deformation, then some of them are drawing geometry for membrane, while others are generated to be realized from sheet metal. Hopefully one or two of these could be further studied: I hope I’ll be able to improve these sketches and publish their definitions soon.

Further studying iteration in Grasshopper, this time, inspired by Stiny’s “Ice-Ray”ish subdivisions with Aneome, instead of Hoopsnake in the previous work. Here is the Grasshopper definition (Requires Anemone components to be installed first): [GHX: 0.9.0076] Of course this is just an inspiration not the real scientific study Stiny has conducted (although I receive lots of emails about the previous Hoopsnake implementation; guys I’m not sure if this kind of algorithms are suitable for academic studies). Anyway this definition chooses random splitting directions of a surface for every iteration.

This is a useful tip both to solve some of the problems with custom surface subdivisions, and to explain the uses of parametric surface evaluations (the U,V,W thing) and the practical use of data lists. Step 1: Put your points inside 0,0,0 and 1,1,0 so that the resulting coordinates can easily be converted to U and Vs. In the example, we are putting some random points between 0,0 and 1,1 using Populate2d component. Step 2: Then make whatever you want with these points. For example we can create voronoi subdivision or delaunay […]

Image Sampler of Grasshopper saves life, if used responsibly. While explaining the component to this year’s ARCH362 students, I used this simple example that generates numbers from a beautiful picture of “metal foam” and uses it to generate lots of circles: Metal foams are lightweight but stong materials, that are typically produced by injecting gas into the liquid metal. Of course it becomes easier to teach something when you manage attract the attention of students. Here is the Grasshopper definition that shows the basic use of image sampler component: [GHX: 0.9.0076]

Finally I had a chance to test and understand what the “vector force” stands for in Grasshopper. It creates a continuous flow of force inside of the boundary, and is very useful if you want to create a field that is under continuous presence of a directional force such as gravity. The definition is pretty much simple: [GHX: 0.9.0076] [3DM: Rhino 5]

This year’s Parametric Modeling class starts with some of the very basic use of Grasshopper concepts. This definition is a practical start-up of using force fields in architectural design process. However it does not compute any physical phenomena (such as circulation of people, wind or anything else), but shows a simple way to tell Grasshopper about walls that push the field, and points that pull the field. I’ll post more of these kind of basics, hopefully along with some student works. Here is the Grasshopper definition [GHX: 0.9.0076] and the dummy Rhino file [3DM: […]

This quick project was a mapping of a tiling pattern inside of a multi-storey residential building’s hallways. While drawing the construction documents, it was necessary to apply of some coding here, as each floor had a different shape to be tiled. First, I’ve imported the geometric boundaries and the “middle curves” of the designed tiling pattern. The design was a simple one, yet to be handled carefully. After solving an example like this one, the Grasshopper definition generated all tiling solutions for the remaining hallways very quickly, saving lots of time. Sorry for the spaghetti code here, […]

Parametric variations of the folding chair, inspired from the “Rising Chair”, designed by Robert van Embricqs, was a good exercise for me to study Grasshopper again. After several different solutions, I’ve found the shortest one I think. This definition could work alone without any Rhino data, the overall size (width, length) of the plate, number of longitudinal cuts are all calculated within the definition. Without using any physical engines for complex rigid folding simulations, this is solved quickly just by applying simple right triangle equations. There are three other parameters that control the shape […]

This is the Grasshopper definition that generates tetrahedral helix (also called as Boerdijk-Coxeter helix), but in a funny way. This geometry is also a solution for tangent spheres. I generated the helix using Anemone components for recursion and gave it a little bit of responsiveness. I don’t know if it depends on the speed of your CPU but if it is slow enough, you’ll see the snake game of tetrahedral helix as it is driven by your input from a control knob. I’m not that interested in phone apps nowadays but […]

A mid-15th-century Ottoman recipe, mantı is filled with pounded lamb and crushed chickpeas, steamed, and served topped with yogurt mixed with crushed garlic and sprinkled with sumac. In modern Turkish cuisine, mantı is typically served topped with yogurt and garlic, and spiced with red pepper powder and melted butter, and with ground sumac and/or dried mint. Although there are many different variations of mantı in terms of shape and way of serving, the most praised type of mantı is known as Kayseri Mantısı, a special kind of mantı belong to Kayseri, […]

This is a Cycloid-like family of curves, generated by its classical description: a rolling circle. In Grasshopper, we don’t need to roll the circle, but divide its path, utilizing data lists to simply rotate and evaluate it. It becomes more interesting when you play with the definition, chosing multiple evaluation points from the list of rotated circles. Here is an example: Here is the Grasshopper definition: [GHX: 0.9.0072]

While testing Anemone loop components for Grasshopper, these curves have emerged. In fact, I was trying to develop the definition that mimics the well known branching script with “Arch SED” method (using tangent vectors for each arc and iterating the process in a random fashion so that the branches (arcs) join nicely). Anyway, this definition develops one branch from every previous one, while the position, rotation and the length are defined by three seperate graphs. If you play with these graphs, you’ll see the Anemone updates itself automatically, finally collecting the […]

I’ve been searching for a way to implement edge bundling on Grasshopper. It is an effective visualization technique to be used in connectivity diagrams. There are a couple of different approaches to this problem, and it is a nice way to analyse common paths within crowded graphs. I’ve found several entries in Grasshopper blog about this subject, but only implementing Kangaroo seemed to be a complete solution. My approach is of course not a scientific one, but after the application of Anemone it is now possible to model such iterative […]

200.000 words of “Ebru” placed according to the Contour Vectors of her image. “Firefly” is used to extract the vectors, however it takes 2 minutes to recalculate the graph. “Human” tools is used to bake the texts with their color information. This is the limit of my Rhinoceros installation, way too insufficent to express what it is intended for.

Here is a test of the optical flow component of Firefly. You can check the Firefly add-on to Grasshopper here. As an ongoing research project, I’ve been searching for a suitable platform to study responsive geometric patterns. This initial study focuses on one particular effect of Firefly, the optical flow that outputs the direction vectors on a given webcam input. I developed traces of it by joining endpoints of these vectors together, creating strings. Then, recorded them to give better motion effects, adding color afterwards. Here is the Grasshopper definition […]

Lokma is the name of a pastry made of fried dough soaked in sugar syrup or honey and cinnamon, typically shaped into a ring or ball. Unfortunately it is not the “Lokma” we’ll study here. In Turkish, there is another meaning of “Lokma” related with the history of eastern architecture. Lokma is the name of metal connectors used in railings, mostly inside of the openings of garden walls and old Mosque complexes. This system is often called “Lokma Railing” or “Lokma Iron”, while the connector of the railing is called […]

Points rock and roll within a predefined solution space. It should be based on a sound input of course but this is only a test to see if I can handle a timer and graph input at the same time. I’ll modify this definition to actuate with sound. The use of timer component gives a certain degree of randomness on the overall formation, while I start to be very discouraged with the exploratory limits of dataflow design. Here is the Grasshopper definition: [GHX:0.9.0061]. I’ve found a sound cable with small jacks on […]