I can tell you the method of doing it, but I do not have the time to actually do it for you.
There are GDL Global variables that Library Objects can use to obtain info about the state of the Project or elements in it.
One such variable is the GLOB_FRAME_NR variable. Here is is description:
http://archicadwiki.com/Global_GDL_Parameters#head-79c77ce70e2254718bd7c757968c9ccaad640986
You need to use this read-only variable in the 3D Script of your Door object to ask from Archicad what Frame of the Animation it is currently creating. It will give you an integer number.
In most Door Objects, among the Parameters, under the 3D Representation category, you will find one called 'Opening Angle in 3D'.
You must modify your 3D Script so that the GDL variable 'gs_open_3D' changes depending on the value of the Frame.
I would use 4 new variable. You will need to create these new parameters for the Door object:
1. StartFrame - this will be the Frame of the Animation at which the Door will start to open from its Starting Opening Angle value.
2. EndFrame - this will be the Frame of the Animation at which the Door will reach its End Opening Angle value.
3. StartAngle - the Angle at which the Door is open when it starts opening.
4. EndAngle - the Angle at which the Door stops opening.
Then you would have a the following formula:
FrameNumber=EndFrame-StartFrame
CurrentFrame=GLOB_FRAME_NR-StartFrame
gs_open_3D=StartAngle+CurrentFrame*(EndAngle-StartAngle)/FrameNumber
Example: You want aDoor in your Project to start opening from and Angle of 30 degrees at Frame 150 and reach its final opening angle of 120 degrees at Frame 170.
In this case:
StartFrame=150
EndFrame=170
StartAngle=30
EndAngle=120
At Frame 150 (GLOB_FRAME_NR=150):
gs_open_3D=30+0*(120-30)/20=30+0*4.5=30
At Frame 158 (GLOB_FRAME_NR=158):
gs_open_3D=30+8*(120-20)/20=30+8*5=70
At Frame 170 (GLOB_FRAME_NR=170):
gs_open_3D=30+20*(120-30)/20=30+20*4.5=120
You might also want to create a boolean toggle so this whole thing is executed only when this toggle is set to ON (when you want to use it).
You can place this in either in the Master Script or the beginning of the 3D Script of the Door object.
I hope you can make it work.
Loving Archicad since 1995 - Find Archicad Tips at x.com/laszlonagy
AMD Ryzen9 5900X CPU, 64 GB RAM 3600 MHz, Nvidia GTX 1060 6GB, 500 GB NVMe SSD
2x28" (2560x1440), Windows 10 PRO ENG, Ac20-Ac27