Guest Blogger Djordje Grujic: Untangling the Arcane Secrets of GDL
“The sea is dangerous and its storms terrible, but these obstacles have never been sufficient reason to remain ashore… Unlike the mediocre, intrepid spirits seek victory over those things that seem impossible… it is with an iron will that they embark on the most daring of all endeavours… to meet the shadowy future without fear and conquer the unknown.” Ferdinand Magellan, Explorer (c.1520)
Every time I think of GDL, the first person that comes to mind is David Nicholson Cole, better known in the ArchiCAD Virtual Universe as DNC. And every time I stumble upon his GDL Cookbook, or his OMWAC (Object Making With ArchiCAD) book, I remember the brilliance of British eccentricity, Douglas Adams, Dirk Gently, and that the answer is 42.
Of all the things insanely great (you know whose quote this is, right?), GDL is the most arcane I have ever met. Born of the Hungarian mathematical genes in order to model the pipeworks of a power plant some 30 years ago, it grew to become something many of us hold dear-ArchiCAD. Yep, that’s the core of the modeling engine of the first and only surviving architectural BIM software from the early 1980s. As it is the very essence and the very core, it is somewhat understandable that for decades GDL has been an arcane art and an extremely well kept secret, often at its own expense. There was a GDL manual, most useful for the person(s) that wrote it, and considered among the users as the most refined type of cruel and unusual punishment there is-unless you were a mathematician, programmer, Hungarian, or preferably all three.
And then … some time in the 1990s, the students at a course at the University of Nottingham asked their tutor a few questions too many.
ArchiCAD was in its 5.0/5.1 version (5.1 meant Teamwork), and the tutor-none other then David Nicholson Cole-sacrificed his weekend to learn GDL and answer his students’ questions. For those that arrived on this planet since then and don’t remember computers without a mouse: typing in a program from a magazine, or writing your own, never mind loading it from a cassette tape, was still a living memory. Anyway, after managing to get through the GDL manual in a weekend, despite not being a mathematician, programmer, or Hungarian, but an architect (and that is infinitely worse, trust me, I am one!), David Nicholson Cole understood the issue: STRUCTURE!
The key to good GDLing is structured programming. Each piece of the object should have its start, middle, and end, and the spatial orientation is of utmost importance. David Nicholson Cole kept this in mind when he wrote the definitive guide to learning GDL. The lessons in the GDL Cookbook take you through the coding for individual objects, from a simple chair to tower cranes, with stretchy, transformable, scale sensitive and other magical objects thrown in. And yes-and after finishing the GDL Cookbook, you COULD make those objects that you have always wanted, and that you once imported via DWG or 3ds format.
I got the first GDL Cookbook in 1998, just about the time that ArchiCAD 6.0 was about to be published. I did go through it, but without any real reason or need for knowing it; I kept it as an academic interest. Then, early 1999 brought me to the Arabian Peninsula, in the role of the regional Graphisoft distributor’s Technical Services Manager. I was responsible for technical support, presentations, and assistance to the clients-and those services included GDL scripting! The biggest client in Dubai already had some VERY interesting questions, and some of their staff REALLY wanted to learn GDL. So … after a couple of emails, David Nicholson Cole agreed to visit us in the depths of the summer, and to do a GDL course with the GDL Cookbook included!
That week with David Nicholson Cole, and the opening of the eyes of the ArchiCAD users was something to behold. I did not attend the course, but just talking to David about an Object or two that we worked on for our clients made me revisit the GDL Cookbook pages again and again… my personal record was scripting the whole Managing Director’s office in one afternoon, complete with curvy desks, fluffy cushions and deep sofas. I also learned what ZZYZX is and why is it called ZZYZX.
And here is the truth: you can do GDL, if you are disciplined, precise and understand space.
In 2000, Graphisoft finally commissioned David Nicholson Cole to write Object Making With ArchiCAD (OMWAC), the book that since has been mostly incorporated in the ever growing ArchiCAD documentation. It was revised in 2004, to follow the developments in GDL. We are now a good 15 years from the original GDL Cookbook, and 13 since the first OMWAC. Both ArchiCAD and GDL have changed, as one might expect. But the value of both these tomes has not diminished.
GDL Cookbook Version 4 (Web version)
GDL Cookbook Version 4 (download)
The power of GDL was almost forgotten, and it has been-and is-the secret weapon of many an ArchiCAD Jedi, of which I could name a few, like Frank Beister, James Murray, Jeroen de Bruin or the ArchiRadar and manuBIM teams. Forgive me, the rest of you. For your understanding of the dark arcane core of the machine, the heart of the system, you should know how to cook the soup of the essence.
And there is only one GDL Cookbook. Thank you, David.
Jared’s Note: If you don’t know who Djordje Grujic is and why I’m honored to have him write a guest post for Shoegnome, click here. As part of the guest blogger process, I do all the editing and formatting. So before I hit the publish button, I’ve already read this post a dozen times. And I’m inspired to download the GDL Cookbook to my iPad and finally take the plunge. Who’s with me. Who’s ready to face their fears and start programming. I’m also going to go e-mail David Nicholson Cole and see if I can get him to add some thoughts to the blog. You might want to follow Shoegnome on Facebook and Twitter so that you don’t miss what he might have to say. And while you’re at it, the RSS feed is a great way to never miss anything either.
Matt
I’ve always been intrigued by this dark art. But then I wonder, do I want to sculpt space and objects with visual tools or with text, numbers and scripts. I figured I’d wait for someone to make something like the morph tool. Now it’s here I see less need to learn gdl. But I do like the idea of stretchiness and adding parameters to objects. I haven’t given up on giving it a go but time managment is another more important dark art to be mastered first.
Stuart Smith
The GDL Cookbooks are great. There is also the GDL Handbook, by Andrew Watson from Cadimage, which is excellent and up to date with the latest version of Archicad.
GDL objects don’t have to be complex (or even 3D) to be incredibly useful and time-saving. I use several simple objects for 2D details which speed up the drafting process quite a bit.
chris
I’m still a novice(almost a year) in this skill,and I find it very useful in 5d calculations, whenever the object I want should have the parameters…say kg of steel per m2,..Even in code checks…say, plumbing fixture requirements.
…It doesnt have to be a complex scripting. Usually the simplest GDL object is always capable to do
complex things.
Eric Bobrow
Djordje –
Thanks for reminding us all about the pioneering work of Graphisoft founders Gabor Bojar and Tamas Hajas in creating GDL, and the inspired teaching by David Nicholson-Cole (DNC) of this deceptively simple yet extraordinarily powerful combination of code and geometry.
I have enjoyed the occasional class as well as collaborating on a few small projects with DNC. As I have a programming background, I have found GDL an enjoyable and challenging endeavor. For the average ArchiCAD user, there is less need for GDL than ever before (since we have more flexible modeling tools) yet I still recommend learning how to do a few key things in order to create objects with a bit of intelligence and flexibility.
I recently created a series of three video tutorials that are relevant to this topic:
How to Create Your Own Custom Symbols and 3D Library Parts
http://www.youtube.com/watch?v=V_-e8BQPd24
Making a 2D Symbol Parametric with Simple GDL Editing
http://www.youtube.com/watch?v=UB1EucGKoM8
Combining 2D and 3D Elements in a Custom Library Part
http://www.youtube.com/watch?v=XC7nu7lIvGE
They primarily make use of the built-in GDL that is created when you draw or model elements then save them as library parts, but I do explain some of the straightforward modifications you can do that will make these objects more parametric.
Eric Bobrow
Vistasp Mehta
Totally agree. Like many others, I dabble in GDL from time to time and, nor surprisingly, the introduction came from the DNC’s cookbooks. They’re available in PDF format too for those who want to read them offline.
Jared Banks
And some of us are even lucky enough to have (or have access to) hardcopies!
พรีà¸à¸à¹€à¸”à¸à¸£à¹Œ
Wow. Good , I agree with all of you.
David NicholsonCole
Hi Everybody, thank you to Djordje for writing this article. If anybody wants to write to me, the email is no longer what is printed in the GDL Cookbook3 because that domain address expired sometime ago. I was working on a follow-up to it in 2014, the GDL Cookbook 4, but my old PageMaker began to disintegrate and kept crashing pages and making them permanently unreadable, so I saved the pages that were still readable to PDF, and decided to make them freely available on the web.
Another problem that I would have had is that graphical hotspots take up so much code that I would have to have left those out of the objects in the articles, but included them in the objects on the CD.
I know that this is a bit unwise, but I will take the risk of giving you my current and forever email dnicholsoncole@gmail.com but please do not all write at once!
David NicholsonCole
Oh yes, I meant to say, that another small problem is that the requirement for GDL is reduced with the introduction of the Shell and Morph for tools. GDL will always be uniquely useful for objects which are required to change based on parameters, and which may include some smart features, such as adding in props or braces if a lattice truss is getting too long. Using GDL for complex shell or tent shapes was always a total nightmare because the geometry was something that it could not cope with, or that the writer’s brain could not cope with.
Jared Banks
David, thank you a million times over.
Tobias Busch
I was one of the students at Nottingham Uni in the 1990s that asked too many questions… Glad I did.
Odd Goderstad
I have had the pleasure of collaborating with DNC on a project (remember the smartwindow, David?) and also meeting him on some ArchiCAD Winter scools, and it has been a pleasure! Meeting DNC is as close as I have ever been to meeting a true genius! Have a look at his ecofriendly house project:
http://chargingtheearth.blogspot.no/p/introduction.html
Thank you David!