[ Feature ] Link to BuildingPart Not Working ?

A forum dedicated to the Draft, Arch and BIM workbenches development.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
paullee
Veteran
Posts: 5120
Joined: Wed May 04, 2016 3:58 pm

[ Feature ] Link to BuildingPart Not Working ?

Post by paullee »

Hi, testing if Link to a BuildingPart works or not, seems not working / feature not implemented ? :-

Procedures to reproduce
  1. Create some ArchWall
  2. Create a BuildingPart to contrain the ArchWall e.g.
  3. Make a Link to the BuildingPart
  4. Seem it does not work e.g. turn on / off the Link display nothing
Sorry to ping @Realthundar again to see if you have any idea :)
realthunder wrote: Ping
Screenshot from 2019-11-14 02-31-12.png
Screenshot from 2019-11-14 02-31-12.png (223.56 KiB) Viewed 1602 times
Screenshot from 2019-11-14 02-31-22.png
Screenshot from 2019-11-14 02-31-22.png (220.62 KiB) Viewed 1602 times
Attachments
Test_ Link to BuildingPart_ Not Working.FCStd
(32.67 KiB) Downloaded 34 times
realthunder
Veteran
Posts: 2190
Joined: Tue Jan 03, 2017 10:55 am

Re: [ Feature ] Link to BuildingPart Not Working ?

Post by realthunder »

I have added the support. However, if I were to submit it now, it would cause conflicts with the branch I am working on. So I integrate the patch into my branch. I'll release it soon.

Note that when linked to a plain group (BuildingPart is a type of plain group), the Link can no longer create an array by itself. But you are free to create another Link to this Link, and make an array. It does not work with LinkArray yet, because BuildingPart have a Shape of its own, but is set to an empty compound, so Part.getShape() won't work. Maybe we can ask yorik about this.
yorik wrote: ping
building-part.gif
building-part.gif (559.05 KiB) Viewed 1572 times
Try Assembly3 with my custom build of FreeCAD at here.
And if you'd like to show your support, you can donate through patreon, liberapay, or paypal
User avatar
yorik
Founder
Posts: 13664
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: [ Feature ] Link to BuildingPart Not Working ?

Post by yorik »

The building part is really a group. It should be understood as such, and not as an app part, for example. A group that can propagate some operations applied to it to its children (for ex if you modify its placement, it can propagate the change to its children)

It maintains an own shape indeed (which is basically a compound of its children), but that shape is not meant to be used directly by the building part. The idea is for this compound to be a kind of "cache", that is written to the file, and that can be read from outside. It also allows to conveniently clone or copy a building part, and probably many other uses in the future...

The building part's shape shouldn't be empty if it has children, though.. If it's the case then it's a bug. I'll have a look (in december because buried under work right now :| )

