Issue #6273 - Padding/pocketing sub shapebinders on not the Z axis doesn't work
Forum rules
and Helpful information
and Helpful information
IMPORTANT: Please click here and read this first, before asking for help
Also, be nice to others! Read the FreeCAD code of conduct!
Also, be nice to others! Read the FreeCAD code of conduct!
Issue #6273 - Padding/pocketing sub shapebinders on not the Z axis doesn't work
When making pockets with sub-shapebinders, FreeCAD appears to insist on pocketing along the z-axis. Is this the correct behaviour?
1. Open the attached SM-PLB03A case file.
2. make "SLIDE_IN" the active body
3. select the "vent_binder" subshapebinder in "SLIDE_IN"
4. pocket the "vent_binder"
5. observe that the pocket appears to be along the z axis as it appears in the section below the "vent binder" instead of along the y axis where I would expect it.
6. note that the "thread_holes_2" pocket, which is also based on a subshapebinder from "MAIN_CASE" works fine (but it's along the z-axis)
But wait! There's more! I think the following might be related, but it's possible that it should be a separate post/ticket. Please let me know your thoughts.
1. Open FreeCAD
2. Make a new body "Body1"
3. Make a new sketch on that body "Sketch1" on the YZ or XZ plane. Put a rectangle in the sketch
4. Make a new body "Body2"
5. Create a subshapebinder in "Body2" based upon "Sketch1" in "Body1"
6. Create a pad in "Body2" based upon the subshapebinder
7. Observe that FreeCAD returns the following error: "type of first element in tuple must be "DocumentObject", not NoneType"
Thank you in advance for your time.
OS: Debian GNU/Linux bookworm/sid (GNOME/gnome)
Word size of FreeCAD: 64-bit
Version: 0.20.25997 (Git) AppImage
Build type: Release
Branch: master
Hash: 77b198048a63f1e9ca15eef64c8042d599a14cf3
Python version: 3.9.7
Qt version: 5.12.9
Coin version: 4.0.0
OCC version: 7.5.2
Locale: English/Canada (en_CA)
issue #4767
1. Open the attached SM-PLB03A case file.
2. make "SLIDE_IN" the active body
3. select the "vent_binder" subshapebinder in "SLIDE_IN"
4. pocket the "vent_binder"
5. observe that the pocket appears to be along the z axis as it appears in the section below the "vent binder" instead of along the y axis where I would expect it.
6. note that the "thread_holes_2" pocket, which is also based on a subshapebinder from "MAIN_CASE" works fine (but it's along the z-axis)
But wait! There's more! I think the following might be related, but it's possible that it should be a separate post/ticket. Please let me know your thoughts.
1. Open FreeCAD
2. Make a new body "Body1"
3. Make a new sketch on that body "Sketch1" on the YZ or XZ plane. Put a rectangle in the sketch
4. Make a new body "Body2"
5. Create a subshapebinder in "Body2" based upon "Sketch1" in "Body1"
6. Create a pad in "Body2" based upon the subshapebinder
7. Observe that FreeCAD returns the following error: "type of first element in tuple must be "DocumentObject", not NoneType"
Thank you in advance for your time.
OS: Debian GNU/Linux bookworm/sid (GNOME/gnome)
Word size of FreeCAD: 64-bit
Version: 0.20.25997 (Git) AppImage
Build type: Release
Branch: master
Hash: 77b198048a63f1e9ca15eef64c8042d599a14cf3
Python version: 3.9.7
Qt version: 5.12.9
Coin version: 4.0.0
OCC version: 7.5.2
Locale: English/Canada (en_CA)
issue #4767
- Attachments
-
- SM-PLB03A case.FCStd
- File to reproduce the issue.
- (706.76 KiB) Downloaded 33 times
Last edited by Kunda1 on Tue May 31, 2022 1:52 pm, edited 2 times in total.
Reason: Added GH ticket number to thread title
Reason: Added GH ticket number to thread title
Re: Padding/pocketing sub shapebinders on not the Z axis doesn't work
I don 't follow FreeCAD all the time but I thought a shapebinder is a reference object, if you want to pocket the binder shape then you need to create a sketch using the binder as a reference, then pocket the sketch.
Re: Padding/pocketing sub shapebinders on not the Z axis doesn't work
@freedman https://wiki.freecadweb.org/PartDesign_ ... eBinder/en leads me to believe that doing a direct pad/pocket from a shapebinder is supported.
It doesn't explicitly say pockets; but I would think that it ought to be possible?Then the resulting binder object can be moved or be used to perform advanced operations like booleans or pads.
Re: Padding/pocketing sub shapebinders on not the Z axis doesn't work
I remember some of that. It appears they can be used for boolean ops. I don't know how a lone pocket can be used in a boolean.
Re: Padding/pocketing sub shapebinders on not the Z axis doesn't work
When doing this then the model disappears and when pressing OK an error comes up that the model consists of several solids which is not allowed yet.5. observe that the pocket appears to be along the z axis as it appears in the section below the "vent binder" instead of along the y axis where I would expect it.
That's an issue that I have discovered recently, too. It's fixed with git commit f411390d33e9 and git commit 0503f06930But wait! There's more! I think the following might be related, but it's possible that it should be a separate post/ticket. Please let me know your thoughts.
Re: Padding/pocketing sub shapebinders on not the Z axis doesn't work
I don't think this is correct, pocketing vent_binder should produce the result pockets highlighted in the picture below, but it does not.When doing this then the model disappears and when pressing OK an error comes up that the model consists of several solids which is not allowed yet.
I also do not get the error that you're getting. Am I doing something wrong with this process?
Thanks again.
Re: Padding/pocketing sub shapebinders on not the Z axis doesn't work
I guess this depends on the used OCC version. Here I have 7.3.I don't think this is correct, pocketing vent_binder should produce the result pockets highlighted in the picture below, but it does not.
I also do not get the error that you're getting. Am I doing something wrong with this process?
But anyway when creating the pocket as you described and then while the dialog is still open run this code snippet:
Code: Select all
s=App.ActiveDocument.Pocket007.AddSubShape
Part.show(s)
To me it looks like that either a placement is forgotten or applied twice when determining the pocket base shape.
Re: Padding/pocketing sub shapebinders on not the Z axis doesn't work
I don't build FreeCAD so if this get's into a weekly build please update this post so I can test.
Thank you
Thank you
Re: Padding/pocketing sub shapebinders on not the Z axis doesn't work
I see the 6 stripes on the XY axis as you've noted, they're located significantly below the part (if that matters).it displays a shape that consists of 6 stripes. They are extruded in the correct direction (i.e. Y axis) but the placement of this shape is wrong as it's perpendicular to the sketch.
I've created the subshapebinder many times and this is always the result. Is this not a bug? Should the pocket occur along the Y-axis?
When I use the subshapebinder to create another sketch in that body, it pockets properly.
Re: Padding/pocketing sub shapebinders on not the Z axis doesn't work
There is something weird with this model. While trying to simplify the file in order to isolate the issue, I found that the SubShapeBinder is not updated when its source changes.
- Attachments
-
- SM-PLB03A_cb.FCStd
- (35.94 KiB) Downloaded 28 times
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.