DiscussionsIssue archiveOCCT:Modeling Algorithms

Archived issue #0023853

BOP regression (2) - BRepAlgoAPI_Cut

CommunityOCCT:Modeling Algorithmsclosed7 public notes

Search issues

Description

The algorithm kind of fuses shapes instead of cutting them.

This problem was introduced on 21762.

Steps to reproduce

pload ALL
restore Attachment 1 (BREP) s1
restore Attachment 4 (BREP) s2
bop s1 s2
bopcut result
checkshape result
vinit
vdisplay result
vsetdispmode result 1

Additional information

Changes:
  class BOPTools_AlgoTools.

 Changed the way of finding the angle between the faces.
 Added new static functions:
 GetFaceDir - builds direction for the face;
 FindPointInFace - finds the point in the face in bi normal direction.

Public activity

7 archived notes

Participants are labeled by their role within this record.

01Commenter 1
> bopargcheck s1 s2 -C #F
Made faulty shape: s1bf_1
Faulties for FIRST shape found : 1
---------------------------------
Shapes are not suppotrted by BOP: NO
Self-Intersections : NO
Check for SI has been aborted : NO
Too small edges : NO
Bad faces : YES Cases(1) Total shapes(1)
Too close vertices : NO
Too close edges : NO

Faulties for SECOND shape found : 0

The reported "bad" face is internal cylindrical face of s1 and it is perfectly valid. My only guess the BOP fails because of tangency.
02Commenter 2
Git branch CR23853 is ready to be reviewed.
http://git.dev.opencascade.org/gitweb/?p=occt.git;a=commit;h=[revision removed]
03Commenter 3
Please note that it is the fix for the case with Attachment 1 (BREP) and Attachment 4 (BREP).
The case with Attachment 2 (BREP) and Attachment 5 (BREP) is the limitation for BOP because of the location of the shapes according to each other. It does not work in OCCT6.5.x.
Try in OCCT6.5.x:
restore Attachment 2 (BREP) b1
restore Attachment 5 (BREP) b2
bop b1 b2
boptuc r
don r
checkshape r
04Author
Dear emv,

thanks for fixing this issue! Indeed it works for the pair Attachment 1 (BREP)/Attachment 4 (BREP).

However, I'm pretty sure the cut Attachment 2 (BREP)/Attachment 5 (BREP) worked fine before refactoring of BOPs so can you please elaborate more on the problem with the location?

Attachment 5 (BREP) was created sweeping a profile along a helix. If I adjust the profile slightly the cut (new BOP) succeeds so as I understand this has something to do with the precision rather than location. Further, I find it surprising that the result of a cut operation looks more like fusion.

Thanks in advance.
Author
05Commenter 1
Dear Commenter 2,

Branch CR23853 (and products from GIT master) was compiled on Linux and Windows platforms and tested without rebase.
[revision removed]

Number of compiler warnings:

occt component :
Linux: 3 (3 on master)
Windows: 11 (11 on master)

products component :
Linux: 0 (0 on master)
Windows: 50 (50 on master)

Regressions:
bugs modalg_4 bug827 bug827_2 bug827_3

http://occt-tests/CR23853-master-occt/Mandriva2010/summary.html

Improvements:
bugs modalg_2 bug5805_41 (expected problem TODO no. 3 is not detected)

Testing on Linux:
Total MEMORY difference: 244988144 / 244666704
Total CPU difference: 14550.879999999795 / 19935.179999999735

Testing on Windows:
Total MEMORY difference: 356074844 / 355160312
Total CPU difference: 22379.390625 / 20158.125

There are not serious differences in images found by testdiff.
06Commenter 6
The fix for the regressions is in the git branch CR23876.
Please rebase the branch CR23853 on CR23876 and test again.
07Commenter 1
Dear Commenter 2,

Branch CR23853 (and products from GIT master) was compiled on Linux and Windows platforms and tested with rebase to CR23876.
[revision removed]

Number of compiler warnings:

occt component:
Linux: 2 (2 on master)
Windows: 11 (11 on master)

products component:
Linux: 0 (0 on master)
Windows: 50 (50 on master)

Regressions:
No regressions

Improvements:
No improvements

Test case:
bugs modalg_5 bug23853_1 bug23853_2 bug23853_3 bug23853_4 - OK

Testing on Linux:
Total MEMORY difference: 245185004 / 244755196
Total CPU difference: 15322.979999999603 / 19939.179999999735

Testing on Windows:
Total MEMORY difference: 354930120 / 355498904
Total CPU difference: 24136.078125 / 20193.046875

There are not serious differences in images found by testdiff.

Related records