View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0024008 | Community | OCCT:Shape Healing | public | 2013-06-02 12:40 | 2013-12-19 14:00 |
Reporter | Roman Lygin | Assigned To | bugmaster | ||
Priority | normal | Severity | minor | ||
Status | closed | Resolution | fixed | ||
Platform | A | OS | L | ||
Product Version | 6.6.0 | ||||
Target Version | 6.7.0 | Fixed in Version | 6.7.0 | ||
Summary | 0024008: ShapeAnalysis_Surface causes exception in Geom_OffsetSurface | ||||
Description | When searching for point projection ShapeAnalysis_Surface::SurfaceNewton() can go far beyond parametric surface domain. For offset surfaces, this may cause an exception Geom_UndefinedValue in D2(). Previous behavior of ShapeAnalysis_Surface::SurfaceNewton() was to continue iterations as long as du and dv continue to be large enough. For the enclosed case (200-b) this leads to reaching a 2D point with parameter U > 39 while the suface's Umax is 1. The two enclosed test cases use almost identical surface/curve, only differing in rounding in 15 or 16 digit after the decimal dot. For the case 200, the parameter U reaches 11 (i.e. not 39) and no exception is thrown, although the resulting projected curve is the same and is limited by a natural domain anyway. The fix swaps two comparisons and makes the loop terminate if the new 2D point is beyond the surface domain. In this case, NextValueOfUV() falls back to ValueOfUV(). | ||||
Steps To Reproduce | See enclosed C++ code and two test cases. Note that the 3D curve is quite beyond the surface. However this comes from a real-world file, and the projection limited by surface domain is expected as a result. | ||||
Tags | No tags attached. | ||||
Test case number | bugs heal(017) bug24008_1 bug24008_2 | ||||
related to | 0023943 | closed | Roman Lygin | OCC fails to work with offset surfaces with singularities |
|
reproducer.zip (16,144 bytes) |
|
The fix has been pushed into the git repository |
|
Branch CR24008 (and products from GIT master) was compiled on Linux and Windows platforms and tested. SHA-1: 822fe41c2493659d5261d3d127fe05b970873061 Number of compiler warnings: occt component : Linux: 2 (2 on master) Windows: 7 (7 on master) products component : Linux: 0 (0 on master) Windows: 63 (63 on master) Regressions: de iges_3 A4 de step_2 P3 de step_4 I2 http://occt-tests/CR24008-master-occt/Debian60-64/summary.html http://occt-tests/CR24008-master-occt/Windows-32-VC9/summary.html Improvements: No improvements Testing cases: bugs heal (017) bug24008_1 bug24008_2 - OK Could you please review this test case and new QA command OCC24008, which is located in src/QABugs/QABugs_19.cxx? Testing on Linux: Total MEMORY difference: 365755824 / 365800244 Total CPU difference: 53917.97000000024 / 48126.490000000886 Testing on Windows: Total MEMORY difference: 420908224 / 421674192 Total CPU difference: 46922.953125 / 37349.765625 There are not differences in images found by testdiff. |
|
New QA command OCC24008 was reviewed |
|
The fix is not in 6.7.0 beta. OCC team: can you please review and integrate the fix into the production release 6.7.0 ? Thank you in advance. |
|
Dear Roman. As far as you can see three regression were found during testing your fix. I checked your fix on current master and inform you about results. |
|
Refactored on current master branch CR24008_1 is ready to be tested. Following tests were updated: de iges_3 A4 de step_2 P3 de step_4 I2 |
|
Dear BugMaster, Branch CR24008_1 (and products from GIT master) was compiled on Linux and Windows platforms and tested. SHA-1: eeb30c4141179e7620bcd058a507fa19f9d08690 Number of compiler warnings: occt component : Linux: 320 (320 on master) Windows: 0 (0 on master) products component : Linux: 188 (188 on master) Windows: 286 (286 on master) Regressions/Differences: http://occt-tests/CR24008-1-master-occt/Debian60-64/de/iges_1/P5.html http://occt-tests/CR24008-1-master-occt/Windows-32-VC9/de/iges_1/P5.html de iges_1(001) P5: FAILED Testing cases: http://occt-tests/CR24008-1-master-occt/Debian60-64/bugs/heal/bug24008_1.html http://occt-tests/CR24008-1-master-occt/Debian60-64/bugs/heal/bug24008_2.html http://occt-tests/CR24008-1-master-occt/Windows-32-VC9/bugs/heal/bug24008_1.html http://occt-tests/CR24008-1-master-occt/Windows-32-VC9/bugs/heal/bug24008_2.html bugs heal (017) bug24008_1 bug24008_2 - FAILED (exception) - invalid command name "OCC24008" Testing on Linux: Total MEMORY difference: 357160084 / 358363416 Total CPU difference: 42535.290000000154 / 43951.280000000384 Testing on Windows: Total MEMORY difference: 412558160 / 412628780 Total CPU difference: 34579.421875 / 32169.1875 There are not differences in images found by testdiff. |
|
Dear gka, bugs heal (017) bug24008_1 bug24008_2 - see CR24008 OCC24008 - see QABugs_19.cxx in CR24008 |
|
Test case de iges_1 P5 is not regression. Please regenerate this test. |
|
Dear BugMaster, Branch CR24008_1 (and products from GIT master) was compiled on Linux and Windows platforms and tested. SHA-1: 2b0ab47fa47abe6d64f42484c2df628cf00cb2f6 Number of compiler warnings: occt component : Linux: 320 (320 on master) Windows: 0 (0 on master) products component : Linux: 188 (188 on master) Windows: 286 (286 on master) Regressions/Differences: http://jenkins-test-02.nnov.opencascade.com:8080/user/mnt/my-views/view/CR24008_1m/job/mnt-CR24008_1m-master_products_tests_linux_start/label=Debian60-64,tests_group=sat,tests_subgroup=002/3/HTML_Report/? http://jenkins-test-02.nnov.opencascade.com:8080/user/mnt/my-views/view/CR24008_1m/job/mnt-CR24008_1m-master_products_tests_windows_start/label=windows_test,tests_group=sat,tests_subgroup=002/4/HTML_Report/? sat doc_2(002) H1: FAILED Testing cases: http://occt-tests/CR24008-1m-master-occt/Debian60-64/bugs/heal/bug24008_1.html http://occt-tests/CR24008-1m-master-occt/Windows-32-VC9/bugs/heal/bug24008_1.html bugs heal(017) bug24008_1: OK http://occt-tests/CR24008-1m-master-occt/Debian60-64/bugs/heal/bug24008_2.html http://occt-tests/CR24008-1m-master-occt/Windows-32-VC9/bugs/heal/bug24008_2.html bugs heal(017) bug24008_2: OK Testing on Linux: Total MEMORY difference: 358289996 / 358507884 Total CPU difference: 49319.61000000002 / 43972.10000000039 Testing on Windows: Total MEMORY difference: 413204048 / 412694056 Total CPU difference: 31962.984375 / 32186.09375 There are not differences in images found by testdiff. |
|
Test case sat doc_2(002) H1 is improvement .Could you please regenerate reference data for this test. |
|
Dear BugMaster, Test case sat doc_2(002) H1 is pushed to new branch CR24008_1 of Products-GIT repository. |
occt: master 2e9fd4bc 2013-11-28 08:13:15
Committer: bugmaster Details Diff |
0024008: ShapeAnalysis_Surface causes exception in Geom_OffsetSurface Refactoring on current master fix for bug 0024008: ShapeAnalysis_Surface causes exception in Geom_OffsetSurface. And modified test scripts in order to avoid report regressions Test cases for issue CR24008 |
Affected Issues 0024008 |
|
mod - src/QABugs/QABugs_19.cxx | Diff File | ||
mod - src/ShapeAnalysis/ShapeAnalysis_Surface.cxx | Diff File | ||
add - tests/bugs/heal/bug24008_1 | Diff File | ||
add - tests/bugs/heal/bug24008_2 | Diff File | ||
mod - tests/de/iges_3/A4 | Diff File | ||
mod - tests/de/step_2/P3 | Diff File | ||
mod - tests/de/step_4/I2 | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2013-06-02 12:40 | Roman Lygin | New Issue | |
2013-06-02 12:40 | Roman Lygin | Assigned To | => gka |
2013-06-02 12:40 | Roman Lygin | File Added: reproducer.zip | |
2013-06-02 12:47 | Roman Lygin | Note Added: 0024592 | |
2013-06-02 12:47 | Roman Lygin | Status | new => resolved |
2013-06-02 15:56 |
|
Relationship added | related to 0023943 |
2013-06-24 17:56 |
|
Status | resolved => reviewed |
2013-06-25 17:19 | apn | Note Added: 0024863 | |
2013-06-25 17:20 | apn | Test case number | => bugs heal bug24008_1 bug24008_2 |
2013-06-25 17:20 | apn | Status | reviewed => assigned |
2013-07-02 09:50 |
|
Note Added: 0024939 | |
2013-11-13 16:42 | apn | Status | assigned => feedback |
2013-11-16 21:40 | Roman Lygin | Note Added: 0026673 | |
2013-11-22 16:35 |
|
Note Added: 0026855 | |
2013-11-22 19:18 |
|
Note Added: 0026862 | |
2013-11-22 19:18 |
|
Status | feedback => reviewed |
2013-11-25 08:06 |
|
Assigned To | gka => mkv |
2013-11-26 12:25 |
|
Note Added: 0026913 | |
2013-11-26 12:25 |
|
Note Added: 0026914 | |
2013-11-26 12:26 |
|
Test case number | bugs heal bug24008_1 bug24008_2 => bugs heal(017) bug24008_1 bug24008_2 |
2013-11-26 12:26 |
|
Assigned To | mkv => gka |
2013-11-26 12:26 |
|
Status | reviewed => assigned |
2013-11-26 15:31 |
|
Note Added: 0026920 | |
2013-11-27 12:28 |
|
Note Added: 0026952 | |
2013-11-27 12:29 |
|
Status | assigned => feedback |
2013-11-27 14:05 |
|
Note Added: 0026960 | |
2013-11-27 14:05 |
|
Status | feedback => reviewed |
2013-11-27 14:56 |
|
Assigned To | gka => mkv |
2013-11-28 10:44 |
|
Note Added: 0026973 | |
2013-11-28 10:45 |
|
Assigned To | mkv => bugmaster |
2013-11-28 10:45 |
|
Status | reviewed => tested |
2013-12-02 10:21 | bugmaster | Changeset attached | => occt master 2e9fd4bc |
2013-12-02 10:21 | bugmaster | Status | tested => verified |
2013-12-02 10:21 | bugmaster | Resolution | open => fixed |
2013-12-09 12:03 | bugmaster | Target Version | => 6.7.0 |
2013-12-19 13:50 | bugmaster | Status | verified => closed |
2013-12-19 14:00 | bugmaster | Fixed in Version | => 6.7.0 |