BIM logical dependencies between model elements, parameterized modeling, georeferencing

A forum dedicated to the Draft, Arch and BIM workbenches development.
langk
Posts: 8
Joined: Sat Nov 09, 2019 11:39 am

BIM logical dependencies between model elements, parameterized modeling, georeferencing

Postby langk » Sat Nov 09, 2019 12:16 pm

Hello dear Community,

I am currently writing my master thesis in which I'm testing FreeCAD under the aspect of BIM. The following is a bit of a mix of questions and comments. I'm still relatively new to FreeCAD so if there are already answers/forum posts to my comments or sggestions, just tell me :)
Thank you in advance for all your answers!
(Also if this isn't the right forum, I'm sorry)

For my research I modeled a simple house. I'm using the newest version of FreeCAD 0.18.4.

  • Is it possible to change the values o1 / o2 and other parameters after creating a window (not the height and width)?
  • Can I easily change the type of a window after creating it? So make an Open1-pane an Open2-pane window without the detour of previously deleting the window and placing a new one? (In Revit, for example, you would simply select the window and change the type. But types are not fixed in that sense except for columns (e.g HEA220), right?)
  • Is there an attribute for walls that indicates whether they are load bearing or non-load bearing? Or, if it doesn't exist, wouldn't that be a useful attribute to add? After all, one of the basic ideas of BIM is that the function of the object can be specified in the object properties. Another food property would be whether that walls are inside or outside…
  • The same applies to the display of the volume of a body. For example, I would like to display the volume of a wall in a list. I tried it with the Spreadsheet module, but strangely enough it calculates a different volume than the FCInfo macro or the Python console. I would also like to work with the Reporting add-on because it can do more. There I can only access attribute from the data area. Therefore, wouldn't it also make sense for a BIM analysis to include volumes in the attributes?
  • Suppose I use a sink from the parts_library. And I would like to fix it to the wall in such a way that it would move with the wall if the wall were to move. I had thought about assigning a host, but at the moment it only seems to exist for windows and doors.
  • Is it possible to georeference my created house? The goal is that I export the house in IFC and then load into another BIM program and com along with the georeferencing. So it's transmitted over IFC. (In Revit, for example, this can be done using a survey point and a project base point, or by importing a georeferenced DWG/DXF.)
Here are three more questions about topology that I just want to make sure I understood correctly (and if I understood them correctly it's probably also something to think about in future developement...):
  • Walls don't know anything about each other. So if I build a room from 4 walls and I move one wall , there's no way the other walls will automatically adjust, right?
  • I can't make a connection between the slab and the walls either. So if I move my walls 3m to the outside because my house got bigger after all, then the ceilings won't come along, right?
  • Or if I decide my walls are 1m higher than initially planned and on my walls lies a roof created with the roof tool on the top, then that doesn't adjust automatically?
Attachments
Haus_Forum.PNG
Haus_Forum.PNG (13.67 KiB) Viewed 260 times
User avatar
Kunda1
Posts: 5913
Joined: Thu Jan 05, 2017 9:03 pm

Re: BIM logical dependencies between model elements, parameterized modeling, georeferencing

Postby Kunda1 » Sat Nov 09, 2019 12:23 pm

Moved to BIM subforum
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
vocx
Posts: 1848
Joined: Thu Oct 18, 2018 9:18 pm

Re: BIM logical dependencies between model elements, parameterized modeling, georeferencing

Postby vocx » Sat Nov 09, 2019 7:31 pm

langk wrote:
Sat Nov 09, 2019 12:16 pm
...
  • Is it possible to change the values o1 / o2 and other parameters after creating a window (not the height and width)?
An Arch Window is defined by its Sketch. So just edit the sketch directly and you can change most of its distances.
  • Can I easily change the type of a window after creating it? So make an Open1-pane an Open2-pane window without the detour of previously deleting the window and placing a new one? ...
Not really. The preset windows are hard coded inside the Arch Window tool. See ArchWindow.py.

The convenience functions programmatically create the sketches, and then create the window. Maybe these could be adapted to quickly reconfigure and already installed window. Probably it would just do the same thing you do now, remove the old window, and re-create the new window, using the old window properties.
  • Is there an attribute for walls that indicates whether they are load bearing or non-load bearing? Or, if it doesn't exist, wouldn't that be a useful attribute to add? After all, one of the basic ideas of BIM is that the function of the object can be specified in the object properties. Another food property would be whether that walls are inside or outside…
You can turn any Arch Wall into an Arch Structure. Maybe that's enough to define it as load bearing? I'm not entirely sure, but I think you can modify the IFC Role as you wish so that when you export an IFC file, the properties are as you expect them to. In any case, adding the new property wouldn't be a big problem.
  • The same applies to the display of the volume of a body. For example, I would like to display the volume of a wall in a list. I tried it with the Spreadsheet module, but strangely enough it calculates a different volume than the FCInfo macro or the Python console. I would also like to work with the Reporting add-on because it can do more. There I can only access attribute from the data area. Therefore, wouldn't it also make sense for a BIM analysis to include volumes in the attributes?
I don't have experience with this; the Arch Schedule tool is the basic thing that you would use; the Reporting Workbench (forum) is definitely the more advanced solution.

To really know what you mean about erroneously reported volumes, you'd need to provide an example that demonstrates the issue.
  • Suppose I use a sink from the parts_library. And I would like to fix it to the wall in such a way that it would move with the wall if the wall were to move. I had thought about assigning a host, but at the moment it only seems to exist for windows and doors.
For grouping things, you should use Arch BuildingParts.
  • Is it possible to georeference my created house? The goal is that I export the house in IFC and then load into another BIM program and com along with the georeferencing. So it's transmitted over IFC. (In Revit, for example, this can be done using a survey point and a project base point, or by importing a georeferenced DWG/DXF.)
Maybe take a look at the Geomatics Workbench. I remember several discussions about this. It's probably possible, but I haven't done it myself. You should spend a couple of hours going through old threads in this subforum.
...
  • Walls don't know anything about each other. So if I build a room from 4 walls and I move one wall , there's no way the other walls will automatically adjust, right?
  • I can't make a connection between the slab and the walls either. So if I move my walls 3m to the outside because my house got bigger after all, then the ceilings won't come along, right?
  • Or if I decide my walls are 1m higher than initially planned and on my walls lies a roof created with the roof tool on the top, then that doesn't adjust automatically?
Walls and structures can be connected if you add them to each other using the Arch Add tool. For keeping things grouped, you should use something like an Arch BuildingPart.

But yes, in general, objects aren't smart enough at the moment to automatically adjust every dimension based on the surrounding objects. Each object is more or less independent of each other. However, by using Expressions, it is possible to define some properties that can be used by other objects; this could make your building more parametric in a sense. That is, you could use the Height of a wall to define the vertical distance of the roof; then if you increase the height, the other object automatically follows. This is possible in many cases, but it may not be possible in others.
User avatar
bernd
Posts: 8468
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: BIM logical dependencies between model elements, parameterized modeling, georeferencing

Postby bernd » Sat Nov 09, 2019 9:41 pm

Wow what a great honor for FreeCAD. Just a small hint. Arch development goes fast, ifc development in FreeCAD too. If you miss something haveing a look at the 0.19 dev versions could makes sense.

This forum is for sure the best resource for information around FreeCAD Arch. Three hints, ask, ask, ask :)