The building part is really there to make all kinds of assemblies of objects in a building. In BIM workflow, you usually group your objects by floor. That's what most other apps do. But it's sometimes not convenient (for ex. if you design an elevator, it crosses all floors and you don't want to bind it to just one floor. Same for the glass facade of an office tower. So the way objects should be grouped should be left to decide by the user. There are also sometimes repeatable assemblies of objects (ex a bathroom stall in a corporate bathroom) for which it was interesting to have a special structure which can still carry BIM info.
User avatar
bernd
Veteran
Posts: 12851
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland
Contact:

Re: [ Feature ] Link to BuildingPart Not Working ?

Post by bernd »

totally agree with Yorik. in adition. We use floor group for all objects of a building but in addition we need more group features. An example from structural engineering. A complicated slab could be made from ten or more single shapes. BuildingPart would group them to one slab. A column could be made of a steel profile filled with concrete on top and bottom the column has a plate. Furthermore on bottom the column has some bolt to fix it and on top it has some hook which is used for transport. May be it could have even more special attachments. All these together are one BuildingPart which is of typ IfcColumn wheras all the separate parts could be IfcColumn, IfcPlate, IfcMember.

We have started to make heavy usage of such kind of assemblies in BIM models.
MagnusOfSweden
Posts: 5
Joined: Thu Jul 25, 2019 8:06 am

Re: [ Feature ] Link to BuildingPart Not Working ?

Post by MagnusOfSweden »

Hello,

I have a related issue, and searching the forum I cannot find any answers. Neither the Building nor the Building Part seems to be working properly when you use Transform to move and rotate them.

In my drawing, I first prepared a group containing all 1th floor items, e.g. walls, slabs, roof, furniture (as part objects). I then added new groups within that first floor group, one for each room, to contain room-based features such as furniture,closets, kitchen utilities (mainly part objects and walls). I then added another group for the 2nd floor and one group for the outdoor parts (patios etc. as slabs and columns). This structure allows my drawing to be easily investigated and extended, by hiding the appropriate groups and focusing on the relevant parts of my drawing.

When my house drawing now is 90% ready, I would like to start modeling my plot, comprising different buildings, such as a garage, pump house, small-size cottage, and eventually the plot of land itself (as a mesh) since my real-life plot has 3 different levels including slopes, boulders, trees etc. Also, since my plot borders doesn't have 90 degrees angles, and the different buildings are not placed in straight angles related to each other (rotated some 10-15 degrees), I thought of using the Building object, and move that around in 3D using the Transform tool.

So, first I create the building by selecting all groups and then click on the Building object. So far, so good, and I can hide the whole building using "space". Next, I select the building in the Combo View, right-click and select Transform. Now I have the 3-Arrows to move and 3-Dots to rotate visible on my screen. I then try to move and rotate, but the building does not move with the transform tool. So, I move it in X, and Y, rotate it 45 degrees and press OK, but the building still doesn't move on the screen. However, I can see this movement in the properties Angle and Placement of the Building, but it does not move the object on the screen. When I select the Top-view, all objects inside the building has not changed the angle, nor have they moved. The building is still located in a straight North-South orientation.

There are no errors or other new messages created in the Report view after this operation.

What am I doing wrong?
Best regards Magnus

My release is:
OS: Windows 10 (10.0)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.18760 (Git)
Build type: Release
Branch: master
Hash: ef73ab5f3a330d3c44138f23290f8c9f7a334caf
Python version: 3.7.3
Qt version: 5.12.1
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: Swedish/Sweden (sv_SE)
paullee
Veteran
Posts: 5120
Joined: Wed May 04, 2016 3:58 pm

Re: [ Feature ] Link to BuildingPart Not Working ?

Post by paullee »

MagnusOfSweden wrote: Wed Nov 27, 2019 6:37 am
When my house drawing now is 90% ready, I would like to start modeling my plot, comprising different buildings, such as a garage, pump house, small-size cottage, and eventually the plot of land itself (as a mesh) since my real-life plot has 3 different levels including slopes, boulders, trees etc. Also, since my plot borders doesn't have 90 degrees angles, and the different buildings are not placed in straight angles related to each other (rotated some 10-15 degrees), I thought of using the Building object, and move that around in 3D using the Transform tool.
Hope somebody else could advise - I long have the question how to put a building at 'real world coordinate' and have not found a working example here yet.

Not sure if there is a Move with Host attribute in Arch objects, that needs to be turn on so move a Building object move the children,
or,
it needs to use the Draft Move to move the Building object so there children would move togethr.
MagnusOfSweden
Posts: 5
Joined: Thu Jul 25, 2019 8:06 am

Re: [ Feature ] Link to BuildingPart Not Working ?

Post by MagnusOfSweden »

I have the Move with host property set to True... :-( /Magnus
carlopav
Veteran
Posts: 2062
Joined: Mon Dec 31, 2018 1:49 pm
Location: Venice, Italy

Re: [ Feature ] Link to BuildingPart Not Working ?

Post by carlopav »

Thx @Magnus for testing and describing the problem. Indeed there is a bunch of things that have to be addressed in groups, parts and placement propagation of the arch wb, probably we will tackle them during next month.
Dalibor
Posts: 5
Joined: Mon Nov 09, 2020 7:43 am

Re: [ Feature ] Link to BuildingPart Not Working ?

Post by Dalibor »

realthunder wrote: Fri Nov 15, 2019 8:49 am I have added the support. However, if I were to submit it now, it would cause conflicts with the branch I am working on. So I integrate the patch into my branch. I'll release it soon.

Note that when linked to a plain group (BuildingPart is a type of plain group), the Link can no longer create an array by itself. But you are free to create another Link to this Link, and make an array. It does not work with LinkArray yet, because BuildingPart have a Shape of its own, but is set to an empty compound, so Part.getShape() won't work. Maybe we can ask yorik about this.
yorik wrote: ping
Hi realthunder, what is the current situation regarding your post in the quote above?

Makeing a Link to the BuildingPart is still not working for me in the latest 0.19.24054 AppImage.

Do I need to build the 0.19 myself and apply a patch? How can I get stable version of 0.19 with your fix or is there a more recent & pretty stable version of 0.19 in the master branch (what commit)?

I'm trying to have a well structured project that contains BIM models/objects (grouped by BuildingPart) and TechDraw plans in separated files. The problem is that I need to get my BIM objects to TechDraw files (external link/reference) using either the STD Link to those BuildingPart objects (possible workaround to use STD Link to each sub object separately but it is very messy solution) or Arch Reference to BuildingPart objects, but that breaks HLR algorithm in the TechDraw View and results in showing all lines (no filter for the Hard Hidden).

I'm just trying to follow up the best practise. I believe that using BuildingPart and STD Link is part of it.

I believe this is the commit, making the fix, in your branch.

My Setup:
OS: Ubuntu 18.04.5 LTS (ubuntu:GNOME/ubuntu)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.24054 (Git) AppImage
Build type: Release
Branch: master
Hash: ed873038025277f220dfaa058599a0dfbb435835
Python version: 3.8.6
Qt version: 5.12.5
Coin version: 4.0.0
OCC version: 7.4.0
Locale: English/Australia (en_AU)
paullee
Veteran
Posts: 5120
Joined: Wed May 04, 2016 3:58 pm

Re: [ Feature ] Link to BuildingPart Not Working ?

Post by paullee »

realthunder wrote: Fri Nov 15, 2019 8:49 am I have added the support. However, if I were to submit it now, it would cause conflicts with the branch I am working on. So I integrate the patch into my branch. I'll release it soon.

Note that when linked to a plain group (BuildingPart is a type of plain group), the Link can no longer create an array by itself. But you are free to create another Link to this Link, and make an array. It does not work with LinkArray yet, because BuildingPart have a Shape of its own, but is set to an empty compound, so Part.getShape() won't work. Maybe we can ask yorik about this.
In another thread about LinkArray to BuildingPart, it seems it is not supported. And test Link to BuidingPart it is not implemented.
BIM Array tool materials inheritance

Or fundamentally, after deliberation, it should not be implemented to Group ?

Thanks :D
array example_ r.FCStd
(39.31 KiB) Downloaded 27 times
Post Reply