OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
Post Reply
lukasubo
Posts: 45
Joined: Sun Jun 05, 2016 5:41 pm

OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)

Post by lukasubo »

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
User avatar
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.)

Post by DeepSOIC »

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:
complicated-chamfer.png
complicated-chamfer.png (22.07 KiB) Viewed 3368 times
)
ickby
Veteran
Posts: 3116
Joined: Wed Oct 05, 2011 7:36 am

Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)

Post by ickby »

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.
User avatar
tanderson69
Veteran
Posts: 1626
Joined: Thu Feb 18, 2010 1:07 am

Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)

Post by tanderson69 »

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.
lukasubo
Posts: 45
Joined: Sun Jun 05, 2016 5:41 pm

Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)

Post by lukasubo »

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.
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)

Post by triplus »

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.
freecad-heini-1
Veteran
Posts: 7788
Joined: Tue Jan 07, 2014 11:10 am
Contact:

Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)

Post by freecad-heini-1 »

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.
I tried your sample, here with Freecad 0.16:
paramide-fc016.png
paramide-fc016.png (88.89 KiB) Viewed 2708 times
And here with Pro/Engineer Wildfire 5.0:
paramide-proe-wf5.png
paramide-proe-wf5.png (65.13 KiB) Viewed 2708 times
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?
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)

Post by Kunda1 »

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
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
lukasubo
Posts: 45
Joined: Sun Jun 05, 2016 5:41 pm

Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)

Post by lukasubo »

freecad-heini-1 wrote:
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.
I tried your sample, here with Freecad 0.16:
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?
Using OnShape (Parasolid kernel). http://imgur.com/a/sCrq2

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).
User avatar
bejant
Veteran
Posts: 6075
Joined: Thu Jul 11, 2013 3:06 pm

Re: OCCT Bugs - A Comprehensive List (Blend, Boolean, etc.)

Post by bejant »

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...
Post Reply