bernd
User avatar
bernd
Posts: 8468
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: BIM logical dependencies between model elements, parameterized modeling, georeferencing

Postby bernd » Sat Nov 09, 2019 9:43 pm

The link in this post might be of interest for you. https://forum.freecadweb.org/viewtopic.php?f=39&t=36829
langk
Posts: 8
Joined: Sat Nov 09, 2019 11:39 am

Re: BIM logical dependencies between model elements, parameterized modeling, georeferencing

Postby langk » Thu Nov 14, 2019 3:00 pm

Thank you so much for your answers!

I recently found the load bearing and inside/outside property in the IFC Psets. I just didn't saw it the first time...


Because of the volume:
This is the result from the Survey-Tool:
wall_volume1.PNG
wall_volume1.PNG (1.95 KiB) Viewed 128 times
This is the result from the macro FCInfo:
wall_volume2.PNG
wall_volume2.PNG (3.92 KiB) Viewed 128 times
And this is what the spreadsheet tells me:
wall_volume3.PNG
wall_volume3.PNG (3.15 KiB) Viewed 128 times
I mean, the difference is not that much. But there is still a different...
hlg
Posts: 16
Joined: Fri Jul 12, 2019 10:11 am

Re: BIM logical dependencies between model elements, parameterized modeling, georeferencing

Postby hlg » Thu Nov 14, 2019 3:52 pm

Walls don't know anything about each other. So if I build a room from 4 walls and I move one wall , there's no way the other walls will automatically adjust, right?
Did you try to create the floorplan as a sketch and deduce the walls from the sketch elements? I assume this could potentially cover part of the requirements as you could leave dimensional degrees of freedom while fixing the topology of wall elements. I did not try, but this could work for storeys and wall heights as well, if you add a vertical sketch plane. Working with sketches (and similarly with expressions as proposed by Kunda1) might be a bit hard to get used to and does not conform to the standard CAAD workflow, but at the same time could provide a lot more freedom.

I recently found the load bearing and inside/outside property in the IFC Psets.
Exactly that's the place to store this information in IFC. For the external/internal property it would be a nice-to-have feature if FreeCAD could determine and populate this automagically.

Therefore, wouldn't it also make sense for a BIM analysis to include volumes in the attributes?
Same as "IFC properties manager" there is "IFC quantities manager". From IFC point of view quantities would be the way to include these calculated values. Not sure if the quantities manager is functional currently and which way of calculation it uses.

... strangely enough it calculates a different volume ...
To me it seems as if FCInfo and the Survey Tool do only round differently. For the larger discrepancy to the spreadsheet, is there maybe a door or window in that wall? The difference is in the magnitude of a typical window or door volume and the spreadsheet may just not consider the opening and subtract it. Also bear in mind that in construction project practice, there are different conventions and regulations of how to handle subtractions. For billing for instance, usually there is a volume threshold below which openings, niches, slots and the like are disregarded for the calculation.