[Bug] placement of boolean base propagates to secondary body

About the development of the Part Design module/workbench. PLEASE DO NOT POST HELP REQUESTS HERE!
CluelessJunk
Posts: 18
Joined: Tue May 31, 2016 9:23 am

Re: [Bug] placement of boolean base propagates to secondary body

Postby CluelessJunk » Sat Jan 28, 2017 2:46 pm

I recompiled with debug information and did a new backtrace:


edit It seems, the old backtrace already contained all the information... whatever, then at least take the current build data

Code: Select all

OS: "Fedora release 25 (Twenty Five)"
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.9592 (Git)
Build type: Debug
Branch: master
Hash: c2f2a250549163947592069262ce1cd3328b3669
Python version: 2.7.13
Qt version: 4.8.7
Coin version: 3.1.3
OCC version: 6.8.0.oce-0.17
ickby
Posts: 2431
Joined: Wed Oct 05, 2011 7:36 am

Re: [Bug] placement of boolean base propagates to secondary body

Postby ickby » Sun Jan 29, 2017 3:54 pm

I think the behavior is as expected and works correct the way you described it. In PartDesign you need to think a bit different. The boolean operation is a feature of the body, not a standalone operation/object as in Part. The Body001 is the container for all its features, including the boolean. Changing its placement must not change the shape, only the location of the shape. However changing Body, which is used in the boolean, can change the shape as it is used in a feature of Body001. Everything is ok.
CluelessJunk
Posts: 18
Joined: Tue May 31, 2016 9:23 am

Re: [Bug] placement of boolean base propagates to secondary body

Postby CluelessJunk » Mon Jan 30, 2017 6:45 am

@ickby I'm sure its not expected behaviour. At one moment, the rotation is not applied to the second boolean part and as soon as you update the rotation value, the other part jumps to the place with the value applied.
The value should either be applied or not applied, but now it depends on whether you updated the value or not.
ickby
Posts: 2431
Joined: Wed Oct 05, 2011 7:36 am

Re: [Bug] placement of boolean base propagates to secondary body

Postby ickby » Mon Jan 30, 2017 7:04 am

Could you alaborate a bit more in detail what you mean with applied and jump? I tested the sequence you have given in the Bug report, and the placements are correctly applied to either the top body, moving the whole shape, or the one used in the boolean, chanign the shape. Do you mean that the shape is not updated "real time" while chaning the boolean body placement, but only on "enter"?

Buy the way, one bug I noticved is thatthe boolean operation does not hide the body it uses automatically, thats annoying.
CluelessJunk
Posts: 18
Joined: Tue May 31, 2016 9:23 am

Re: [Bug] placement of boolean base propagates to secondary body

Postby CluelessJunk » Mon Jan 30, 2017 2:22 pm

For a moment I thought you were right, but as of r9586 (a bit old I know) its still not working. I made some screenshots:
Image

Does it work differently for you?
ickby
Posts: 2431
Joined: Wed Oct 05, 2011 7:36 am

Re: [Bug] placement of boolean base propagates to secondary body

Postby ickby » Mon Jan 30, 2017 7:06 pm

It works excactly the same for me, and this is intended and correct bahaviour. Why should it be different?
CluelessJunk
Posts: 18
Joined: Tue May 31, 2016 9:23 am

Re: [Bug] placement of boolean base propagates to secondary body

Postby CluelessJunk » Tue Jan 31, 2017 5:53 am

How can this be intended? At one moment, the Angle values are 60° on the outer and 0° on the inner boolean object, resulting in a a difference between the cube of 30° and a rotation of both of 30°. The next moment the values are 60° and 1° resulting in a angle of the cubes of 59° and a rotation of 1°. Going back to 0°, the resulting values are 60°/0° instead of 30/30 as before. This can't be intended.

edit I called the second screenshot "correct", but that is only in a certain view the case. I changed the angle by 30°, so the entire thing should rotate by 30°. But now the angle between the cubes is still 30°, but that value is stored nowhere, there is only 60° and 0°. Thats the reason that as soon as one updates the second value, since that initial 30° is stored nowhere, it snaps to an angle difference of 60°. So rotating the base does not properly rotate the children (unless you never update their values).
ickby
Posts: 2431
Joined: Wed Oct 05, 2011 7:36 am

Re: [Bug] placement of boolean base propagates to secondary body

Postby ickby » Tue Jan 31, 2017 7:46 am

Ah ok now I can reproduce. I always set the Body001 placement back to default (30° in your example) and than it worked. But if one leaves it at 60° I see the jumps. Yes definitely a bug. Thanks for explaining in detail.
User avatar
nemesis
Posts: 179
Joined: Tue Mar 25, 2014 11:24 pm
Location: France, Lyon

Re: [Bug] placement of boolean base propagates to secondary body

Postby nemesis » Sun Feb 12, 2017 2:25 pm

Hi,
sut ti be sure I'm on the same bug, changing placement of the body used for the boolean operation (the tool one) it doesn't impact the result.

OS: Mac OS X
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.10064 (Git)
Build type: Release
Branch: (detached from d7ed8c4)
Hash: d7ed8c4383f394f64dd9314eefa00efae02fb32f
Python version: 2.7.13
Qt version: 4.8.7
Coin version: 3.1.3
OCC version: 7.0.0

booleanBug.gif
booleanBug.gif (266.44 KiB) Viewed 200 times
Attachments
TestMultifeature.FCStd
(64.97 KiB) Downloaded 4 times