View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0031661 | Open CASCADE | OCCT:Modeling Algorithms | public | 2020-07-10 08:49 | 2023-03-19 19:18 |
Reporter | Assigned To | ||||
Priority | normal | Severity | minor | ||
Status | closed | Resolution | fixed | ||
Product Version | 7.4.0 | ||||
Target Version | 7.6.3 | Fixed in Version | 7.6.3 | ||
Summary | 0031661: Modeling Data - Algorithm crashes when projecting parabola or hyperbola to plane | ||||
Description | Projection of parabola or hyperbola to plane, which is not parallel to the curve's plane, leads to the exception in the most cases (ref. Steps to Reproduce). The problem is that ProjLib_ProjectOnPlane cannot provide a canonical curve as a projection of corresponding types of curves and tries to generate infinite B-spline curve. This is not the case for the trimmed curve, but even in this case the projected curve is a B-spline curve. The main goal of this issue is to provide the canonical curve as a projection of a canonical curve in both cases: trimmed and infinite. | ||||
Steps To Reproduce | parabola p 0 0 0 1 1 1 2 0 -2 10 plane pln 0 0 0 0 0 1 projonplane r p pln 0 # OSD_Exception_ACCESS_VIOLATION hyperbola h 0 0 0 1 1 1 2 0 -2 10 10 plane pln 0 0 0 0 0 1 projonplane r h pln 0 # Standard_NumericError: Result of Cosh exceeds the maximum value Standard_Real | ||||
Tags | No tags attached. | ||||
Test case number | bugs/moddata_3/bug31661_1, bugs/moddata_3/bug31661_2 | ||||
|
Branch CR31661 has been created by ifv. SHA-1: cb6ea043d9b984355a14e523ef8338470182de83 Detailed log of new commits: Author: ifv Date: Thu Mar 3 15:05:23 2022 +0300 0031661: Modeling Data - Exception when projecting parabola or hyperbola to plane ProjLib/ProjLib_ProjectOnPlane.cxx - formatting Author: ifv Date: Fri Mar 4 15:42:03 2022 +0300 Project of Parabola |
|
Branch CR31661 has been updated by ifv. SHA-1: 5a5a9e6a5f727355df81c27cab676d342bdfc4ef Detailed log of new commits: Author: ifv Date: Wed Mar 16 10:37:19 2022 +0300 Last modification for hyperbola |
|
Branch CR31661 has been updated forcibly by ifv. SHA-1: e65f3bae9f7a7e09b8cd8a4e37ee7d0340607379 |
|
Branch CR31661 has been updated forcibly by ifv. SHA-1: ff051f4d5c65530c543f88c1cb94be3a3e3710b0 |
|
Branch CR31661 has been updated forcibly by ifv. SHA-1: 70f057d2ca636a168cd625619cf6409aa9b90f81 |
|
Branch CR31661 is ready for review Branches for integration: OCCT - CR31661 Products - not Test results: http://jenkins-test-08.nnov.opencascade.com/view/CR31661-master-IFV/view/COMPARE/ |
|
Dear Igor, 1. I get an exception on the following scenario: plane pln 0 0 0 0 0 1 parabola p 0 0 0 0 1 0 2 0 -1 10 trim pp p -100 200 projonplane r pp pln 0 2. I've found the following code 892: myFirstPar = GeomLinePtr->FirstParameter(); 893: myLastPar = GeomLinePtr->LastParameter(); 894: if (!isFInfinite) 895: { 896: gp_Pnt aP = myCurve->Value(myCurve->FirstParameter()); 897: aP = ProjectPnt(myPlane, myDirection, aP); 898: myFirstPar = ElCLib::LineParameter(aLine.Position(), aP); 899: } 900: if (!isLInfinite) 901: { 902: gp_Pnt aP = myCurve->Value(myCurve->LastParameter()); 903: aP = ProjectPnt(myPlane, myDirection, aP); 904: myLastPar = ElCLib::LineParameter(aLine.Position(), aP); 905: } 906: myResult = new GeomAdaptor_Curve(GeomLinePtr, myFirstPar, myLastPar); which repeats several times. I propose to implement a separate method providing this code. 3. Magic number in the following code. Couldn't we use Precision::Infinite() instead? 1012: Standard_Real aHugePar = 20000; And here, why did you use 10? 1140: Standard_Real aHugePar = 10; 4. Could you also split the test case for parabola and hyperbola individually? |
|
Branch CR31661 has been updated forcibly by ifv. SHA-1: 18497cb64e765e7092130a0049f30335b7fb17b1 |
|
Branch CR31661 has been updated forcibly by ifv. SHA-1: 96585f58c8fdc4f2547b00afe9ade3ecd5e88fca |
|
Branch CR31661 has been updated forcibly by ifv. SHA-1: 7e3fa97922cf70cccdbf790fd6e7efd7a4604aa7 |
|
Branch CR31661 is ready for review Test results http://jenkins-test-08.nnov.opencascade.com/view/CR31661-master-IFV/view/COMPARE/ Branches for integration: OCCT - CR31661 Products - not Using "magic" numbers for restricting parabola and hyperbola parameters are necessary to prevent floating overflow and exceptions during approximation. |
|
Warning on VC12 Windows ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Project : CR0-WEEK-14_CR0-WEEK-14-OCCT-Windows-64-VC12-opt-compile ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ New warnings appears: 1 Type : MSBuild Category : C4512 File Name : E:/builds/CR0-WEEK-14_CR0-WEEK-14/OCCT_SRC/src/ProjLib/ProjLib_ProjectOnPlane.cxx Line : 333 Message : ProjLib_MaxCurvature : assignment operator could not be generated |
|
Branch CR31661 has been updated forcibly by ifv. SHA-1: ffae619c325d42c54db7613946aa50ed7c4fef8a |
|
Branch CR31661 is updated in order to remove warning on VC12, please check |
|
Combination - OCCT branch : IR-2022-04-08 master SHA - 7021de2fe7a69d4c788ccf43b8b096dbcc8597c8 49e51745631c52b6c452c65adae4d6dfa21a1b1e Products branch : IR-2022-04-08 SHA - e16d959d441765c483049307ba7293173532103a 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: 18452.87000000039 / 18490.94000000032 [-0.21%] Products Total CPU difference: 11761.310000000152 / 11719.920000000124 [+0.35%] Windows-64-VC14: OCCT Total CPU difference: 20539.828125 / 20552.71875 [-0.06%] Products Total CPU difference: 13248.21875 / 13242.609375 [+0.04%] Image differences : No differences that require special attention Memory differences : No differences that require special attention |
|
Branch CR31661 has been deleted by mnt. SHA-1: ffae619c325d42c54db7613946aa50ed7c4fef8a |
occt: master 1f37f1d5 2022-03-03 15:05:23
Committer: |
0031661: Modeling Data - Exception when projecting parabola or hyperbola to plane ProjLib/ProjLib_ProjectOnPlane.cxx - formatting 0031661: Modeling Data - Algorithm crashes when projecting parabola or hyperbola to plane ProjLib/ProjLib_ProjectOnPlane.cxx - building of analytical parabola and hyperbola is added bugs/moddata_3/bug31661_* - new test cases are added |
Affected Issues 0031661 |
|
mod - src/ProjLib/ProjLib_ProjectOnPlane.cxx | Diff File | ||
mod - src/ProjLib/ProjLib_ProjectOnPlane.hxx | Diff File | ||
add - tests/bugs/moddata_3/bug31661_1 | Diff File | ||
add - tests/bugs/moddata_3/bug31661_2 | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2020-07-10 08:49 |
|
New Issue | |
2020-07-10 08:49 |
|
Assigned To | => msv |
2020-09-15 11:40 |
|
Target Version | 7.5.0 => 7.6.0 |
2021-08-29 18:53 |
|
Target Version | 7.6.0 => 7.7.0 |
2022-03-03 10:47 |
|
Assigned To | msv => ifv |
2022-03-04 15:22 |
|
Time allocated | 1.3.2022: 4 h. => set |
2022-03-04 15:23 |
|
Time allocated | 2.3.2022: 4 h. => set |
2022-03-04 15:23 |
|
Time allocated | 3.3.2022: 4 h. => set |
2022-03-04 15:24 |
|
Time allocated | 4.3.2022: 5 h. => set |
2022-03-10 14:31 | git | Note Added: 0107254 | |
2022-03-11 14:37 |
|
Time allocated | 7.3.2022: 5.5 h. => set |
2022-03-11 14:38 |
|
Time allocated | 9.3.2022: 6.5 h. => set |
2022-03-11 14:39 |
|
Time allocated | 10.3.2022: 4.5 h. => set |
2022-03-11 14:40 |
|
Time allocated | 11.3.2022: 6.5 h. => set |
2022-03-16 16:36 | git | Note Added: 0107305 | |
2022-03-18 10:28 |
|
Summary | Exception when projecting parabola or hyperbola to plane => Modeling Data - Exception when projecting parabola or hyperbola to plane |
2022-03-18 10:57 |
|
Summary | Modeling Data - Exception when projecting parabola or hyperbola to plane => Modeling Data - Algorithm crahes when projecting parabola or hyperbola to plane |
2022-03-18 12:17 | git | Note Added: 0107343 | |
2022-03-18 12:20 |
|
Summary | Modeling Data - Algorithm crahes when projecting parabola or hyperbola to plane => Modeling Data - Algorithm crashes when projecting parabola or hyperbola to plane |
2022-03-18 12:21 |
|
Test case number | => bugs/moddata_3/bug31661 |
2022-03-18 12:33 | git | Note Added: 0107344 | |
2022-03-18 16:04 |
|
Time allocated | 18.3.2022: 32 h. => set |
2022-03-18 16:34 |
|
Status | new => assigned |
2022-03-21 09:59 | git | Note Added: 0107371 | |
2022-03-21 16:02 |
|
Assigned To | ifv => azv |
2022-03-21 16:02 |
|
Status | assigned => resolved |
2022-03-21 16:02 |
|
Note Added: 0107377 | |
2022-03-22 08:22 |
|
Assigned To | azv => ifv |
2022-03-22 08:22 |
|
Status | resolved => assigned |
2022-03-22 08:22 |
|
Note Added: 0107385 | |
2022-03-22 08:23 |
|
Note Edited: 0107385 | |
2022-03-22 08:24 |
|
Note Edited: 0107385 | |
2022-03-30 18:41 | git | Note Added: 0107486 | |
2022-03-30 18:44 | git | Note Added: 0107487 | |
2022-03-31 09:06 | git | Note Added: 0107497 | |
2022-04-01 10:04 |
|
Test case number | bugs/moddata_3/bug31661 => bugs/moddata_3/bug31661_1, bugs/moddata_3/bug31661_2 |
2022-04-01 10:10 |
|
Assigned To | ifv => azv |
2022-04-01 10:10 |
|
Status | assigned => resolved |
2022-04-01 10:10 |
|
Note Added: 0107534 | |
2022-04-01 14:56 |
|
Time allocated | 1.4.2022: 5 h. => set |
2022-04-02 21:49 |
|
Assigned To | azv => bugmaster |
2022-04-02 21:49 |
|
Status | resolved => reviewed |
2022-04-05 10:06 |
|
Assigned To | bugmaster => ifv |
2022-04-05 10:06 |
|
Status | reviewed => assigned |
2022-04-05 10:06 |
|
Note Added: 0107624 | |
2022-04-05 11:25 | git | Note Added: 0107632 | |
2022-04-05 11:29 |
|
Assigned To | ifv => smoskvin |
2022-04-05 11:29 |
|
Status | assigned => resolved |
2022-04-05 11:29 |
|
Note Added: 0107633 | |
2022-04-06 10:29 |
|
Assigned To | smoskvin => bugmaster |
2022-04-06 10:29 |
|
Status | resolved => reviewed |
2022-04-09 09:50 |
|
Status | reviewed => tested |
2022-04-09 09:50 |
|
Note Added: 0107788 | |
2022-04-10 10:42 |
|
Changeset attached | => occt master 1f37f1d5 |
2022-04-10 10:42 |
|
Assigned To | bugmaster => ifv |
2022-04-10 10:42 |
|
Status | tested => verified |
2022-04-10 10:42 |
|
Resolution | open => fixed |
2022-04-10 10:49 | git | Note Added: 0107814 | |
2022-04-11 15:16 |
|
Time allocated | 5.4.2022: 2 h. => set |
2022-06-19 15:03 |
|
Target Version | 7.7.0 => 7.6.3 |
2023-03-19 19:18 | vglukhik | Status | verified => closed |
2023-03-19 19:18 | vglukhik | Fixed in Version | => 7.6.3 |