Unexpected window frame/panel behaviour

A forum dedicated to the Draft, Arch and BIM workbenches development.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
hko
Posts: 96
Joined: Thu Apr 23, 2020 10:44 pm

Unexpected window frame/panel behaviour

Post by hko »

Hi,

Arch Window wiki page says "Window objects are based on closed 2D objects, such as Draft Rectangles or Sketches, that are used to define their inner components. The base 2D object must therefore contain several closed wires, that can be combined to form filled panels (one wire) or frames (several wires)."

So, I create a wall and a rectangle on the face of it:

wall1.png
wall1.png (104.28 KiB) Viewed 1034 times

I select the rectangle and click the window tool and a window is created. It appears that the window has a panel which is what the wiki suggests for one wire, but when I double click the window in the model tree and select the only component ("Default") for editing to see its properties, it says the type is "Frame". Why is that?

wall3.png
wall3.png (134.08 KiB) Viewed 1034 times

In the recent Extrude to Cut. How to get it working thread Thomas suggested to create windows and hide them in order to create openings.

Continuing my example I thought: couldn't I remove the panel to leave only the opening so that I don't have to hide the window. Well, this is what happens when I remove the "Default" component:

wall4.png
wall4.png (113.11 KiB) Viewed 1034 times

I have the opening in the wall but somehow the panel appears separately in the 0,0,0 coordinate now. Surely this shouldn't happen?

The final FCStd is included as an attachment.

Code: Select all

OS: Ubuntu 20.04.4 LTS (KDE/plasma)
Word size of FreeCAD: 64-bit
Version: 0.20.24436 (Git)
Build type: Debug
Branch: master
Hash: bf527ba5ed9cbde0813e702c2f3793fb55f5be7c
Python 3.8.10, Qt 5.12.8, Coin 4.0.0, OCC 7.3.0
Locale: English/United States (en_US)
Installed mods: 
  * 3DfindIT 1.2.0
  * Render 2022.1.0
  * BIM 2021.12.0
  * Manipulator 1.4.3
  * parts_library
  * dodo
Attachments
walltest.FCStd
(14.85 KiB) Downloaded 20 times
User avatar
thomas-neemann
Veteran
Posts: 11801
Joined: Wed Jan 22, 2020 6:03 pm
Location: Osnabrück DE 🇩🇪
Contact:

Re: Unexpected window frame/panel behaviour

Post by thomas-neemann »

hko wrote: Sat May 14, 2022 7:00 pm ..
what should the end result be?
Gruß Dipl.-Ing. (FH) Thomas Neemann

https://www.youtube.com/@thomasneemann5 ... ry=freecad
paullee
Veteran
Posts: 5098
Joined: Wed May 04, 2016 3:58 pm

Re: Unexpected window frame/panel behaviour

Post by paullee »

hko wrote: Sat May 14, 2022 7:00 pm Arch Window wiki page says "Window objects are based on closed 2D objects, such as Draft Rectangles or Sketches, that are used to define their inner components. The base 2D object must therefore contain several closed wires, that can be combined to form filled panels (one wire) or frames (several wires)."
...

I select the rectangle and click the window tool and a window is created. It appears that the window has a panel which is what the wiki suggests for one wire, but when I double click the window in the model tree and select the only component ("Default") for editing to see its properties, it says the type is "Frame". Why is that?
...

I have the opening in the wall but somehow the panel appears separately in the 0,0,0 coordinate now. Surely this shouldn't happen?
  1. Sketch (rather than Draft Wire/Rectangle) let you do a number of edges / wires, Sketch is default when using the Window tool, they work better together. Anyway, this is another topic / see some hint below.

    Technical Hints
    .
  2. Just try click the Window tool without selecting anything, select the simple window type, look at the Base Sketch it autocreate, there should be a few closed Wires, which Window tool default to make them Frame, Glass Panel etc.
  3. Now if you manually create a Base (Draft Rectangle), and click Window tool, it seems to be default behaviour to use the 1st Wire as Frame, probably next few Wire as Panel etc. (or all needs manual intervention?)
  4. Frame works with 2 Wires, Window would create 2 faces, cut one from another to create a frame. Now you only have 1 Wire (Rectangle), so it is a face (panel) you got.
  5. Check the Window wiki / tutorial which teach how to create custom window type with Sketch

    Simple Workflow to create Opening
    .
  6. I try that trick to remove all the element in Window, and hope it create opening, without any Frame, Glass Panel, but it seems Window is not customised to do this

    (Maybe someone would like to tweak the Window tool to allow this workflow ?) :D
  7. As you already have a Rectangle, just Part Extrude it, and put the Solid in the Subtraction of the Wall, and you have an opening. Cleaner this way at the moment.
walltest_ r.FCStd
(22.98 KiB) Downloaded 21 times
Screenshot from 2022-05-15 08-41-48.png
Screenshot from 2022-05-15 08-41-48.png (166.7 KiB) Viewed 979 times
Screenshot from 2022-05-15 08-42-50.png
Screenshot from 2022-05-15 08-42-50.png (202.73 KiB) Viewed 979 times
User avatar
yorik
Founder
Posts: 13640
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Unexpected window frame/panel behaviour

Post by yorik »

ideally, when we create a new window component automatically, if the window is based on an object containing only one wire, indeed the component type should be "Panel" and not "Frame". This is fixed in git commit 3ec140fac7
hko
Posts: 96
Joined: Thu Apr 23, 2020 10:44 pm

Re: Unexpected window frame/panel behaviour

Post by hko »

paullee wrote: Sun May 15, 2022 12:57 am Sketch (rather than Draft Wire/Rectangle) let you do a number of edges / wires, Sketch is default when using the Window tool, they work better together. Anyway, this is another topic / see some hint below.
Interestingly there is a video by Yorik that suggests that you could draw for example two draft rectangles and put them into a BIM compound and create a window out of that compound. Just for the fun of it I tried that but didn't succeed in creating a window that would actually appear as a window in a wall. My test model is included as an attachment. I get "<Part> ViewProviderExt.cpp(1269): Cannot compute Inventor representation for the shape of windowtest#Window: Bnd_Box is void" error when loading that model.

paullee wrote: Sun May 15, 2022 12:57 am As you already have a Rectangle, just Part Extrude it, and put the Solid in the Subtraction of the Wall, and you have an opening. Cleaner this way at the moment.
Thanks for the suggestion, I'll do that. One sadly can't use wall's thickness (width) in an extrusion length expression because that creates a loop in the graph and FreeCAD complains about that, but I guess that's not a big deal. With windows you can use parent wall's width in a hole depth expression without errors.

yorik wrote: Mon May 16, 2022 7:34 am ideally, when we create a new window component automatically, if the window is based on an object containing only one wire, indeed the component type should be "Panel" and not "Frame". This is fixed in git commit 3ec140fac7
Thanks for the fix.
Attachments
windowtest.FCStd
(23.58 KiB) Downloaded 15 times
Post Reply