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]


This was a month ago, I was searching for a way to work with random points and growing populations. Then this idea appeared accidentally. I wasn’t trying to mimic the behavior of biologic cells (in fact I’m in a serious doubt about biomimicry in general). The trick is to use timer + data recorder + a knob for the arbitrary user input. It starts to breed when you start the timer, but in order to change the evolution speed, just roll the knob!  Of course the knob is as precise […]


This was the initial example of image processing at our Parametric Modeling class. I saw this design at Maxthreads Architectural Design’s website (especially here). Hand-drawn and digital diagrams can also be digitized and used in order to describe certain parameters for design formation. Such algorithms would similarly use Image Sampler Component of Grasshopper. In the algorithm below, image data is used to capture black pixels as attractors of a Voronoi subdivision. A regular point grid is dispatched according to Brightness values so that the points lie on the lines of the drawing […]


Fracture is a simple effect experiment on Grasshopper. Although it is not the best tool for an interactive media installation regarding its performance, I tried to use it as a simple sketching tool for concept development. It is the sketch of a material system we are working on nowadays for an Exhibition. Initial diagram on Grasshopper includes a nested voronoi subdivision broken by moving attractor points. It is not fast enough for a real-time interaction yet, because of the time it takes to develop planar surfaces. I’ll continue with this […]


Kündekari is an old woodworking technique, composed of interlocking parts without any glue or nail. It is primarily used in wooden doors and minbers inside Mosques. The interlocking system makes whole structure very durable. Unfortunately very little information could be found on the web about this beautiful technique. Below you see a typical example of Kündekari components and the resulting pattern composition. The subdivision part is out of the scope of this post (as it might be anything). The interesting part is the tongue-and-groove method, something like a puzzle. In […]


I’ve been searching for a method to study voronoi subdivision in order to manipulate it. There are well-known algorithms for that but I thought it would be better if I use a projective approach just as I did in studying hyperbolic space (here). This is the metaphor of  inflating balloons. However I inflated cones instead of spheres. Below are some experiments of it. Above is the regular voronoi subdivision in 5 steps, with constantly and equally inflating points. [GHX: 0.9.0014] Rhino 5 The second attempt (above) shows an interpretation of variable […]


This was my old plan to work with images in Grasshopper. Certainly that was not the result I expected, but this could be counted as a starting point. After seeing beautiful circle packing compositions here, I decided to program Grasshopper, so that it’ll create a subdivision, based on an image data. This was the initial version, just subdividing a plane with voronoi points and visualizing it according to image’s color values of proper UV coordinates: [GHX: 0.9.0014] There is no interpretation on the points, they are just “random”. (Although I’m looking […]


That was about six months ago, our study for a design competition required a spatial allocation algorithm. An office building with a rectangular plot and a strict functional requirement forced me to the good old voronoi diagrams, subdividing a surface. Here is the definition file: [GHX: 0.8.0066]. However, there were other design parameters such as the sunlight and orientations of each functional cell. Combining a couple of graph components helped me to create diverse solutions, that are later used in functional-formal interpretation phase. Unfortunately later on, the competition cancelled and this […]


Last update of Grasshopper3D brought powerful new components. As you can see, “the famous self-styled indicator” of a computational design process, has now became “public”, as the connectivity diagram can now be constructed as volumetric (3d). Another new component distributes desired number of points into a volume. Coupling them, we may at last say R.I.P. to Mr. Georgy Voronoi, and get going further on.