OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Be nice to others! Read the FreeCAD code of conduct!
OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
Greetings again, FreeCAD Forum users,
Quite frankly, I'm getting tired of CAD in general. Even the proprietary commercial solutions are unintuitive and break fairly easily (i.e. Inventor). In the FOSS space, everything is built on Open Cascade Technology (OCCT) which, as we all know, is not necessarily an optimal CAD kernel and suffers from a lot of poorly documented and buggy old code (and is also the only extant FOSS geometry kernel with the required features for full modern CAD).
FreeCAD, as a FOSS, easily extensible, CAD solution may well be the best shot at making CAD intuitive (i.e. just modify it if you don't like it). However, it still suffers from OCCT woes.
This is why I propose that we record here all of the bugs caused by OCCT, in brief form. If you encountered a bug (specifically due to OCCT, likely involving a fillet), post it here.
At least this will make clear the shortcomings of OCCT. Who knows, maybe Open Cascade could fix some if they were reported by several people.
I'll start:
- A well known bug is that a fillet cannot be created if it consumes an entire surface. Create a 1*1*1 cube, and attempt to apply a fillet of radius 1 to any of its edges. It will fail.
- Another well knows bug: boolean operations take forever to complete. Forever and a day.
- A third well known one: complex fillets will not be created properly. When many edges intersect, OCCT will often fail to fillet, or create an incorrect shape.
- Finally, this one is my favourite: OCCT handles some fillets other CAD kernels cannot. Create a square-based pyramid. You have 4 edges intersecting at the summit of it. Fillet 3 of them. It works. It's a Christmas miracle, not even Parasolid can handle that! ...because it's impossible. Zoom in and you'll notice that the fillet is not a correct shape. OCCT should not create it, and yet, here we are.
What other bugs have you encountered in OCCT?
Version information, of course:
OS: Linux Mint 17.2 Rafaela
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.16.6703 (Git)
Build type: None
Branch: releases/FreeCAD-0-16
Hash: 2ce5c8d2e3020d05005ed71f710e09e9aa561f40
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
Quite frankly, I'm getting tired of CAD in general. Even the proprietary commercial solutions are unintuitive and break fairly easily (i.e. Inventor). In the FOSS space, everything is built on Open Cascade Technology (OCCT) which, as we all know, is not necessarily an optimal CAD kernel and suffers from a lot of poorly documented and buggy old code (and is also the only extant FOSS geometry kernel with the required features for full modern CAD).
FreeCAD, as a FOSS, easily extensible, CAD solution may well be the best shot at making CAD intuitive (i.e. just modify it if you don't like it). However, it still suffers from OCCT woes.
This is why I propose that we record here all of the bugs caused by OCCT, in brief form. If you encountered a bug (specifically due to OCCT, likely involving a fillet), post it here.
At least this will make clear the shortcomings of OCCT. Who knows, maybe Open Cascade could fix some if they were reported by several people.
I'll start:
- A well known bug is that a fillet cannot be created if it consumes an entire surface. Create a 1*1*1 cube, and attempt to apply a fillet of radius 1 to any of its edges. It will fail.
- Another well knows bug: boolean operations take forever to complete. Forever and a day.
- A third well known one: complex fillets will not be created properly. When many edges intersect, OCCT will often fail to fillet, or create an incorrect shape.
- Finally, this one is my favourite: OCCT handles some fillets other CAD kernels cannot. Create a square-based pyramid. You have 4 edges intersecting at the summit of it. Fillet 3 of them. It works. It's a Christmas miracle, not even Parasolid can handle that! ...because it's impossible. Zoom in and you'll notice that the fillet is not a correct shape. OCCT should not create it, and yet, here we are.
What other bugs have you encountered in OCCT?
Version information, of course:
OS: Linux Mint 17.2 Rafaela
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.16.6703 (Git)
Build type: None
Branch: releases/FreeCAD-0-16
Hash: 2ce5c8d2e3020d05005ed71f710e09e9aa561f40
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 6.8.0.oce-0.17
- DeepSOIC
- Veteran
- Posts: 7896
- Joined: Fri Aug 29, 2014 12:45 am
- Location: used to be Saint-Petersburg, Russia
Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
Probably the most annoying limitation of OCC for me is the weakness of Thickness/Offset.
Another limitation I regularly collide with is the lack of powerful tapered extrusion, or trouble with self-intersecting sweeps, or inability to chamfer (all aimed at the same goal of achieving something like this: )
Another limitation I regularly collide with is the lack of powerful tapered extrusion, or trouble with self-intersecting sweeps, or inability to chamfer (all aimed at the same goal of achieving something like this: )
Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
I dont think such a general list is of use for anybody, as those description are by no means repoducible. From your texts i could design many cases that fit the description and still work. Use the bugtracker for real failing cases and add tags there for grouping special topics. Than there is at least a slight chance for Thema to be reporter and getting noticed and fixed by occ one day.
- tanderson69
- Veteran
- Posts: 1626
- Joined: Thu Feb 18, 2010 1:07 am
Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
expanding on what ickby said:
I think shoogen has proved the way forward. Somebody will:
1)have to sign the occt CLA.
2)build and work with the latest source code.
3)reduce problems to the simplest DRAWEXE script.
4)create a mantis ticket at the occt bug tracker.
I think shoogen has proved the way forward. Somebody will:
1)have to sign the occt CLA.
2)build and work with the latest source code.
3)reduce problems to the simplest DRAWEXE script.
4)create a mantis ticket at the occt bug tracker.
Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
I know that this hardly makes up a detailed bug report. It's more fpor fun, and to get a general idea of OCCT limitations.
Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
I am not sure of the OCCT developers response when bugs are properly reported but based on my experience when we tried and reported bugs against upstreams in the past... Bugs got fixed most of the time in reasonable amount of time.
Therefore i agree we would need somebody skilled that would know how to turn an issue related to OCCT reported on FreeCAD forum/bug tracker in proper OCCT bug report. That i guess is the only way to improve situation.
Therefore i agree we would need somebody skilled that would know how to turn an issue related to OCCT reported on FreeCAD forum/bug tracker in proper OCCT bug report. That i guess is the only way to improve situation.
-
- Veteran
- Posts: 7788
- Joined: Tue Jan 07, 2014 11:10 am
- Contact:
Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
I tried your sample, here with Freecad 0.16: And here with Pro/Engineer Wildfire 5.0: I can't beliefe that Parasolid based CAD-Systems like Solidworks, NX and Solidedge can't handle this three edges to fillet.lukasubo wrote:- Finally, this one is my favourite: OCCT handles some fillets other CAD kernels cannot. Create a square-based pyramid. You have 4 edges intersecting at the summit of it. Fillet 3 of them. It works. It's a Christmas miracle, not even Parasolid can handle that! ...because it's impossible. Zoom in and you'll notice that the fillet is not a correct shape. OCCT should not create it, and yet, here we are.
Please can you explain why this should be impossible?
Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
OCC Bugs in the Bugtracker - https://forum.freecadweb.org/viewtopic.php?f=10&t=20264
You can also search using the 'OCC bug' tag on the tracker: http://freecadweb.org/tracker/search.ph ... ng=OCC+Bug
You can also search using the 'OCC bug' tag on the tracker: http://freecadweb.org/tracker/search.ph ... ng=OCC+Bug
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
Using OnShape (Parasolid kernel). http://imgur.com/a/sCrq2freecad-heini-1 wrote:I tried your sample, here with Freecad 0.16:lukasubo wrote:- Finally, this one is my favourite: OCCT handles some fillets other CAD kernels cannot. Create a square-based pyramid. You have 4 edges intersecting at the summit of it. Fillet 3 of them. It works. It's a Christmas miracle, not even Parasolid can handle that! ...because it's impossible. Zoom in and you'll notice that the fillet is not a correct shape. OCCT should not create it, and yet, here we are.
paramide-fc016.png
And here with Pro/Engineer Wildfire 5.0:
paramide-proe-wf5.png
I can't beliefe that Parasolid based CAD-Systems like Solidworks, NX and Solidedge can't handle this three edges to fillet.
Please can you explain why this should be impossible?
From what I recall from when I posted that comment, the shape FreeCAD made was clearly incorrect (the edge of the fillet poked back into the top of the object).
Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)
For posterity, and so I don't forget:
Fillet edges all in one go works, but Fillet them individually fails:
viewtopic.php?f=3&t=22303&p=173100#p173030
Problem pocketing through a face that is changing in 3 directions:
viewtopic.php?f=3&t=22199&p=172444#p172443
IIRC I replied to something similar in another topic too...
Fillet edges all in one go works, but Fillet them individually fails:
viewtopic.php?f=3&t=22303&p=173100#p173030
Problem pocketing through a face that is changing in 3 directions:
viewtopic.php?f=3&t=22199&p=172444#p172443
IIRC I replied to something similar in another topic too...