We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.

auto-adapting sill

Anonymous
Not applicable
Hi all,

I am trying to script some of my own windows and doors. I got some working, but I want to create a sill under my windows that grows or shrinks automatically if the window is further or nearer to the wall plane.

I see this happening with the standard windows that come with Archicad, but I cant find how they do this.

I do come across the term Glob_context, but how do I implement this if it is what I am looking for?

(ArchiCad 17)
10 REPLIES 10
David Maudlin
Rockstar
Rik:

Based on your description I am not sure exactly which Global Variables (in the GDL Reference Guide) you need, but some that might help are WALL_THICKNESS, which gives the thickness of the host wall, and WIDO_SILL which gives the setback of the window or door.

David
David Maudlin / Architect
www.davidmaudlin.com
Digital Architecture
AC27 USA • iMac 27" 4.0GHz Quad-core i7 OSX11 | 24 gb ram • MacBook Pro M3 Pro | 36 gb ram OSX14
Anonymous
Not applicable
Thanks David!

I'll look into it first thing tomorrow morning!
Anonymous
Not applicable
It works! WIDO_SILL does the trick!!

Just add '+WIDO_SILL' to the coordinates of the (PRISM)sill that you want to keep constant in respect to the outer wall plane.

David, you are my hero today!
Anonymous
Not applicable
On the other hand...

At the back of the sill, AC just continues the WALLHOLE.
I tried to close that gap with a block, with a height of WALL_THICKNESS, but for some reason this block will not show up in plan or 3D, only in 3D preview...

Any thoughts on this one?
David Maudlin
Rockstar
Rik:


PRISM, in the 3D Script, will only appear as part of the 3D model, not part of the 2D View (2D is separately scripted in the 2D Script). Maybe the WALLHOLE is not large enough to include both the window and sill, so the sill is buried in the Wall. Screen shots, and posting the code, would be helpful.

You should add a Signature to your Profile (click the Profile button near the top of this page) with your ArchiCAD version and operating system (see mine for an example) for more accurate help in this forum.

David
David Maudlin / Architect
www.davidmaudlin.com
Digital Architecture
AC27 USA • iMac 27" 4.0GHz Quad-core i7 OSX11 | 24 gb ram • MacBook Pro M3 Pro | 36 gb ram OSX14
Anonymous
Not applicable
Oke, here are some screenshots, since my last post seems very confusing.

In the left section you can see my window+sill. But the backside off the wall should go up behind the sill, touching the window.

This gap is what I want to close with a box or prism, whatever works! As pointed out in red in the right section.
sections.jpg
Anonymous
Not applicable
I enclosed a view of my script + 3d preview, so you can see what I have tried.

-I first tried a prism, with added WALL_THICKNESS for coordinates, just like the sill was made. (somehow the '+WALL_THICKNESS' got deleted from the script)

-I now have a box, which shows fine in the 3d preview, but in the scene it will not show. (I wonder how it calculates the height in the preview, as there is no wall to give wall_thickness a number...)
David Maudlin
Rockstar
Rik:

Based on what you posted, I cannot see what the problem could be. You can zip the window object file and post it to the forum for better testing.
Rik wrote:
(I wonder how it calculates the height in the preview, as there is no wall to give wall_thickness a number...)
The wall_thickness is taken from the current default value of the Wall Tool in the open ArchiCAD project file.

David
David Maudlin / Architect
www.davidmaudlin.com
Digital Architecture
AC27 USA • iMac 27" 4.0GHz Quad-core i7 OSX11 | 24 gb ram • MacBook Pro M3 Pro | 36 gb ram OSX14
Anonymous
Not applicable
I found the problem!

When I save my object as an actual window, all sorts off code is added to the script. And somewhere it states the WALL_THICKNESS. But it does so twice...

I don't know why, so I don't want to delete one. So I just changed the latst one into WALL_THICKNESS = WALL_THICKNESS

This does the trick!
script window.jpg