Tips & Tricks »


This video is dedicated to the Design Computing and Basic Design students, who “contour” and then move each and every section by hand, one by one, in order to fabricate their laser-cut homeworks from cardboard. It could also be a macro but I prefer this because it somehow does not work in all conditions. Maybe you should orient your contouring results similar to shown in the video, and then use shear command to spread them.


This is a macro exercise in Rhino, showing that Rhino is pretty much capable of automating some cool text effects. Just copy and paste below code into the command bar of the Rhino, or open macro editor by typing macroedit, then paste there and press play. You’ll enter any string when prompted, then the macro handles rest of the process. You can play with the parameters by changing numeric values you see in the macro. ! _show _selall _delete _-text 0,0,0 h 10 _pause _sellast _setobjectname tex _boundingbox o c […]


Here is the simple Grasshopper definition [GHX: 0.9.0072] that activates Rhinoceros’ camera by given parameters. Camera position is determined by the “point oriented” method here. This means that you have to have a target point for the camera first. In fact, I was trying to find a suitable command for getting the actual camera position of Rhinoceros but I think it is impossible (for now). I couldn’t track the camera object by its ID number also. There are some Grasshopper components that deal with this issue however. The simple code inside the […]


It is Baldequin (or Baldachin) in English, Baldeken, or Baldöken in Turkish. I don’t know which one is correct, but it is the name of a structural system of arches and pendentives that carry a dome. Sinan experimented square, hexagonal and octagonal variations in his mosque designs (as I developed parametric definitions of them in my 2003 master thesis (here)). Today, together with students we’ve modeled the system and tried to generate some variations by manipulating its parameters. Below is the starting point of modeling a square-plan Baldequin system. We […]


Anemone is a simple but effective plug-in for Grasshopper that enables for loops. It has been a while, Hoopsnake succeeded in extending dataflow capacities of Grasshopper with recursion. However Anemone is much more user-friendly and easy to use. Below is my first test, yes it works! Here is the group page on Grasshopper. I hope this plug-in would be advanced more. I’ll try to return my old studies which are ceased because of the lack of this functionality. This is my Grasshopper test of Anemone (although it is very simple): [GHX:0.9.0069] […]


Rhinoceros cannot align text onto a curve (as far as I know). Grasshopper should help in such tasks as it is well equipped with text components in the latest version. Nowadays I’m studying at an installation project which includes such typographic effects. However, the fonts are still missing in Grasshopper’s native text components. Below is a simple definition that align any given text onto any given curve set. Be careful about “curve frame” component as it would create upside down planes (I have no idea why), just use “horizontal frames” […]


While looking at the student works of my 2009 class, I realized that in some cases, the “pipe” component takes considerable amount of time to execute even on fast computers. Students mostly create pipes to model structural frame systems such as canopies and facade frames. Therefore, the path of the pipe is usually linear (not curved). I decided to calculate the performances of three approaches the could be used to make pipes in Grasshopper. One was the good old Pipe component, the second was a sweep component with an aligned […]


Here is a simple description of Rhinoceros’ Printing dialog. It is just the same with version 4.0, nothing changed in layout and printing dialogs in 5.0. Especially our Architectural Geometry classes should benefit from this explanation. Most of these options should be tested with plotter (e.g. pencil widths) before final print-outs. Also, you may try creating PDF file of your homeworks from this dialog.


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 […]


This simple component controls Rhino viewport background without a need to enter it’s options panel. It is used to change viewport background color and grid visibility quickly within Grasshopper. Here is the definition file: [GHX: 0.9.0056]. In order to be able return to default settings, I put a “default” toggle. Just click on it to “false” state, then the Rhino background color can be changed by the B input. This component also handles the grid. However I couldn’t find a working method to hide and show the Rhino grid within […]


Again, I continue with some simple solutions for Grasshopper. The surface split component gives all possible surfaces sliced with given curves. And it creates “invalid” curves with at least one open edge. I used this to perceive the closed regions within a given complex curve set. Just put “Clean” component to erase the outer invalid surfaces and there remains the closed ones. However this time the question was where to put the circle and what is the radius of it. I used a new component called “Plane Through Shape” and […]


