Pocket operation, Through All, strange behaviour
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!
Pocket operation, Through All, strange behaviour
Dear Forum,
My problem is quite easy to demonstrate, so I've attached file There is solid body, model of SHS 20 x 1.6 mm:
Now I want to cut it from one side. So I've put triangle (Sketch002) at one side: at tried to use Pocket operation. Unfortunately if I use Pocket of defined length less than 20 mm: it works fine. But my intention is to use ThroughAll option: Unfortunately if I apply this option, Pocket disappears. My question is: why is that?
Required information about my version of FreeCAD:
OS: Ubuntu 14.04.4 LTS
Word size of OS: 32-bit
Word size of FreeCAD: 32-bit
Version: 0.16.6476 (Git)
Build type: None
Branch: master
Hash: 28b6c825553dc462a96a3d138374b8b55b6e4cf6
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
Kind regards, mslonik
My problem is quite easy to demonstrate, so I've attached file There is solid body, model of SHS 20 x 1.6 mm:
Now I want to cut it from one side. So I've put triangle (Sketch002) at one side: at tried to use Pocket operation. Unfortunately if I use Pocket of defined length less than 20 mm: it works fine. But my intention is to use ThroughAll option: Unfortunately if I apply this option, Pocket disappears. My question is: why is that?
Required information about my version of FreeCAD:
OS: Ubuntu 14.04.4 LTS
Word size of OS: 32-bit
Word size of FreeCAD: 32-bit
Version: 0.16.6476 (Git)
Build type: None
Branch: master
Hash: 28b6c825553dc462a96a3d138374b8b55b6e4cf6
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
Kind regards, mslonik
Re: Pocket operation, Through All, strange behaviour
It looks like you've found a bug. I copied your steps and made another file from scratch, but with Constraints applied differently, to confirm: I'll update my FreeCAD version and will try again...mslonik wrote:But my intention is to use ThroughAll option:
...Snip...
Unfortunately if I apply this option, Pocket disappears. My question is: why is that?
OS: Ubuntu 14.04.4 LTS
Word size of OS: 32-bit
Word size of FreeCAD: 32-bit
Version: 0.16.6456 (Git)
Build type: None
Branch: master
Hash: 9e551e0fdb4321de57471d18a17449e4df0015a6
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
Re: Pocket operation, Through All, strange behaviour
Same problem using:
OS: Ubuntu 14.04.4 LTS
Word size of OS: 32-bit
Word size of FreeCAD: 32-bit
Version: 0.16.6476 (Git)
Build type: None
Branch: master
Hash: 28b6c825553dc462a96a3d138374b8b55b6e4cf6
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
But "Through All" does work for me on other models. I don't know why it's failing here...
OS: Ubuntu 14.04.4 LTS
Word size of OS: 32-bit
Word size of FreeCAD: 32-bit
Version: 0.16.6476 (Git)
Build type: None
Branch: master
Hash: 28b6c825553dc462a96a3d138374b8b55b6e4cf6
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
But "Through All" does work for me on other models. I don't know why it's failing here...
Re: Pocket operation, Through All, strange behaviour
In Sketch002, change the distance constraint from 25mm to 25.1mm and it should work just fine. It looks like OCE is having a bit of a problem with the rounded edges. I've seen this a number of times before.
I'll also offer some observations on your model. First, you're using more constraints than is needed in your sketches and more distance constraints than required. This might help you understand a bit more or at least get you pointed in the right direction - Sketcher Micro Tutorial - Constraint Practices. Next, the second sketch - wew - that was used to make a Cut would of been just as well used as a Pocket. No need to switch Workbenches for that operation.
I have attached the file with the Sketches reconstrained and the Pocket working through all by making Sketch002 a bit larger than the part being Pocketed. This is a bit of a bug in OCE and we don't have much we can do about it on this end. However, the workaround is a very simple one.
Mark
OS: Kubuntu 14.04.4 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.16.6476 (Git)
Build type: Release
Branch: master
Hash: 28b6c825553dc462a96a3d138374b8b55b6e4cf6
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.18-dev
I'll also offer some observations on your model. First, you're using more constraints than is needed in your sketches and more distance constraints than required. This might help you understand a bit more or at least get you pointed in the right direction - Sketcher Micro Tutorial - Constraint Practices. Next, the second sketch - wew - that was used to make a Cut would of been just as well used as a Pocket. No need to switch Workbenches for that operation.
I have attached the file with the Sketches reconstrained and the Pocket working through all by making Sketch002 a bit larger than the part being Pocketed. This is a bit of a bug in OCE and we don't have much we can do about it on this end. However, the workaround is a very simple one.
Mark
OS: Kubuntu 14.04.4 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.16.6476 (Git)
Build type: Release
Branch: master
Hash: 28b6c825553dc462a96a3d138374b8b55b6e4cf6
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.18-dev
This post made with 0.0% Micro$oft products - GOT LINUX?
Re: Pocket operation, Through All, strange behaviour
Yes, I see that changing the length works. In my file it seems the problem happens at the lower edge of the model where Y = -12.5 mm and Z = 0 mm when the edge of the Pocket also goes through Y = -12.5 mm and Z = 0 mm along the X axis. It's where the hypotenuse crosses the horizontal axis in this screen grab of my Sketch003 in the attached file: I thought that having a vertex in the Pocketing Sketch at Y = -12.5 mm and Z = 0 mm caused the problem, but that's not it. The problem is that if any portion of the hypotenuse passes through those points, the Pocket fails. A Cut using a solid that has a face along these points also fails. But if I move my Sketch and Sketch001 down 1 mm so they are at Z = -1 mm, which makes the bottom face of the tube steel at Z = -1 mm, Pocketing "Through All" works, and a Cut also works. The following model is forked at Cut to show the different scenarios while Sketch and Sketch001 have been moved to Z = -1 mm.quick61 wrote:In Sketch002, change the distance constraint from 25mm to 25.1mm and it should work just fine. It looks like OCE is having a bit of a problem with the rounded edges.
Also, Sketch zew" has Redundant Constraints (which I mistakenly thought might be causing the problem), and it would have been simpler to apply Point To Point Tangency Constraints between the line segments and arcs.quick61 wrote:First, you're using more constraints than is needed in your sketches and more distance constraints than required.
Re: Pocket operation, Through All, strange behaviour
Dear bejant and quick61,
Kind regards, mslonik
Indeed, it works just fine Workaround is simple indeed, but I guess I have to keep it mind. Is there any chance to get warning from FreeCAD about such a problem?In Sketch002, change the distance constraint from 25mm to 25.1mm and it should work just fine.
Thank you for this lesson. I'm a newbie to 3D modelling and in particular to FreeCAD, just started about 2 months ago. My background is automatics and electronics. Never before I had any practise with 3D programs. Nevertheless I don't afraid of new challenges, so I'm very grateful for any remarks which will help me to improve my workflow.I'll also offer some observations on your model.
Should I do something about it, e.g. report a bug to OCE team (http://tracker.dev.opencascade.org/bug_report_page.php)?This is a bit of a bug in OCE and we don't have much we can do about it on this end.
Kind regards, mslonik
Re: Pocket operation, Through All, strange behaviour
First, you're welcome, and I'm sure that the OCC/OCE guys are aware. (I seem to remember one of the guys here that is very familiar with OCE making note of it with a very similar case) This particular problem has been persistent across several versions of the CAD kernel and if it were an easy fix, it would've probably be taken care of long ago.
Mark
Mark
This post made with 0.0% Micro$oft products - GOT LINUX?
Re: Pocket operation, Through All, strange behaviour
FYI, everything works perfectly well with:
OS: Windows 7
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.16.6494 (Git)
Build type: Release
Branch: master
Hash: 67257633d6478197d4d9847c23d4efe7c50cd9f5
Python version: 2.7.6
Qt version: 4.8.5
Coin version: 4.0.0a
OCC version: 6.6.0
OS: Windows 7
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.16.6494 (Git)
Build type: Release
Branch: master
Hash: 67257633d6478197d4d9847c23d4efe7c50cd9f5
Python version: 2.7.6
Qt version: 4.8.5
Coin version: 4.0.0a
OCC version: 6.6.0
Re: Pocket operation, Through All, strange behaviour
and does not work with the latest OCE from tanderson's OCC 6.9.1 with OCE patches.wmayer wrote:OCC version: 6.6.0
OS: Ubuntu 12.04.5 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.16.6506 (Git)
Build type: Release
Branch: master
Hash: 9e01a08eaf82b86f0b079006b021a588e5b6c0c8
Python version: 2.7.3
Qt version: 4.8.2
Coin version: 3.1.3
OCC version: 6.9.1.oce-0.18-dev
also does not work with an old FreeCAD 0.14
OS: Ubuntu 12.04.5 LTS
Platform: 64-bit
Version: 0.14.3647 (Git)
Branch: master
Hash: c05801d6edff634a4edab338e4f66ceca6da3b72
Python version: 2.7.3
Qt version: 4.8.2
Coin version: 3.1.3
SoQt version: 1.5.0
OCC version: 6.7.1
So perhaps it is a regression since OCC 6.6.0?
Re: Pocket operation, Through All, strange behaviour
Ok, again thank you for your support. I've opened a thread about spotted problem also here: http://dev.opencascade.org/index.php?q=node/1150
Kind regards, mslonik
Kind regards, mslonik