Archived issue #0028230
Convert C0 2d curve to C1 raises exception
Description
The method Geom2dConvert::C0BSplineToC1BSplineCurve raises exception in some cases.
The corresponding draw command is splitc12d.
It is strange that if we call it with tolerance 1e-7 it does not raise exception, and does not modify the curve. The curve remains C0.
If we call it with tolerance 1e-6 the curve becomes C1.
If we call it with tolerance 1e-5 (default for draw command) it raises exception.
The method should have consistent behavior.
This bug was the cause of the bug #28221, which was fixed by another way.
The corresponding draw command is splitc12d.
It is strange that if we call it with tolerance 1e-7 it does not raise exception, and does not modify the curve. The curve remains C0.
If we call it with tolerance 1e-6 the curve becomes C1.
If we call it with tolerance 1e-5 (default for draw command) it raises exception.
The method should have consistent behavior.
This bug was the cause of the bug #28221, which was fixed by another way.
Steps to reproduce
restore Attachment 1 (BREP) e
mk2dcurve pc e 2
splitc12d pc 0
mk2dcurve pc e 2
splitc12d pc 0
Public activity
8 archived notes
Participants are labeled by their role within this record.
Branch [archived branch] has been created by Participant.
[revision removed]
Detailed log of new commits:
Author: ifv
Date: Mon Jan 9 09:41:22 2017 +0300
0028230: Convert C0 2d curve to C1 raises exception
The treatment of small curves (length of curves is less then tolerance used for checking G1) is added in
Geom2dConvert_CompCurveToBSplineCurve.cxx
[revision removed]
Detailed log of new commits:
Author: ifv
Date: Mon Jan 9 09:41:22 2017 +0300
0028230: Convert C0 2d curve to C1 raises exception
The treatment of small curves (length of curves is less then tolerance used for checking G1) is added in
Geom2dConvert_CompCurveToBSplineCurve.cxx
Branch CR28230 is ready for review
Branch [archived branch] has been updated by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Thu Jan 19 12:10:13 2017 +0300
// small optimization and creation of test case
[revision removed]
Detailed log of new commits:
Author: Author
Date: Thu Jan 19 12:10:13 2017 +0300
// small optimization and creation of test case
Please test.
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been rebased on the current master
Dear BugMaster,
Branch CR28230 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
[revision removed]
Number of compiler warnings:
occt component:
Linux: 0 (0 on master)
Windows: 0 (0 on master)
MasOS: 0 (0 on master)
products component:
Linux: 63
Windows: 0
MacOS: 1163
Regressions/Differences:
Not detected
Testing cases:
bugs moddata_3 bug28230 - OK
http://occt-tests/CR28230-master-OCCT/Debian70-64/bugs/moddata_3/bug28230.html
http://occt-tests/CR28230-master-OCCT/Windows-64-VC10/bugs/moddata_3/bug28230.html
Testing on Linux:
Total MEMORY difference: 92960529 / 92072858 [+0.96%]
Total CPU difference: 21099.150000000125 / 21062.360000000153 [+0.17%]
Testing on Windows:
Total MEMORY difference: 58324848 / 58324216 [+0.00%]
Total CPU difference: 19486.28771129849 / 19152.585972198493 [+1.74%]
Branch CR28230 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
[revision removed]
Number of compiler warnings:
occt component:
Linux: 0 (0 on master)
Windows: 0 (0 on master)
MasOS: 0 (0 on master)
products component:
Linux: 63
Windows: 0
MacOS: 1163
Regressions/Differences:
Not detected
Testing cases:
bugs moddata_3 bug28230 - OK
http://occt-tests/CR28230-master-OCCT/Debian70-64/bugs/moddata_3/bug28230.html
http://occt-tests/CR28230-master-OCCT/Windows-64-VC10/bugs/moddata_3/bug28230.html
Testing on Linux:
Total MEMORY difference: 92960529 / 92072858 [+0.96%]
Total CPU difference: 21099.150000000125 / 21062.360000000153 [+0.17%]
Testing on Windows:
Total MEMORY difference: 58324848 / 58324216 [+0.00%]
Total CPU difference: 19486.28771129849 / 19152.585972198493 [+1.74%]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]