This is a simple trick that shows the utilization of “surface split” component in Grasshopper. It is used to detect inner regions of any given two-dimensional linework, resembling the hatch boundary detection of AutoCAD. There is no hatch component in Grasshopper but maybe this could be used as a starting point. Here is the simple definition if you want to try: [GHX: 0.9.0056]. I used “project” component to quickly understand which of the trimmed surfaces is inside. “Point in curves” component also gives the same solution.


Today’s tip is about the two dimensional curve-point calculations. It is very handy to use “closest point” components in Grasshopper. You can calculate distances and directions between curves, surfaces and points and place point objects in relation with the proximity of another object. However there is no “farthest point” implemented yet. I tried to calculate a farthest point from a curve. First, tried to translate curve in a fashion that it would result the opposite of closest point calculation, giving the farthest point. However this idea has collapsed quickly because […]


One of the main requirements of being succesfull in the field of digital design, seems to have nice high-tech background images. Usually it contains different kinds of nebula-like-grids, plastic-explicit and/or combinations of curves-surfaces-and-numbers, burnt by a couple of photoshop filters. If you have the right background, this means you are ready for a workshop, a book, or a presentation. (just joking) However I love these, cannot stand more than 1 minute working for them. So, here is what I found ten years ago while preparing a portfolio. This way, you can […]


Famous “Deutsch limit” says, “you cannot have more than -say a hundred- components in a visual programming environment, that is why you cannot write an operating system with it.”; so it says, perceptual and pedagogical advantages of  visual programming is limited according to the size of your screen. However there are two main oppositions to this argument. One of them says “textual programming environments have the same limitation, as you cannot have more than x lines of code on a screen, just scroll down or “pan the canvas” idiot?”. The […]


Just a quick tip as I thought might be useful in some cases. Generating random numbers in architectural scripting is not too catchy thing for designers. It is for sure, we want every parameter to be under our control (as if it were possible!). I was thinking about that in Grasshopper. A dataflow graph such as in Grasshopper regenerates whenever necessary (a change on an input value “fires” every connected component), therefore random number component requires your action (for example changing a seed value using a slider) in order to […]


Last year, I posted a way to create Grasshopper command button in Rhino 4 (here). As the scripting possibilities increase in Rhino 5, the new tab feature can be used to put them together. I’ve made 4 of the most used platforms in a tab named “Scripting”. Here is how I did it; Use right click on empty area to open above menu and select “new tab” to create an empty tab, naming it “Scripting. Right-click on the dummy button (smiley) while pressing shift to open button editor. You can […]


While Grasshopper and Rhino is having a major transformation from good old 4.0 to fast and furious 5.0, I’ve managed to install Autodesk’s Designscript at last. This development was interesting for us, because it encourages us to come back to the old AutoCAD again. First, I installed an educational version of AutoCAD 2013. They say it works with AutoCAD 2013 but don’t just search for a editor toolbar because AutoCAD does not include script editor by default. In order to test it, install Designscript setup file from Autodesk technology preview […]


This is not to explain the method, but to see the potentials. After we’ve studied regular, semi-regular, dual and truncated tessellations with students, Architectural Geometry course is now expecting them to develop a pattern deformation such as these shown below. These samples are taken from this website if you are also interested in other topics of tessellation. They can all be drawn with simple commands, line, control point editing, trim, extend, and rotate. Their firing rule is so simple that maybe they don’t need a complex algorithms to model such structures. […]

E:_ISLERMTSO2012_09_24-MTSO-FINAL - Sheet - P3 - 97314.pdf

Yes, Revit revolutionizes the design process if you get used to it’s interface; but there are lots of things that could be further developed. Representational qualities, for example seems to be an important issue. I use section-perspectives a lot but still there are anti-aliasing problems when you get to the printing process. The last project I developed bottom-up in Revit and printed the posters from it, without any photoshop. This led me to think about it’s representational capabilities. I wanted to have a section background with a fade out effect. […]