The Global Archicad Community

Stay informed. Get help. Share your knowledge.

GDL language and objects, API, Add-ons, Script…

Moderators: Karl Ottenstein, LaszloNagy, ejrolon, Barry Kelly, Gordana Radonic, nbalogh, mnguyen, gkmethy

What is your opinion about this Wish?

No votes
Not Important
Not Needed
By Braza
@ leceta

IMO AI will never make the role of the Architect irrelevant. On the contrary. The only thing that AI doesn't have and we humans have is that "je ne se qua" inherent to the human condition that its not logical to any machine but Arts represent in a sublime way. Like this.
image01.jpg (40.17 KiB) Viewed 1942 times
By Braza
It was cataloged in the Algorithmic Design session. :wink:
User avatar
By leceta
On AI and coding literacy:
"State of the art machine intelligence today is usually provided as libraries of code, written by large-scale influential companies, (for example Google’s TensorFlow or Facebook’s Pytorch) structured by professional engineers such that the involved architectonics and procedures conform and reinforce the engineering problem-solving mindset. Anyone not able or willing to adhere to this mode of operation—for example architecture, which is neither a discipline, nor it is strictly about problem solving—is kept at a safe distance, and offered tools and tutorials. The knowledge about a computational concept, for example a much-hyped GAN, is offered to the peers as a complex technical paper, and to the rest, simply as a library of code to be played with. If an architect, willing to reinvent her field in today’s novel and significant technological context wishes to acquire the necessary literacy to navigate the space where the knowledge is created and negotiated, she faces considerable difficulties. Prerequisites to enter the field are the same as for future engineers, along with pedagogic principles. If, on the other hand, we are unwilling to pursue this literacy, we are once again in a situation to simply accept the tools and let them write our legacy. However, this time, the shortcut that we would be taking might have far greater consequences than before. It could, in fact, do a great honour to computer science by allowing it to turn a three-thousand-year-old legacy of architecture into one of its particular specialisations."
Nikola Marinçic
User avatar
By Moonlight
Here Here to @leceta
By DGSketcher
Well there's a lovely example of a self important elitist spewing irrelevant effluent. You could almost read between the lines "Either you are with us, or you are with the terrorists". As Rob2218 might say, "Can you translate that to the language a five year old would understand?". Perhaps leceta could enlighten us to the author's site experience & relevance to this debate?

I find this faith in AI troublesome, each day we seem to be faced with more & more IT related problems, many of which are self inflicted because adequate checks have not been made prior to implementing the software. Try asking GS for a list of their current known factual hard proven bugs, I doubt you would have much response, so why should we believe Google & Co can be trusted even more?
By Braza
Nikola Marinçic wrote:It could, in fact, do a great honour to computer science by allowing it to turn a three-thousand-year-old legacy of architecture into one of its particular specialisations.

This statement tells much about how the author sees Architecture in comparison with Computer Science. :roll:

Again. Repetitive/Mundane tasks will be done by machines. It is not SciFi, its reality. At this moment cars and trucks are driving autonomously, Bots are chating with humans, Super computers are predicting weather, Facebook algorithm knows your political orientation, Most Engineers (if not all) don't calculate their structures by hand.

My point is: Its not wise to try to compete with machines in tasks that only involve logic. Instead, we have to leave them do what we shouldn't be doing; and do what they can't. But please forgive me to say: "three-thousand-year-old legacy of architecture" will always be much, much more than a Computer Science specialization.
By DGSketcher
Sorry, Braza, we're on the same page but...

At this moment cars and trucks are driving autonomously - Crashing & killing people
Bots are chatting with humans - and hacking forums & personal accounts
Super computers are predicting weather - Well they used to before climate change messed up the algorithms, now I can't even get a reliable prediction for next week
Facebook algorithm knows your political orientation - Only if you subscribe & give them your data to abuse
Most Engineers (if not all) don't calculate their structures by hand - but the educated will have a sense of what will be required and will interact to find a practical solution.

Machines & logic - great, but please recognise them as only a tool. The more they are entrusted to autonomous decisions the greater the scale of disaster when it eventually goes wrong - and it will. Hopefully it won't be an existential event, but you can see how someone sneezed in China and the financial markets are having a melt down over something which has a death rate way below influenza or cancer.

