cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 
GDL
About building parametric objects with GDL.

GDL & the Global Library

Lingwisyer
Guru

Hi all,

 

A few of my door objects which were based in GS door macros do not work in AC28 due to

"Dictionary type value can be stored only in variables declared as dictionary"

I suspect it has to do with core changes to the default macros as there were previously a lot more instances of this error, and now there are only four since I have saved out a few more macros from AC22 for modification. Does anyone know where the declarations are made? I would rather not have to save out every single macro...

 

At a glance the Global Library door macros look similar, but obviously do something drastically different that bricks anything calls the old macros...

 

 

Ling.

 

ps. My doors now show in 2D without cutting the wall, with an A/B rectangular hole in 3D. They showed nothing previously, so progress?

AC22-28 AUS 3110Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win11 | R5 2600 | 16GB | GTX1660
8 REPLIES 8

Unfortunately, the permanent solution is to open problematic macros for Your doors/windows (while having the monolitic library loaded) and save them as new and include them in Your library + ofc name change in calls etc. (been there done that)

The hard part is to link the MVO to the new options like opening lines/detali etc (unless You handle it in the library) - You can also copy and modify the MVO files too. It is possible to link the library to work with the old system and the new system (reading first the old settings, then the new.

But I believe I left the calls for the macros that interact with MVO and they did not cause problems.

 

 

Lingwisyer
Guru

Yeah, I have been tracking down the problematic macros slowly... I had not even thought about the MVO changes... Zzz... From only having the macros where I had modified or added to their effect to now needing to include a bunch in which GS has modified the core functionality... In all of this digging though, I did find out that a bug in one of my doors, unresolved, was actually inherited from the original object, and that it has since been fixed in AC28.

AC22-28 AUS 3110Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win11 | R5 2600 | 16GB | GTX1660

Have you gotten around the calling of the OpeningLines macro? I'm updating an object and suffering at this part, no matter how I try, obviously doing something wrong here, I keep getting a warning that points to line 72 at the 3D script, problem seems to be at 

opLineOptions = something, that part never seems to work
Archicad User Since 2013
GDL Developer
Experimenting with API
from Brazil

Have not fixed any of the 3D yet, so it currently just generates the wallhole...

AC22-28 AUS 3110Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win11 | R5 2600 | 16GB | GTX1660
Lingwisyer
Guru

I think I have almost duplicated every GS door macro...

 

So far my door is missing a wallhole in 2D, and the correct width WALLHOLE in 3D. For some reason the 3D WALLHOLE that is there is trimming the door frame... As a consolation, there are "NO" errors now...

AC22-28 AUS 3110Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win11 | R5 2600 | 16GB | GTX1660

That macro is not among one of the one I have duplicated so far, but I am no longer getting errors in my door. Though I have not changed any of the default settings, so it might only get called after some toggle and scream at that point...

AC22-28 AUS 3110Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win11 | R5 2600 | 16GB | GTX1660
Lingwisyer
Guru

You know what would have been nice, would be if GS included a Door & Window Migration.libpack which is called apon if a door or window uses an pre AC28 GDL version.

AC22-28 AUS 3110Help Those Help You - Add a Signature
Self-taught, bend it till it breaksCreating a Thread
Win11 | i9 10850K | 64GB | RX6600 Win11 | R5 2600 | 16GB | GTX1660

You should get& resave under new name the "old" opening lines macro, the new one needs dict parameters as input(AFIR), and If You use the old MVO dependant features - they would not feed this macro correctly.

Anyway it is huge task to rework library basing on the old manner to the libpacks compatibility