View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0032807 | Community | OCCT:Modeling Algorithms | public | 2022-01-27 06:38 | 2023-03-19 19:09 |
Reporter | Manycore | Assigned To | |||
Priority | normal | Severity | major | ||
Status | closed | Resolution | fixed | ||
Platform | Windows | OS | VC++ 2015 | ||
Product Version | 7.6.0 | ||||
Target Version | 7.7.0 | Fixed in Version | 7.6.3 | ||
Summary | 0032807: Modeling Algorithms - Bad result of sweep operation when the UEdges has more than one intersect points | ||||
Description | BRepOffsetAPI_MakePipeShell with the attached path and profile does not build correct on 7.6.0 version. The result is old_result.png, we hope get the new_result | ||||
Steps To Reproduce | TopoDS_Shape Sh1; TopoDS_Shape Sh2; BRep_Builder B; bool b1 = BRepTools::Read(Sh1, "D:\\path.brep", B); bool b2 = BRepTools::Read(Sh2, "D:\\profile.brep", B); const TopoDS_Wire& path = TopoDS::Wire(Sh1); const TopoDS_Wire& profile= TopoDS::Wire(Sh2); BRepOffsetAPI_MakePipeShell shellMaker(path); shellMaker.SetTransitionMode(static_cast<BRepBuilderAPI_TransitionMode>(1)); shellMaker.Add(profile, /*WithContact*/false, /*WithCorrection*/true); shellMaker.Build(); const TopoDS_Shape& shape = shellMaker.Shape(); | ||||
Tags | No tags attached. | ||||
Test case number | tests\pipe\bugs\bug0032807 | ||||
|
related to | 0032809 | closed | Modeling Algorithms - Sweep algorithm with Round Corner mode failed |
|
path.brep (591 bytes) profile.brep (3,299 bytes) old_result.brep (214,454 bytes) new_result.brep (287,353 bytes) path_profile.png (8,216 bytes) old_result.png (22,946 bytes) new_result.png (28,039 bytes) |
|
From the perspective of the offset algorithm, we can chhoose the intersect point keep the tangentCross. v31 is same side with v3, v32 is opposite side with v3. so we choose p1 企业微信截图_16432807732818.png (15,824 bytes) 企业微信截图_1643280935600.png (9,365 bytes) 企业微信截图_1643280893418.png (10,052 bytes) |
|
@Manycore, > Assigned To => Manycore Please do not override default value of "Assigned To" field while registering new bug, if you are not going to fix it yourself (maintainer of Category might not receive no notification about new bug in this case). > 企.png Consider renaming attachment with meaningful names and without non-Latin symbols. |
|
Branch CR32807 has been created by Manycore. SHA-1: e47224a8b3f6f56be21c02c9a0177dba176fe262 Detailed log of new commits: Author: gelin Date: Thu Jan 27 19:18:38 2022 +0800 sweep algorithm deal with EE more than one intersect points |
|
> I will fix the bug myself > re-attach the picture with meaningful names. >The picture describes the idea of the solution. When prev UEdge and next UEgde has more than one intresect points . From the perspective of the offset algorithm, we can chhoose the intersect point keep the tangentCross. v31 is same side with v3, v32 is opposite side with v3. so we choose p1 path__profile .png (15,824 bytes) UEdges_has_more_than_one_Intersect_points.png (9,365 bytes) we_choose_the_one_keeps_the_tangentCross.png (10,052 bytes) |
|
> add test case: test script and test data bug0032807 (415 bytes) bug0032807_path.brep (587 bytes) bug0032807_profile.brep (3,296 bytes) |
|
Branch CR32807 has been updated by Manycore. SHA-1: 97a8bb768fb3c799e4359e733c0c89f607bb5b86 Detailed log of new commits: Author: gelin Date: Fri Jan 28 12:07:05 2022 +0800 add test script |
|
Reminder sent to: kgv please help to review the code |
|
@Manycore+ //! theIntersectPointCrossDirection : prev path direction at the origin point of theAxeOfBisPlane + // cross next path direction at the origin point of theAxeOfBisPlane. used when EE has more than one vertices The second line will be lost from documentation (should start with `//!`). It is better using `@param` for describing parameters (and update description of entire method). New argument name looks pretty long - it might be reasonable to make it shorter. gelin add test script CR32807 gelin sweep algorithm deal with EE more than one intersect... kgv 0032783: Documentation - Doxygen 1.9.3 generates corrup... CR0-WEEK-3 IR-2022-01-21 The first commit in the branch should be started from the Summary copied with number from bugtracker (see other commits in git log). + // see CR0032807 gp_Vec myIntersectPointCrossDirection; It is usually redundant mentioning bug numbers in code, as long as the bug is not TODO for fixing some known issue later. +++ b/tests/pipe/bugs/bug0032807 @@ -0,0 +1,16 @@ +puts "TODO CR0032807 ALL: Sweep modeling exception" +puts "TODO CR0032807 ALL: TEST INCOMPLETE" + +puts "========" +puts "TODO CR0032807: Sweep algorithm deal with EE more than one intersect points" Why there are "TODO" in test case - does it fail with the patch? |
|
Branch CR32807 has been deleted by Manycore. SHA-1: 97a8bb768fb3c799e4359e733c0c89f607bb5b86 |
|
Branch CR32807 has been created by Manycore. SHA-1: 81d29e2640b900b3dc34544c5e768ce4f358c2b0 Detailed log of new commits: Author: gelin Date: Fri Jan 28 16:47:01 2022 +0800 0032807: Modeling Algorithms - Bad result of sweep operation when the UEdges has more than one intersect points |
|
Branch CR32807_1 has been created by mgerus. SHA-1: 00c6685f044e8f44071cfe20ca316cb0b3e69147 Detailed log of new commits: Author: mgerus Date: Wed Apr 6 13:12:19 2022 +0300 Add fix what repair shipping Author: mgerus Date: Wed Apr 6 09:56:22 2022 +0300 0032807: Modeling Algorithms - Bad result of sweep operation when the UEdges has more than one intersect points Add changes to dox/upgrade/upgrade.md |
|
Branch CR32807_1 has been updated forcibly by mgerus. SHA-1: edd45be2097a975ca10c35ee865a96fb5fe72f71 |
|
|
|
Dear @Manycore, Thank you very much for your contribution to OpenCASCADE Technology. We are really appreciate your patches. Unfortunately, we have no chance to process them all simultaneously. Please, be patient. As regards issue 0032811, it will be processed as soon as possible (some updates are already done), when other urgent tasks will be finished. I would appreciate it if you could post comments to the dedicated issue. Best regards, Artem |
|
Branch CR32807_1 has been updated by mgerus. SHA-1: 9bae62d9fecfa9de54f2a1af1627e07ea40f2aaf Detailed log of new commits: Author: mgerus Date: Thu Apr 21 14:50:49 2022 +0300 possible fix for linux |
|
Branch CR32807_1 has been updated forcibly by mgerus. SHA-1: c0d7afd1081c679b4235321b1565e07855c39a8a |
|
Branch CR32807_2 has been created by mgerus. SHA-1: 6b1f83ef81b1123151238262f9a080b47146a0ae Detailed log of new commits: Author: mgerus Date: Wed Apr 27 13:20:17 2022 +0300 Exact tolerance calculate and validate |
|
Branch CR32807_2 has been updated by mgerus. SHA-1: 57d71f0e54bc419661ea0a3d020d060d2c086ad9 Detailed log of new commits: Author: mgerus Date: Thu Apr 28 11:35:19 2022 +0300 exact v2 |
|
Branch CR32807_3 has been created by mgerus. SHA-1: 84b6acca9aea0ed92d140a932321b2bf6d2b9a96 Detailed log of new commits: Author: mgerus Date: Fri Apr 29 11:11:31 2022 +0300 0032807: Modeling Algorithms - Bad result of sweep operation when the UEdges has more than one intersect points |
|
Branch CR32807_3 has been updated forcibly by mgerus. SHA-1: 25cd3130388df5a02458562f40242548674d221f |
|
Dear http://jenkins-test-occt/view/CR32807_1-master-MGERUS/view/COMPARE/ Branches for Integration: OCCT - CR32807_3 Products - Not |
|
Dear Maxim, Here are my remarks: General 1. Please, update the commit message and describe the things done in the scope of this fix as well as changes in reference data of unrelated test cases. 2. Change status of issue to resolved and assign it to reviewer. src/BRepFill/BRepFill_TrimShellCorner.cxx 1239: gp_Pnt aPt; 1240: gp_Vec aDirOnE1, aDirOnE2; 1241: gp_Dir aIntersectPointCrossDir; Variables should be defined locally, where they are used. src/BRepFill/BRepFill_Sweep.cxx Functions CheckSameParameters() look generally the same. I propose that one of them should use another. Otherwise, multipliers should be carefully specified. 370: Handle(Adaptor3d_Curve) curve3d = sp.Curve3d(); 371: Handle(Adaptor3d_CurveOnSurface) curveOnSurface = sp.CurveOnSurface(); 372: CheckSameParameter(curve3d, curveOnSurface, tol3d, ResTol); 373: 374: if (!CheckSameParameter(curve3d, curveOnSurface, tol3d, ResTol) && ResTol > tolreached) { Why CheckSameParameter() is called twice here? tests/pipe/bugs/bug32807 Add a screenshot of the result, as it is done in other cases of test grid. |
|
Branch CR32807_3 has been updated by mgerus. SHA-1: 61e7662dd87f74362fd2a569e9762bb9b9e7a9aa Detailed log of new commits: Author: mgerus Date: Fri May 6 07:29:04 2022 +0300 fixing after review |
|
Branch CR32807_4 has been created by mgerus. SHA-1: 89c0973900d00c3816279c14dce577992aa85136 Detailed log of new commits: Author: mgerus Date: Fri May 6 07:32:35 2022 +0300 0032807: Modeling Algorithms - Bad result of sweep operation when the UEdges has more than one intersect points Add choosing the intersect point taking into account the tangentCross when prev UEdge and next UEdge has more than one intersect points; Add exact correction of edge tolerance (it fix problems with edge tolerance on Linux); Add exact check of edge tolerance in testcase |
|
Branch CR32807_3 contains fixes after review, branch for integration CR32807_4 http://jenkins-test-occt/view/CR32807_1-master-MGERUS/view/COMPARE/ Branches for Integration: OCCT - CR32807_4 Products - Not |
|
What about > Functions CheckSameParameters() look generally the same. I propose that one of them should use another. Otherwise, multipliers should be carefully specified. Could we unite them? |
|
Branch CR32807_3 has been updated by mgerus. SHA-1: 947f036a5057b6c77b6a9267fc0fe3385e065c1d Detailed log of new commits: Author: mgerus Date: Fri May 6 12:05:43 2022 +0300 fixing after review v2 |
|
Branch CR32807_3 has been updated by mgerus. SHA-1: baa00241f8a1dcb9fe8e9ef473ffb5716645f306 Detailed log of new commits: Author: mgerus Date: Wed May 11 09:07:25 2022 +0300 revert fix for CheckSameParameter() |
|
Branch CR32807_4 has been updated forcibly by mgerus. SHA-1: 00342bc4b6517d9daecce8ea8afa2fe946a68869 |
|
http://jenkins-test-occt/view/CR32807_1-master-MGERUS/view/COMPARE/ Branches for Integration: OCCT - CR32807_4 Products - Not |
|
Branch CR32807_4 has been updated forcibly by azv. SHA-1: 67d24ed22badfaf6e54e6822f8960a820b5e80b0 |
|
Reviewed. For integration: OCCT: CR32807_4 Products: NOT |
|
Combination - OCCT branch : IR-2022-05-20 master SHA - 84d39c06fa79d4227c1bc415e36e3924f7ff64c6 49e51745631c52b6c452c65adae4d6dfa21a1b1e Products branch : IR-2022-05-20 SHA - 17cda8130dd822da7e07127476a2902326a00742 was compiled on Linux, MacOS and Windows platforms and tested in optimize mode. Number of compiler warnings: No new/fixed warnings Regressions/Differences/Improvements: No regressions/differences CPU differences: Debian80-64: OCCT Total CPU difference: 18673.29000000065 / 18725.070000000575 [-0.28%] Products Total CPU difference: 11729.870000000092 / 11731.410000000136 [-0.01%] Windows-64-VC14: OCCT Total CPU difference: 20661.390625 / 20657.984375 [+0.02%] Products Total CPU difference: 13282.171875 / 13258.375 [+0.18%] Image differences : No differences that require special attention Memory differences : No differences that require special attention |
|
Branch CR32807 has been deleted by mnt. SHA-1: 81d29e2640b900b3dc34544c5e768ce4f358c2b0 |
|
Branch CR32807_1 has been deleted by mnt. SHA-1: c0d7afd1081c679b4235321b1565e07855c39a8a |
|
Branch CR32807_2 has been deleted by mnt. SHA-1: 57d71f0e54bc419661ea0a3d020d060d2c086ad9 |
|
Branch CR32807_3 has been deleted by mnt. SHA-1: baa00241f8a1dcb9fe8e9ef473ffb5716645f306 |
|
Branch CR32807_4 has been deleted by mnt. SHA-1: 67d24ed22badfaf6e54e6822f8960a820b5e80b0 |
occt: master 2052b04e 2022-05-11 16:08:55
Committer: |
0032807: Modeling Algorithms - Bad result of sweep operation when the UEdges has more than one intersect points Add choosing the intersect point taking into account the tangentCross when prev UEdge and next UEdge has more than one intersect points; Add exact correction of edge tolerance (it fix problems with edge tolerance on Linux); Add exact check of edge tolerance in testcase |
Affected Issues 0032807 |
|
mod - src/Approx/Approx_SameParameter.cxx | Diff File | ||
mod - src/Approx/Approx_SameParameter.hxx | Diff File | ||
mod - src/BRepFill/BRepFill_Sweep.cxx | Diff File | ||
mod - src/BRepFill/BRepFill_TrimShellCorner.cxx | Diff File | ||
mod - src/BRepFill/BRepFill_TrimShellCorner.hxx | Diff File | ||
mod - tests/bugs/modalg_7/bug29204 | Diff File | ||
mod - tests/bugs/modalg_7/bug29663 | Diff File | ||
mod - tests/evolved/voluved/HMC008 | Diff File | ||
add - tests/pipe/bugs/bug32807 | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2022-01-27 06:38 | Manycore | New Issue | |
2022-01-27 06:38 | Manycore | Assigned To | => Manycore |
2022-01-27 06:47 | Manycore | Note Added: 0106619 | |
2022-01-27 06:47 | Manycore | File Added: path.brep | |
2022-01-27 06:47 | Manycore | File Added: profile.brep | |
2022-01-27 06:47 | Manycore | File Added: old_result.brep | |
2022-01-27 06:47 | Manycore | File Added: new_result.brep | |
2022-01-27 06:47 | Manycore | File Added: path_profile.png | |
2022-01-27 06:47 | Manycore | File Added: old_result.png | |
2022-01-27 06:47 | Manycore | File Added: new_result.png | |
2022-01-27 14:06 | Manycore | Note Added: 0106630 | |
2022-01-27 14:06 | Manycore | File Added: 企业微信截图_16432807732818.png | |
2022-01-27 14:06 | Manycore | File Added: 企业微信截图_1643280935600.png | |
2022-01-27 14:06 | Manycore | File Added: 企业微信截图_1643280893418.png | |
2022-01-27 14:10 | Manycore | Note Edited: 0106630 | |
2022-01-27 14:13 | kgv | Note Added: 0106632 | |
2022-01-27 14:14 | kgv | Note Edited: 0106632 | |
2022-01-27 14:18 | git | Note Added: 0106633 | |
2022-01-27 14:22 | kgv | Summary | Bad result of sweep operation when the UEdges has more than one intersect points => Modeling Algorithms - Bad result of sweep operation when the UEdges has more than one intersect points |
2022-01-28 06:27 | Manycore | Note Added: 0106642 | |
2022-01-28 06:27 | Manycore | File Added: path__profile .png | |
2022-01-28 06:27 | Manycore | File Added: UEdges_has_more_than_one_Intersect_points.png | |
2022-01-28 06:27 | Manycore | File Added: we_choose_the_one_keeps_the_tangentCross.png | |
2022-01-28 06:29 | Manycore | Note Edited: 0106642 | |
2022-01-28 06:51 | Manycore | Note Added: 0106643 | |
2022-01-28 06:51 | Manycore | File Added: bug0032807 | |
2022-01-28 06:51 | Manycore | File Added: bug0032807_path.brep | |
2022-01-28 06:51 | Manycore | File Added: bug0032807_profile.brep | |
2022-01-28 07:07 | git | Note Added: 0106644 | |
2022-01-28 07:12 | Manycore | Severity | trivial => major |
2022-01-28 07:12 | Manycore | Test case number | => tests\pipe\bugs\bug0032807 |
2022-01-28 07:28 | Manycore | Note Added: 0106645 | |
2022-01-28 08:39 | Manycore | Note Edited: 0106645 | |
2022-01-28 08:41 | Manycore | Assigned To | Manycore => kgv |
2022-01-28 08:41 | Manycore | Status | new => resolved |
2022-01-28 09:47 | kgv | Assigned To | kgv => msv |
2022-01-28 09:55 | kgv | Note Added: 0106646 | |
2022-01-28 11:04 |
|
Assigned To | msv => jgv |
2022-01-28 11:44 | git | Note Added: 0106649 | |
2022-01-28 11:47 | git | Note Added: 0106650 | |
2022-03-31 08:44 |
|
Assigned To | jgv => mgerus |
2022-03-31 08:44 |
|
Status | resolved => assigned |
2022-04-05 22:42 |
|
Relationship added | related to 0032809 |
2022-04-06 13:12 | git | Note Added: 0107661 | |
2022-04-12 07:16 | git | Note Added: 0107873 | |
2022-04-12 10:14 | Manycore | Assigned To | mgerus => Manycore |
2022-04-12 10:16 | Manycore | Assigned To | Manycore => mgerus |
2022-04-12 10:53 | Manycore | Note Added: 0107884 | |
2022-04-12 12:04 |
|
Note Added: 0107886 | |
2022-04-21 14:51 | git | Note Added: 0108082 | |
2022-04-22 10:23 | git | Note Added: 0108101 | |
2022-04-27 13:20 | git | Note Added: 0108222 | |
2022-04-28 11:36 | git | Note Added: 0108236 | |
2022-04-29 11:11 | git | Note Added: 0108248 | |
2022-04-29 14:43 | git | Note Added: 0108254 | |
2022-04-29 16:16 |
|
Note Added: 0108259 | |
2022-05-05 10:03 |
|
Note Added: 0108333 | |
2022-05-06 07:29 | git | Note Added: 0108356 | |
2022-05-06 07:34 | git | Note Added: 0108357 | |
2022-05-06 10:28 |
|
Note Added: 0108360 | |
2022-05-06 10:29 |
|
Assigned To | mgerus => azv |
2022-05-06 10:29 |
|
Status | assigned => resolved |
2022-05-06 10:51 |
|
Assigned To | azv => mgerus |
2022-05-06 10:51 |
|
Status | resolved => assigned |
2022-05-06 10:51 |
|
Note Added: 0108362 | |
2022-05-06 12:05 | git | Note Added: 0108364 | |
2022-05-11 09:07 | git | Note Added: 0108389 | |
2022-05-11 16:10 | git | Note Added: 0108397 | |
2022-05-11 16:11 |
|
Note Added: 0108398 | |
2022-05-14 22:29 | git | Note Added: 0108422 | |
2022-05-16 10:06 |
|
Assigned To | mgerus => azv |
2022-05-16 10:06 |
|
Status | assigned => resolved |
2022-05-16 10:07 |
|
Assigned To | azv => bugmaster |
2022-05-16 10:07 |
|
Status | resolved => reviewed |
2022-05-16 10:07 |
|
Note Added: 0108430 | |
2022-05-21 11:08 |
|
Status | reviewed => tested |
2022-05-21 11:08 |
|
Note Added: 0108533 | |
2022-05-21 11:45 |
|
Changeset attached | => occt master 2052b04e |
2022-05-21 11:45 |
|
Assigned To | bugmaster => mgerus |
2022-05-21 11:45 |
|
Status | tested => verified |
2022-05-21 11:45 |
|
Resolution | open => fixed |
2022-05-21 11:47 | git | Note Added: 0108536 | |
2022-05-21 11:47 | git | Note Added: 0108537 | |
2022-05-21 11:47 | git | Note Added: 0108538 | |
2022-05-21 11:47 | git | Note Added: 0108539 | |
2022-05-21 11:47 | git | Note Added: 0108540 | |
2023-03-19 19:09 | vglukhik | Status | verified => closed |
2023-03-19 19:09 | vglukhik | Fixed in Version | => 7.6.3 |