cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 
Wishes forum

Script language for Archicad

Anonymous
Not applicable
Like any other professionnal package AC should offer some possibilities of scripting. Outside of GDL which is only active inside objects.
It would allow customized workflows for specific ways of working.
Just some examples out of millions of simple things that could be done:
-Export automatically to .obj for each different layer combinations.
-Put all selected slabs at a specific height at once
-Drop objects and constructive elements on a mesh.
-Place a GDL object at every selected drawing primitive (for example to place trees on the circles of an imported dwg plan)
-Apply a material to all selected objects ( slabs wall etc..) at once
-Apply algorithmically defined transformations to selected elements.
-Build logic relations between elements
...
...
Such plugins should we be able to do without going through building c++ plugins.
Please Graphisoft let us know if that is something you think about or if it is out of question.

Let's see how many we are that miss that feature
27 REPLIES 27

Anonymous
Not applicable
As scripter myself, but without any experience of C++ - or the inclination to invest the time in learning it just for ArchiCAD plugins - I fully support GS adding a more accessible scripting ability to AC.

I'm a proponent of .NET as the best option - it's language-neutral (you can use C#,Basic,Python,Javascript,etc) and can be cross-platform (if the open source Mono implementation is used (though currently only supports C#... I think...? ).

Rhino 3D has .Net scripting, as does Unity3D.

Check out the scripted Rhino tools developed for architects, at:
http://www.rhino3d.com/resources/#tabs-4
"The .NET SDK is a wrapper around the C++ SDK that allows plug-in development with any .NET language including VB.NET and C#. Most of the C++ SDK functionality is available in the .NET SDK."
http://wiki.mcneel.com/developer/dotnetplugins

As an example of the innovation this could bring to AC, checkout Grasshopper for Rhino, as an example of a something mind-blowing that is written in .NET for Rhino.

sityu
Contributor
peter_h wrote:
I'm a proponent of .NET as the best option - it's language-neutral (you can use C#,Basic,Python,Javascript,etc) and can be cross-platform (if the open source Mono implementation is used ).

Yessss! This kind of language neutral solution is needed!
This would be more than essential; and more essential than it seems at the first glance.
Talmácsi, István, architect (AC user since 1997, ac4.5 - now: ac18)

Ralph Wessel
Mentor
peter_h wrote:
I'm a proponent of .NET as the best option - it's language-neutral (you can use C#,Basic,Python,Javascript,etc) and can be cross-platform (if the open source Mono implementation is used ).
You should never rely on proprietary frameworks if you intend to develop cross-platform solutions. If .NET was entirely open-source, it might be an option. Developers have repeatedly had to learn the hard way that Microsoft develops everything to be Windows-centric. There's nothing wrong with that, of course - why should they support a competitor? And if you intend to develop for Windows only, that's perfect.

But never rely on Microsoft to provide an equal experience on any platform other than Windows, and that includes technologies touted as cross-platform like SilverLight. It will not last. At some stage, platforms other than Windows will either be dropped, become subtly incompatible, or be excluded from other Windows-only features. Mono will neither keep pace with MS releases, nor plug the gaps where patented technologies are coupled to .NET.

If Graphisoft implement scripting within ArchiCAD, I would prefer that it was based on an open, published standard.
Ralph Wessel BArch

stefan
Enthusiast
Ralph wrote:
peter_h wrote:
I'm a proponent of .NET as the best option - it's language-neutral (you can use C#,Basic,Python,Javascript,etc) and can be cross-platform (if the open source Mono implementation is used ).
You should never rely on proprietary frameworks if you intend to develop cross-platform solutions. If .NET was entirely open-source, it might be an option. Developers have repeatedly had to learn the hard way that Microsoft develops everything to be Windows-centric. There's nothing wrong with that, of course - why should they support a competitor? And if you intend to develop for Windows only, that's perfect.

But never rely on Microsoft to provide an equal experience on any platform other than Windows, and that includes technologies touted as cross-platform like SilverLight. It will not last. At some stage, platforms other than Windows will either be dropped, become subtly incompatible, or be excluded from other Windows-only features. Mono will neither keep pace with MS releases, nor plug the gaps where patented technologies are coupled to .NET.

If Graphisoft implement scripting within ArchiCAD, I would prefer that it was based on an open, published standard.
I agree on a open standard. Python is very successful as a scripting language for many 3D software (e.g. Softimage, Rhino, Blender). I hope they add scripting but not if it is a new proprietary language.
--- stefan boeykens --- architect-engineer-musician ---
Archicad26/Revit2022/Rhino/Unity/Solibri/Zoom
MBP2019:i9Octo2.4GHz32GBVega20/Monterey+Win11
ARCHICAD-user since 1998

TMA_80
Booster
This wish is extremely important. it may bring a lot of "small useful tools" without the being prisonier of the add-on update cycle.

A scripting environment à la Sketchup would be great.
AC12_20 |Win10_64bit|

m_ziolo_86
Newcomer
It would be great to change GDL inside objects to Python. GDL is hard to learn and there is no use of it outside of Archicad. That ceases me from learning it to improve my workflow.
Archicad 16, Win 8.1

Anonymous
Not applicable
I agree, All of the major 3D apps allows scripting or plugin integration via .net, nowadays python. Rhino is fantastic, and also provides free support on forum, Sketchup has also tones of plugins. Revit? Revit also, but I do not care with that.

Anonymous
Not applicable
Mono (http://www.mono-project.com/Main_Page) is cross-platform, open source, .NET development framework.

C# was developed by Microsoft within its .NET initiative and later approved as a standard by Ecma (ECMA-334) and ISO (ISO/IEC 23270:2006).

Both Revit and Rhino use .NET. This would make it more likely and easier to port already-existing scripts to ArchiCAD; and make more commercial plugins more feasible.

Laszlo Nagy
Community Admin
Community Admin
Please consider that a scripting language developed for ArchiCAD would have to support both Windows and Mac.
....................................................................................................
Get Archicad Tips at https://twitter.com/laszlonagy
AMD Ryzen 1700X CPU, 48 GB RAM, Nvidia GTX 1060 6GB, 500 GB NVMe SSD
2x28" (2560x1440), WIN10 PRO ENG, AC20-AC26
Loving Archicad since 1995

stefan
Enthusiast
Take a look at Unity > mono framework with C#, Javascript and boo and running on iOS, Android, Mac, Windows, Linux, Windows Phone, Playstation, XBox, Wii, Webplayer, …

Or Python running on almost any platform and integrated into many CAD and 3D applications (Rhino, Maya, Cinema4D)
--- stefan boeykens --- architect-engineer-musician ---
Archicad26/Revit2022/Rhino/Unity/Solibri/Zoom
MBP2019:i9Octo2.4GHz32GBVega20/Monterey+Win11
ARCHICAD-user since 1998

Anonymous
Not applicable
Or maybe, if not an integrated scripting language, then at the very least, an API implemented using HTTP methods (e.g., GET, PUT, POST, or DELETE), i.e. a RESTful web service.
Then we could program and create GUIs in whatever language we want that can talk TCP/IP. Now if only we could find a language that does that...

Anonymous
Not applicable
Also of interest: www.openbim.org/

"Written with open standards in mind, xBIM (eXtensible Building Information Modelling) is a free, open-source, software development toolkit that allows developers to create bespoke BIM middleware for IFC-based applications.

xBIM is a .NET toolkit, so developers can build everything from simple command-line applications, to extensions for Windows applications and Web services. An example of this would be: an “Add-In” for commercial BIM tools such as Autodesk Revit."

Anonymous
Not applicable
I would go for Ruby (once Autodesk killed AutoLisp).
Can be the missing link between BIM packages. It's simple, OO is perfectly designed and open-source. Could boost archicad and BIM scripting community.

Sketchup -> Ruby API
Revit 2014+ -> Ruby API
Archicad 19+ -> Ruby API

TMA_80
Booster
We could imagine that a feature like the new multi-edit would long have been acheived from some scripters...
AC12_20 |Win10_64bit|

Karl Ottenstein
Moderator
TMA_80 wrote:
We could imagine that feature like the new multi-edit would long have been acheived from some scripter...
Interesting. I cannot imagine how this would be done without involving an extremely heavy development effort to product a scripting function... and such a script. To achieve multi-edit, as it operates in 18 in the 3D window, would be a complex API add-on... and I don't see any script language making that any easier.

Sure, it would be nice to have a built-in, approachable scripting approach vs having to code in C/C++ in the API... but I really don't see the high cost of creating such a scripting environment to pay off for GS in terms of sales... which is the bottom line. 😉
One of the forum moderators   •   AC 26 USA and earlier   •   MacOS 11.6.8, iMac Pro

TMA_80
Booster
Hi Karl,
I'm not a programmer,so I could not answer... However, I could imagine what could be done as it is in the Sketchup World.
AC12_20 |Win10_64bit|

Anonymous
Not applicable
A scripting language would not boost sales but would for sure add value to archicad. This added value could make a diference in the long term. Sketchup, for exemple, would be much less powerful without ruby and probably some people that use it professionally would not use it.

Anonymous
Not applicable
I think it's very short-sighted to question the benefits of adding scripting functionality to a modelling program. Here are some of the kinds of tools that get created when you have your platform open to enhancement via a scripting (C# in the case of Rhino & Grasshopper addons):

https://www.youtube.com/watch?feature=player_embedded&v=4n8U-PGmhCk
http://vimeo.com/28227628
https://www.youtube.com/watch?v=OEjwAyC2l_0#t=179

Here's something a little more esoteric (Python):
http://empython.blogspot.co.uk/

These are all pretty fancy, but as a simple, more practical example where ArchiCAD workflow could be improved, take a look at the "Selections" palette. Do you use it? Probably not, because it's a half-baked idea. Good in principle, but no doubt would have been replaced with something very useable, if we had access to a scripting system.

stefan
Enthusiast
Scripts, like GDL, are less dependent from the API version. Remember how many great and useful ArchiCAD addons have been abandoned each time a new ArchiCAD was released? I'm afraid of starting to rely on addons, as they deprecate each year and no guarantee of them being recompiled for a new release.

Scripting is for power users, to extend the workflow. It has done miracles to get AutoCAD and now Revit integrated into workflows.

They don't even have to,reinvent a language, as GDL might fit the bill. GDL as it stands is limited to a single object in isolation. With scripting you can automate processes, generate objects, integrate into workflows (eg steering Object generation from an Excel sheet), link to online sources or databases.

Currently the DevKit is what allows such extensions but is really hard to get into.
--- stefan boeykens --- architect-engineer-musician ---
Archicad26/Revit2022/Rhino/Unity/Solibri/Zoom
MBP2019:i9Octo2.4GHz32GBVega20/Monterey+Win11
ARCHICAD-user since 1998

Start a new conversation!

Still looking?

Browse more topics

Back to forum

See latest solutions

Accepted solutions

Start a new discussion!