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

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

Postby lukasubo » Thu Jun 30, 2016 6:11 am

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
DeepSOIC
Posts: 4662
Joined: Fri Aug 29, 2014 12:45 am
Location: Saint-Petersburg, Russia

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

Postby DeepSOIC » Thu Jun 30, 2016 10:56 am

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 862 times

)
ickby
Posts: 2457
Joined: Wed Oct 05, 2011 7:36 am

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

Postby ickby » Thu Jun 30, 2016 2:58 pm

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
Posts: 1300
Joined: Thu Feb 18, 2010 1:07 am

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

Postby tanderson69 » Thu Jun 30, 2016 4:15 pm

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

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

Postby lukasubo » Thu Jun 30, 2016 5:15 pm

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
Posts: 4982
Joined: Mon Dec 12, 2011 4:45 pm

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

Postby triplus » Thu Jun 30, 2016 5:35 pm

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
Posts: 1657
Joined: Tue Jan 07, 2014 11:10 am
Location: 64823 Groß-Umstadt
Contact:

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

Postby freecad-heini-1 » Tue Mar 14, 2017 4:24 pm

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 202 times

And here with Pro/Engineer Wildfire 5.0:
paramide-proe-wf5.png
paramide-proe-wf5.png (65.13 KiB) Viewed 202 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
Posts: 659
Joined: Thu Jan 05, 2017 9:03 pm

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

Postby Kunda1 » Tue Mar 14, 2017 7:35 pm

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

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

Postby lukasubo » Fri Mar 17, 2017 1:42 am

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