The Global Archicad Community

Stay informed. Get help. Share your knowledge.

Topics specific to the scripting and development of Library Parts and Libraries using Param-O or the Geometric Description Language – GDL. (Example: How do you use “REQUEST” GDL commands?)

Moderators: Karl Ottenstein, LaszloNagy, ejrolon, Barry Kelly, gkmethy, rmasaki, Akos Somorjai, Csilla Mai, Peter Baksa

User avatar
By Moonlight
#294958
@Ralph Wessel

Just make a comparison between McNeels Rhino's API and that of ArchiCAD.

There is a more people and companies that already are using McNeel's Rhino API than that of ArchiCAD's, and by this way you may encourage more people to adopt it, it's something like throwing the ball over their wall.

And about the size, don't forget that the size of ArchiCAD's user manual is 600+ pages
User avatar
By Ralph Wessel
#294978
Moonlight wrote:
Thu Feb 28, 2019 10:16 pm
Just make a comparison between McNeels Rhino's API and that of ArchiCAD. There is a more people and companies that already are using McNeel's Rhino API than that of ArchiCAD's, and by this way you may encourage more people to adopt it, it's something like throwing the ball over their wall. And about the size, don't forget that the size of ArchiCAD's user manual is 600+ pages
What I was really interested in knowing was your reason for preferring a PDF to the GS' current approach - in terms of everyday working practice.
User avatar
By Moonlight
#294989
I don't prefer pdfs over current approach, but at least users will interpret this move as an invitation to use it
By Joe Putnam
#295001
I want to put my two cents in here as a long time Rhino user and someone that develops many custom rhino/grasshopper components including a proprietary Grasshopper link to Revit that is exactly what GS is currently doing. As I continue to say I switched to Archicad because I know first hand the internals of Revit what it can and cant do and Archciad is clearly the superior product from a computer science stand point. There are some major issues I see with the GS approach however.

I think McNeel has a different/better sense of who their audience is. They know that the vast majority of those people using their API and documentation are the user base solving small issues to get production done. GS seems to be serving the professional developer base and all documentation and interaction is geared towards this. If you look at those developing for McNeel a great deal of them where in fact users that produced some amazing tool that took off and McNeel took them on where it made sense. Autodesk for all their horrible practices (we paid a major price tag to have developer contact) has also started to recognize this. Their API is pure crap but they seem to be doing a similar outreach to users who are making them look good. Dynamo was started by a graduate student I believe and has taken off as a community lead opensource project. GS appears to me, to be akin to Apple and their walled garden. Something that today is just not going to work.

I think GDL is amazing it is hands down the reason I use Archicad. The new python API is also amazing and will help solve production issues where one could very easily open up a script window and get what ever data they need. I do however think that this is simply not enough. GS must embed .net if they want to compete. Professionals are making tools with C++. Graduate students and Architect/Developers are all using .net and C# in particular. McNeel has just about every language available for their api and this is why they are so strong. They also put most of the work on github for us non programmers to look at use and make our own.

https://github.com/mcneel

this is something that GS needs to really work on. Look at all these examples right there for anyone to use.

https://github.com/mcneel/rhino-developer-samples

look at this tool open and available to many languages.

https://github.com/mcneel/rhino3dm

because of this I am helping them to integrate the .3dm format into the new Blender 2.8 something that saves me countless hours even though I spend developer time on the plugin. Something I am sure I would do if GS had a more open approach.

https://github.com/jesterKing/import_3dm

look at this! You do not have to sign up for a horribly outdated php forum and get approved just to read the docs!

https://developer.rhino3d.com/api/Rhino ... Common.htm

And now look at this. Here is a tool produced at night by an open source developer working on Blender, a project on a shoestring budget. They are producing tools their developer/users can use to write plugins. Why after so many years can GS not provide something up to date for GDL when its clear that this can be done using many existing frameworks?

https://github.com/JacquesLucke/blender_vscode


I do not mean this to be a rant or anger directed at GS. I really want to see these issues fixed because one of the major advantages that Revit / McNeel and the like have are their user base doing truly awesome things and showcasing the software they use. GS is missing this because they have not yet found the right recipe to provide the framework for this to happen. There is a post over in the Grasshopper section of this forum asking where the inspirational videos are from GS. This to me is kind of ridiculous. Every other platform the users are producing the inspirational videos, the developers behind those platforms are simply providing them with a tool set that GS has yet to do.

I hope this helps in some way

joel

EDIT:

I want to add this here because I know there will be some discussion about technical difficulties, multi platform etc.

Godot, a cross platform game engine arguably going to give unity a run for its money implemented mono with I believe 2 people in about a year. They do not have the budget GS does but I do believe that Microsoft gave them some money to do this 20k or so. Given that Microsoft is moving much of the .net run time to core I do not see why GS should not find a way to have strategic partnership to make this happen. This is something that can/should be done.

https://github.com/godotengine/godot/is ... pic%3Amono
User avatar
By Moonlight
#295003
@Joe Putnam

I would like to thank you for explaining the part of the API in relation to Rhino users, you have just expressed my idea in words that I didn't know how to express. And about the part on whether or not to embrace C#, well I don't know what to think about since I don't have the tools nor the means to form an objective opinion.

