OCC Bugs in the Bugtracker

Here's the place for discussion related to coding in FreeCAD, C++ or Python. Design, interfaces and structures.
User avatar
Kunda1
Posts: 5576
Joined: Thu Jan 05, 2017 9:03 pm

OCC Bugs in the Bugtracker

Postby Kunda1 » Fri Jan 27, 2017 2:26 am

NOTE: This thread is monitored and updated periodically
User gAdlike has online excel sheet this is tracking bugs as well.(hopefully)

Below is (hopefully) the most up to date list of all open OCC bugs in FreeCAD.
We need testers and notations on said tickets. Thanks!

On the OCC 7.5 Roadmap
(http://freecadweb.org/tracker/search.ph ... ng=OCC+7.5)
issue #1570 Part sweep bug with acute angle | Upstream ticket: #24991
issue #1646 TCollection_IndexedDataMap::FindFromKey error when sweeping along BezierCurve | Upstream ticket: #25110
issue #1926 Crash when creating sweep | Upstream ticket: #24909
issue #2463 Trim tool ignore tangent constraint to arch on circle | Upstream ticket: #30217 still open
issue #3310 Application crash when adding a fillet on an edge (SIGSEGV) | Upstream ticket:(#29493)

Upstream tickets that need to be bumped (Not on OCC Roadmap)
--> Opened thread in OCC forum
issue #458 Upstream ticket is still open
issue #617 Upstream ticket: #25781 & #25771 are still open
issue #1840 Fillet after thickness gives invalid geometry | Upstream ticket: #25521
issue #1858 Loft tool incorrect result with rotated ellipses | Upstream ticket: #25626
issue #2024 Boolean -> Difference leaves a extra hole | Upstream ticket: #25979
issue #2961 BRepOffsetAPI_MakePipeShellPy.setAuxiliarySpine problems | Upstream ticket: #26295
issue #3655 GeomAPI_ExtremaCurveCurve fails to detect intersection | Upstream ticket: #30316

Missing upstream tickets:
issue #933 Loft make no valid plane for sketcher
issue #1538 face-normal-flip when Part.Face() fed with internaly hold points
issue #2041 FreeCAD crashes warns when applying thickness "BRepAlgo_Image::Bind"
issue #2204 Crash when unioning toruses (Tested with OCC 7.3 and still broken)
issue #2332 ACESS.VIOLATION upon Loft (Can't reproduce)
issue #2325 Pad -> Fillet -> Apply Thickness causes crash (upstream OCC bug) <-- Crashes still in OCC 7.2
issue #2461 Crash when creating loft between two sketches
issue #2715 The result for fillet of the union of cube and sphere is wrong (Still broken in OCC 7.2)
issue #2732 IGES and STEP export compatibility
issue #3332 Drawing View Position is Wrong in CoarseView (FC thread & upstream OCCT forum thread) (Workaround by Wandererfan)
issue #3425 Boolean operation in PDN fails depending on placement of one of the parts
issue #3458 Recompute does not create a solid containing a complex shaped hole (upstream OCC bug) (FC forum thread)
issue #3938 Polar Pattern "transformed shapes do not intersect support", possibly OCC bug (FC thread)

Odd tickets:
issue #1937 Upstream ticket: #25776 <== FC ticket has been solved BUT upstream is still open
issue #2754 Upstream ticket: https://bugs.archlinux.org/task/50684
issue #2676 Differences in python API depending on OCC version
issue #2842 Crash on "Face from Edges" <== MacOSX compiler issue. @peterl94 is assigned to it (target is 0.18 release)

Previous versions of OCC
=====================


No upstream tickets were fixed in OCC 7.4
(Note: they were all bumped to OCC 7.5)

Should be fixed in OCC 7.3
issue #1934 OCCT algorithms can't handle zero derivatives | Upstream ticket: http://tracker.dev.opencascade.org/view.php?id=25104
issue #2590 FreeCAD (0.17 Daily) crashes on exporting imported STEP as WebGL

On the OCC 7.2.1 Roadmap (http://freecadweb.org/tracker/search.ph ... =OCC+7.2.1) (skipped to OCC 7.3)

Should be fixed in OCC 7.2
issue #1538
issue #3226

Should be fixed in OCC 7.1
issue #1931
issue #2227 Fillet silently fails on face with too many edges
issue #2309 PartDesign Fillet fail without warning when too many faces are selected
issue #2383 Drawing lines missing or incorrect | Upstream ticket: http://tracker.dev.opencascade.org/view.php?id=25214
issue #2506 Crash when export .step (due to an upstream OCC bug) - Tested with OCC7.1 and seems fixed
issue #2591 Wrong view of a compund of cylinders
issue #2679 Boolean operations in Part workbench give strange results (Fixed in OCC 7.1)

Should be fixed in OCC7.0.0
issue #1982 transformGeometry returns invalid shape
issue #1727 API function Drawing.projectToDXF
issue #1983 Upstream ticket: http://tracker.dev.opencascade.org/view.php?id=25879
issue #2716 Boolean operations on planar and circular objects fail if intersection has elliptic or hyperbolic shape
Last edited by Kunda1 on Thu Jul 11, 2019 2:53 pm, edited 64 times in total.
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
User avatar
Kunda1
Posts: 5576
Joined: Thu Jan 05, 2017 9:03 pm

Re: OCC Bugs in the Bugtracker

Postby Kunda1 » Sun May 07, 2017 2:33 pm

Any testers with OCC 7.1 enabled in their environment? please check the tickets in this list. Thx!
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
user1234
Posts: 181
Joined: Mon Jul 11, 2016 5:08 pm

Re: OCC Bugs in the Bugtracker

Postby user1234 » Sat Sep 02, 2017 12:25 am

#2204

No crash but no object after union. I think the reason is a singularity and not to handle. But when you edit one or both torus radius2 = 1.99999 it works.

Test done with:

Code: Select all

OS: Debian GNU/Linux 9.1 (stretch)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.11957 (Git)
Build type: DebWithRelInfo
Branch: master
Hash: 61c7ac7fddb35084a567e0311806292efea8dc70
Python version: 2.7.13
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.2.0
Locale: English/UnitedStates (en_US)
Greetings

user1234
Attachments
2204.fcstd
(33.48 KiB) Downloaded 20 times
wmayer
Site Admin
Posts: 14814
Joined: Thu Feb 19, 2009 10:32 am

Re: OCC Bugs in the Bugtracker

Postby wmayer » Sat Sep 02, 2017 10:44 am

No crash but no object after union. I think the reason is a singularity and not to handle. But when you edit one or both torus radius2 = 1.99999 it works.
Confirmed. From a practical point of view this bug can be considered as fixed.
User avatar
Kunda1
Posts: 5576
Joined: Thu Jan 05, 2017 9:03 pm

Re: OCC Bugs in the Bugtracker

Postby Kunda1 » Wed Dec 06, 2017 11:13 pm

Thread has been updated
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
User avatar
Kunda1
Posts: 5576
Joined: Thu Jan 05, 2017 9:03 pm

Re: OCC Bugs in the Bugtracker

Postby Kunda1 » Thu Jan 18, 2018 2:38 pm

Thread has been updated. We still need to report issues upstream. Who wants to be a liaison for FC ?
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
User avatar
Kunda1
Posts: 5576
Joined: Thu Jan 05, 2017 9:03 pm

Re: OCC Bugs in the Bugtracker

Postby Kunda1 » Wed Jan 24, 2018 8:29 pm

Below is a thread that was started as a PM to an upstream OpenCasCade dev (@gAdlike) who's been running an analysis on FreeCAD bugs from OCC perspective.
Kunda1 wrote:
Fri Jan 19, 2018 5:16 pm
gAdlike wrote:
Mon Jan 22, 2018 5:31 am
Hello,

First of all, I can share with community results of FC issues analysis. Maybe it is incomplete, so if you have a list of FC related OCCT issues please send it to me.
We have fixed some issues but not all. It is a common problem in commercial company with priorities and time spending (I think you know). So, we need to construct a list of FC related problems. I have Google document for that - https://docs.google.com/document/d/1aBe ... dasjw/edit#.

For effective collaboration, we need a possibility to replace OCCT in FC third parties. We know about LibPack libraries, but it is not possible to simply overwrite OCCT (https://forum.freecadweb.org/viewtopic. ... 4&start=20). I propose to use separate sub-folders for third parties since it will significantly simplify update process. I started this process but I haven't enough time to finalize it. As far as I know, OCCT 7.2.0 contains many improvements, especially related to the Boolean algorithm, so migration to 7.2.0 looks reasonable. What do you think about it?

For bug reporting, we need so-called "draw-script". OCCT uses Tcl-based command line application for testing. Almost all functionality can be checked within it. Previous volunteers reported problems using it (shoogen). Do you know how to construct this script in FC? We will be able to register issues if we have this script.
gAdlike wrote:
Mon Jan 22, 2018 10:55 am
I have realized that LibPack refactoring will have big impact on FC. So, let me reformulate point related to third parties: how can I build FC with a newer version of OCCT? For instance, I want to check current development version.
The intention is to merge this thread in to this current thread that tracks OCC related bugs in FC.
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
User avatar
Kunda1
Posts: 5576
Joined: Thu Jan 05, 2017 9:03 pm

Re: OCC Bugs in the Bugtracker

Postby Kunda1 » Fri Jan 26, 2018 9:47 pm

sgrogan wrote:ping
Hey @sgrogan, so @gadlike above says:
For effective collaboration, we need a possibility to replace OCCT in FC third parties

Can we help him with this?
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
User avatar
sgrogan
Posts: 5344
Joined: Wed Oct 22, 2014 5:02 pm

Re: OCC Bugs in the Bugtracker

Postby sgrogan » Fri Jan 26, 2018 10:52 pm

Kunda1 wrote:
Fri Jan 26, 2018 9:47 pm
For effective collaboration, we need a possibility to replace OCCT in FC third parties
Since OCCT has moved to the CMake building OCCT has become easy. I simply use CMake to link to the dependencies in the libpack (what I have locally is ahead of what is published but not ready yet) and copy/replace over the old libpack. Works fine.

The biggest problem we have is that FreeCAD links against OCCT and nglib (which links against OCCT). So every time we upgrade OCCT we need to upgrade nglib. For porting FreeCAD a newer OCCT this is easy for me. One forum post and usually @wmayer responds with one of his famous "commit xxxxx" posts and FreeCAD is ported. I've compiled FreeCAD locally against self compiled OCCT 7.2 no problems on both Win and Ubuntu. Until recently https://forum.freecadweb.org/viewtopic.php?f=10&t=26278 we've had to port nglib ourselves, and have had trouble getting the patches up-streamed.

So most of the hell is getting everything to work together and packaged. Not really an OCCT issue. One thing I would request is that OCCT doesn't drop support for VS2013. NGSolve uses C++11 stuff that's not supported until VS2015 and this kills me. It's on the list to upgrade the FreeCAD libpacks to VS2015 but requires building the entire dependency stack.

What we could use help with is packaging on Debian. @kkremitzki has packaged OCCT 7.2 and is trying to get it up streamed into Debian, that will flow down to Ubuntu. In particular if there is any feedback on the intermediate symlink discussed in the other thread.

What we need is to fill this position https://forum.freecadweb.org/viewtopic. ... 05#p181370
For bug reporting, we need so-called "draw-script". OCCT uses Tcl-based command line application for testing. Almost all functionality can be checked within it. Previous volunteers reported problems using it (shoogen). Do you know how to construct this script in FC? We will be able to register issues if we have this script.
I guess this is where we could use the most help. Maybe a tutorial creating a "draw-script" would help, but it's a high bar. The person(s) would need to know FreeCAD, know how to compile FreeCAD and OCCT link them and create the script. The people closest to having this knowledge don't have enough time after their other FreeCAD responsibilities. We need to find a way to lower the bar.

Sorry for the rambling post, it's a lot to come at at one time.

EDIT:
Should have posted this first. Thanks gAdlike for the interest :)
Indeed OCCT was responsive to @shoogen and more recently @ickby.
The HLR improvements in OCCT 7.1 were huge for FreeCAD, if the the boolean improvements are similar we will have a lot of happy FreeCAD users.
gAdlike
Posts: 20
Joined: Wed Nov 01, 2017 5:35 am

Re: OCC Bugs in the Bugtracker

Postby gAdlike » Sat Jan 27, 2018 7:48 am

Hello,

I constructed google table representing all existing OCCT issues related to the FC: https://docs.google.com/spreadsheets/d/ ... sp=sharing
Feel free to add your comments and suggestions for improvement. I will be glad to get feedback from the community.