Greetings to the Community!
I think the Part Design boolean function doesn’t work properly, maybe it’s some bugs ( ).
The gif shows unexpected behavior.
OS: Linux Mint 20.3 (X-Cinnamon/cinnamon)
Word size of FreeCAD: 64-bit
Version: 0.22.0dev.35024 (Git) AppImage
Build type: Release
Branch: main
Hash: 4ff00ef99869e35295a5a17b8f486901504c655b
Python 3.10.13, Qt 5.15.8, Coin 4.0.0, Vtk 9.2.6, OCC 7.6.3
Nope, the result is not the same, never was. The tool of a PartDesign Body is always relative on this target placements. In that case:
If your target is Body and the tool is Body001 (x-22.5, y-12.5, z0), then the position of the Body001 relative to the Body is (x-22.5, y-12.5, z0), which leads to the arc shape.
If your target is Body001 and and the tool is Body (x0, y0, z0), then the position of the Body relative to the Body001 is (x0, y0, z0), means both placements are the same, so the result is the full circle shape.
Why: else when you move the a Bodys placement, you have also move ALL boolean Bodies as well, which is a pita. For small Parts no issue, for injection molds, injections castings, general castings a must.
Note, the task dialog have in general a few bugs (example: unintended multiple same bodies insert and more).
You get the same results, but PDWrapper object has a placement adjustments property you can manipulate in a special dialog.
Make Body active, select Body001, run macro → common (additive) type → follows Pad in the tree.
Snip macro screenshot-4b0adc.png
Undo this, make Body001 active, select Body, run macro → common (additive) type → follows Pad001 in tree.
Snip macro screenshot-4bf411.png
Now right-click on PDWrapper object, select Edit Placement Adjustments, to get this dialog in the screenshot below, which illustrates the placement issue user1234 has mentioned:
Snip macro screenshot-2e1788.png
Change the tip tool placement x and y values.
Snip macro screenshot-1dcd3a.png
Snip macro screenshot-5fffdd.png
One advantage the PDWrapper object has over the Boolean feature is it can be used in pattern tools, such as polar arrays where the Boolean feature cannot because it is neither an additive nor a subtractive feature.
Greetings to the Community!
user1234
Many thanks ( ) for the detailed clarification, in fact I had inserted the interrogative fact that there was a bug in the brackets, because I had doubts.
So, in “rough words”, for the “Part Design” Booleans to give the “predicted or expected” results (i.e. equal to the “Part” Boolean functions), the origins of the two bodies must be coincident.
It would be a good thing in the dialog to sort of highlight it.
TheMarkster
Thank( ) you for your excellent macro, another great resource that expands the possibilities, overcomes the deficiencies of the original function and increases flexibility!
Problem solved