But please forgive me to say: "three-thousand-year-old legacy of architecture" will always be much, much more than a Computer Science specialization. - Very true! :D
By Braza
I know DGSketcher, that these facts are mind blowing. But lets not forget that every new technology needs time to adapt. I always remember the case of the elevator and the so called "Elevator Operator" (and not many of us ever saw one). At the time elevators were considered too dangerous for a not trained person to operate. And today... We only see them in very expensive hotels as a way to charge loads of money from its guests.

So. Relax that it will hurt less. :wink:
Elevator Operator.jpg
Elevator Operator.jpg (32.63 KiB) Viewed 1800 times
By Jim Allen
I learned to program in Autolisp years ago, and in SketchUp I became really competent in building dynamic components.

Now I use Archicad, I have GDL. However - this is just not an acceptable solution for ordinary users. Honestly, there are so few objects available by comparison with Revit or Sketchup.

Here is an example - Data cabinets. I downloaded one from BIMObject and found basically an imported Solidworks object with a ridiculous polygon count, and a load of standard parameters to edit. Try downloading things like hand driers, taps and furniture - it's ridiculous. The BIMobject guys seem to have no understanding whatsoever what BIM is for.

Commercial gates are another example of stuff we ought to have.

The reason we don't have enough good parametric objects is because GDL is much too inaccessible.

I think an approach is required which allows interested users to learn a little and be able to build properly parametric objects.

Something like the SketchUp Dynamic Component approach would be perfect. I tried Library Part Maker, but it's far too much effort for static components. Let's be honest, most of us probably want to build dynamic parametric components. Creating objects is easy enough if you don't want to mess around with levels of detail.

SketchUp DCs use the principle of manipulating instances or predefined geometry. You can stretch, rotate and array them and very quickly and effectively build properly parametric objects without having to define the geometry point by point. I have built dynamic windows and wall panelling with different patterns and options for skirtings and mouldings. Everything is based on arrays of instances of predefined geomteric components, most of which are arrays of simple cubes with the dimensions modified.

It ought to be possible to create a web-based application simply for building Archicad components. After all - you only need a small subset of Archicad's tools. There is a web-based version of SketchUp, so it shouldn't be *that* difficult. It could even export IFC components for other applications.

A web application avoids all the tedious updates and installation that we normally have, and avoids the cross-platform complexity.

You could also have a efficient workflow which takes you through building your 3D object, your 2D representation, modifying levels of detail, and adding parameters. This could also be a separate application done by a standalone team, that simply adds a front end to building traditional GDL objects.

GDL in itself is fine. Nothing at all wrong with it - it's just not a tool for over 90% of users. We need a front end that is sensible, intuitive, and accessible.

Grasshopper is another complicated solution to the problem. We should not have to download another expensive standalone 3d modeller to build Archicad objects.

Come on guys, there is a really easy solution to this. Look at Sketchup DCs and improve on that approach.
The attached screenshot shows what the UI looks like.
Screenshot 2020-04-02 at 17.01.32.png
Screenshot 2020-04-02 at 17.01.32.png (410.2 KiB) Viewed 1044 times
You create/select named components, and define the origin point.

Then in the sections under the main definition, you control the copies, dimensions, position and rotation.
Arraying is done by setting the position variable. Supposing you want the user to input the number of copies (or derive them from the dimensions inputted) you use this to set the number of copies, and position is something like in (say) the X position box, as
If you want an offset, you could use:
offset +(copy*intervalSpacingVariable)
Like this:
Screenshot 2020-04-02 at 17.02.03.png
Screenshot 2020-04-02 at 17.02.03.png (507.47 KiB) Viewed 1044 times
It's actually pretty straightforward.

If you look at the screenshot, next to some of the variables, you have a little dialog icon. Click on this and you have an option to configure user input like this:

Screenshot 2020-04-02 at 17.24.30.png
Screenshot 2020-04-02 at 17.24.30.png (184.61 KiB) Viewed 1044 times

Of course the UI is a lot simpler than Archicad, but the approach I think is valid.

The point is that with a really simple UI and input dialogs, you can build some really useful complex parametric objects, and it's so much easier than GDL
  • 1
  • 4
  • 5
  • 6
  • 7
  • 8