Anyway I want to add my point of view about that matter from a different perspective:
It was my owe of Grasshopper that have pushed me to get interested in Python and C#, and it's Rhino's API that have convinced me to invest in learning the use C# and Python, and it was the tutorials made by experts/not-that-experts that talked in a language I can understand that have maintained me on the track of the learning curve, not just some info stacking on a web-page.

But most important Graphisoft, just don't recreate past error in new ways and in new dates, for example, are you aware that until today the most important information source to learn GDL, is "The GDL Cookbook" written by David Nicolson-Cole, a 20 years old book ????!!!! and until today I see novice and expert advice who want to learn to read that book in many forums and groups .... and you know why, because it was written in a language a normal non-tech savy can read and understand, and it successfully lay down a foundation for users to self improvement.

By the way, GDL should be defended as the excellent BIM object creation tool, not that of Revit Families.
By Joe Putnam
#295007
Moonlight wrote:
Sat Mar 02, 2019 12:01 am

I would like to thank you for explaining the part of the API in relation to Rhino users, you have just expressed my idea in words that I didn't know how to express.

I am happy to lend a voice and help GS solve this issue. I see this often here on the forum where there is a language barrier or a knowledge barrier and so many times the questions being posed go unanswered. Personally I have asked questions over in the python beta group and they have been ignored (and btw I cant even get the beta site to open anymore but I am starting to ask myself what is the point). To me this is insane. Where is the customer service? Look at any Rhino Forum, Blender Forum, Epic, Autodesk even now and you will see that no question goes unanswered for long or ignored and even those questions posed by the novice are given the same amount of attention as those by experts. Hell if I where to send Bob an email or a tweet he would reply! Now that is how you build a community around a tool.

Moonlight wrote:
Sat Mar 02, 2019 12:01 am
But most important Graphisoft, just don't recreate past error in new ways and in new dates, for example, are you aware that until today the most important information source to learn GDL, is "The GDL Cookbook" written by David Nicolson-Cole, a 20 years old book ????!!!!

I think this is where GS needs to open up, provide a much better IDE to today's modern standards, drop the proprietary license crap including not being able to modify and share the existing built in parts (are you kidding me with this??) and then get a proper set of examples that are continually updated by either GS and/or the community live on github. Information goes out of date but having access to continually produced simple short real world examples is where its at.

Moonlight wrote:
Sat Mar 02, 2019 12:01 am

By the way, GDL should be defended as the excellent BIM object creation tool, not that of Revit Families.

This is absolutely true but not 100% correct. Where is the equivalent of the Family Editor? There is a library maker tool but that is again behind a walled garden, and honestly a seriously bad hack. Until GS provides a way to easily create Parametric GDL objects to everyone who purchases a license of Archicad this will always be true but not correct.
It seems to me that there is some version of GDL in several Nemetschek software packages and they need to all get together and solve this. And if they really want to see GDL used open the tools up. Where is the compiler, the interpreter? Why is there no option to embed this into other packages? And yeah I guess I could license it but what is the real incentive for anyone other than Nemetschek to do that? I think that GS may have really hung themselves with this one honestly because not everyone is interested in or should be required to script a needed library element. But they should all be able to take full advantage of GDL.
User avatar
By Moonlight
#295012
@Joe Putnam
But most important Graphisoft, just don't recreate past error in new ways and in new dates, for example, are you aware that until today the most important information source to learn GDL, is "The GDL Cookbook" written by David Nicolson-Cole, a 20 years old book ????!!!!
The first GDL manual I have ever read was that of ArchiCAD 6 in 2000, and after few year I got my hands on that of David, but what I meant with that quote is that these two manuals were made to encourage people to use/learn GDL, by using simple language that they can understand and with ever bit they raised the bar a little bit, so wen you finish reading them, you already know enough not only to create new stuff but also to know when/where/how you ask the question you need even if that means you raise the bar quiet high for your capacity at the time.

By the way @Joe, I was thinking in another way, except for MEP capabilities that Revit families have, GDL lacks nothing but few notches, like the ability to save textures/shaders, IFC data, etc, and that the end user would think about nothing who ever s/he, or what ever was his/er job.

Need a nice super 3D model for rendering, same GDL, only a 2D representation you got that, in other words, GDL must be seen as the standard BIM object exchange container, unless GS have already made the next generation that we know nothing about !!
User avatar
By Moonlight
#295021
By the way Graphisoft,

I also must mention that I feel puzzled for finding in Rhino's Discourse forums, some ArchiCAD users asking questions about problems they face when working with ArchiCAD-Grasshopper connection, that is more related to ArchiCAD than that of Grasshopper ... I think you should make someone pay those users a visit from time to time to answer their questions and create a presence in the Rhino community.
User avatar
By Moonlight
#295051
This statement about "LIBRARYGLOBAL" should be included:
LIBRARYGLOBAL is a function that should be used in 2d and 3d to reach the parameter values of an MVO dialog, and change the object’s behaviour based on that. It should not be used in parameter script, and it does not make any effect on parameter values of placed objects.
Source: Gergely Fehér on "LIBRARYGLOBAL" in GDL Centrl Forum
User avatar
By Ralph Wessel
#295066
Maybe I'm a bit slow on the uptake, but this topic seems to be wandering all over the place. Could I suggest having a different topic for each specific issue?