View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0023853 | Community | OCCT:Modeling Algorithms | public | 2013-03-22 17:34 | 2013-04-29 15:24 |
Reporter | Pawel | Assigned To | |||
Priority | immediate | Severity | minor | ||
Status | closed | Resolution | fixed | ||
Platform | Windows | OS | VC++ 2008 | ||
Product Version | 6.5.5 | ||||
Target Version | 6.6.0 | Fixed in Version | 6.6.0 | ||
Summary | 0023853: BOP regression (2) - BRepAlgoAPI_Cut | ||||
Description | The algorithm kind of fuses shapes instead of cutting them. This problem was introduced on 21762. | ||||
Steps To Reproduce | pload ALL restore cylinder.brep s1 restore pipe.brep s2 bop s1 s2 bopcut result checkshape result vinit vdisplay result vsetdispmode result 1 | ||||
Additional information and documentation updates | 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. | ||||
Tags | No tags attached. | ||||
Test case number | bugs modalg_5 bug23853_1 bug23853_2 bug23853_3 bug23853_4 | ||||
child of | 0021762 | closed | Open CASCADE | Integration new Boolean Operation algorithm to OCC |
|
cylinder.brep (2,474 bytes) |
|
pipe.brep (183,152 bytes) |
|
> 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. |
|
cylinder1.brep (1,335 bytes) |
|
pipe1.brep (176,094 bytes) |
|
cylinder2.brep (356,437 bytes) |
|
pipe2.brep (161,886 bytes) |
|
Git branch CR23853 is ready to be reviewed. http://git.dev.opencascade.org/gitweb/?p=occt.git;a=commit;h=2ab0348acc213ad49559a9894c51647977d17c5b |
|
Please note that it is the fix for the case with cylinder.brep and pipe.brep. The case with cylinder1.brep and pipe1.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 cylinder1.brep b1 restore pipe1.brep b2 bop b1 b2 boptuc r don r checkshape r |
|
Dear emv, thanks for fixing this issue! Indeed it works for the pair cylinder.brep/pipe.brep. However, I'm pretty sure the cut cylinder1.brep/pipe1.brep worked fine before refactoring of BOPs so can you please elaborate more on the problem with the location? pipe1.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. Pawel |
|
Dear BugMaster, Branch CR23853 (and products from GIT master) was compiled on Linux and Windows platforms and tested without rebase. SHA-1: 2ab0348acc213ad49559a9894c51647977d17c5b 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. |
|
The fix for the regressions is in the git branch CR23876. Please rebase the branch CR23853 on CR23876 and test again. |
|
Dear BugMaster, Branch CR23853 (and products from GIT master) was compiled on Linux and Windows platforms and tested with rebase to CR23876. SHA-1: 497973717ceb0ac7e433fa145b1d05785a0c7ac6 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. |
occt: master df017cc9 2013-04-12 09:29:02
|
0023853: BOP regression (2) - BRepAlgoAPI_Cut. Modifications: Changed the way of finding the angle between the faces. New static functions: GetFaceDir - builds direction for the face; FindPointInFace - finds the point in the face in bi normal direction. New square values have been set in the following test cases: boolean bopcommon_complex J1 bugs modalg_2 bug202085_6 bug202085_7 bug202085_8 bug202085_9 bug202085_10. "TODO" marks have been removed from these cases. Added test cases bugs modalg_5 bug23853 |
Affected Issues 0023853 |
|
mod - src/BOPTools/BOPTools_AlgoTools.cdl | Diff File | ||
mod - src/BOPTools/BOPTools_AlgoTools.cxx | Diff File | ||
mod - src/BOPTools/BOPTools_AlgoTools_2.cxx | Diff File | ||
mod - tests/boolean/bopcommon_complex/J1 | Diff File | ||
mod - tests/bugs/modalg_2/bug20285_10 | Diff File | ||
mod - tests/bugs/modalg_2/bug20285_6 | Diff File | ||
mod - tests/bugs/modalg_2/bug20285_7 | Diff File | ||
mod - tests/bugs/modalg_2/bug20285_8 | Diff File | ||
mod - tests/bugs/modalg_2/bug20285_9 | Diff File | ||
add - tests/bugs/modalg_5/bug23853_1 | Diff File | ||
add - tests/bugs/modalg_5/bug23853_2 | Diff File | ||
add - tests/bugs/modalg_5/bug23853_3 | Diff File | ||
add - tests/bugs/modalg_5/bug23853_4 | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2013-03-22 17:34 | Pawel | New Issue | |
2013-03-22 17:34 | Pawel | Assigned To | => bugmaster |
2013-03-22 17:34 | Pawel | File Added: cylinder.brep | |
2013-03-22 17:34 | Pawel | File Added: pipe.brep | |
2013-03-22 17:34 | Pawel | Relationship added | child of 0021762 |
2013-03-22 17:41 | bugmaster | Assigned To | bugmaster => emv |
2013-03-22 17:41 | bugmaster | Status | new => assigned |
2013-03-23 07:05 |
|
Priority | normal => immediate |
2013-03-23 07:05 |
|
Target Version | => 6.6.0 |
2013-03-23 09:00 |
|
Note Added: 0023878 | |
2013-03-24 03:07 | Pawel | File Added: cylinder1.brep | |
2013-03-24 03:07 | Pawel | File Added: pipe1.brep | |
2013-03-24 12:18 | Pawel | File Added: cylinder2.brep | |
2013-03-24 12:19 | Pawel | File Added: pipe2.brep | |
2013-04-09 10:46 |
|
Note Added: 0024034 | |
2013-04-09 10:46 |
|
Assigned To | emv => pkv |
2013-04-09 10:46 |
|
Status | assigned => resolved |
2013-04-09 10:46 |
|
Additional Information Updated | |
2013-04-09 10:55 |
|
Assigned To | pkv => mkv |
2013-04-09 10:55 |
|
Status | resolved => reviewed |
2013-04-09 11:12 | apn | Assigned To | mkv => apn |
2013-04-09 11:23 |
|
Note Added: 0024035 | |
2013-04-10 01:32 | Pawel | Note Added: 0024060 | |
2013-04-11 10:11 | apn | Note Added: 0024081 | |
2013-04-11 10:11 | apn | Assigned To | apn => emv |
2013-04-11 10:11 | apn | Status | reviewed => assigned |
2013-04-11 10:17 |
|
Note Added: 0024082 | |
2013-04-11 10:18 |
|
Assigned To | emv => apn |
2013-04-11 10:18 |
|
Status | assigned => feedback |
2013-04-11 12:07 | apn | Test case number | => bugs modalg_5 bug23853_1 bug23853_2 bug23853_3 bug23853_4 |
2013-04-12 12:04 | apn | Note Added: 0024105 | |
2013-04-12 12:04 | apn | Assigned To | apn => bugmaster |
2013-04-12 12:04 | apn | Status | feedback => tested |
2013-04-15 17:59 |
|
Changeset attached | => occt master df017cc9 |
2013-04-15 17:59 |
|
Assigned To | bugmaster => omy |
2013-04-15 17:59 |
|
Status | tested => verified |
2013-04-15 17:59 |
|
Resolution | open => fixed |
2013-04-23 13:35 |
|
Status | verified => closed |
2013-04-29 15:24 |
|
Fixed in Version | => 6.6.0 |