MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0030876Community[OCCT] OCCT:Data Exchangepublic2019-08-07 15:512019-09-07 16:27
Reporterdrazmyslovich 
Assigned Tobugmaster 
PrioritynormalSeverityminor 
StatusclosedResolutionfixed 
PlatformWindowsOSVC++ 2015OS Version64 bit
Product Version[OCCT] 7.4.0 
Target Version[OCCT] 7.4.0Fixed in Version[OCCT] 7.4.0 
Summary0030876: Data Exchange - StepToTopoDS edge translation should be resistant to malformed parameter values
DescriptionThe algorithm, which checks pcurves doesn't consider a situation if edge lower bound is bigger as curve upper parameter.
Steps To ReproduceUnfortunately, I have no example for this issue
TagsNo tags attached.
Test case number
Attached Files

- Relationships

-  Notes
(0086070)
git (administrator)
2019-08-07 15:52

Branch CR30876 has been created by drazmyslovich.

SHA-1: cccfbb3a2b008f143c9ab5eb1179db0cd5a1d294


Detailed log of new commits:

Author: drazmyslovich
Date: Wed Aug 7 14:49:59 2019 +0200

    0030876: StepToTopoDS edge translation should be resistant to malformed parameter values
(0086071)
drazmyslovich (developer)
2019-08-07 15:53

The changes are submitted, please, review
(0086793)
git (administrator)
2019-09-05 14:06

Branch CR30876_1 has been created by gka.

SHA-1: 7603d5a22f02e74535f2d4f6028e7a26a009278b


Detailed log of new commits:

Author: gka
Date: Thu Sep 5 14:03:05 2019 +0300

    0030876: Data Exchange - StepToTopoDS edge translation should be resistant to malformed parameter values
    
    Corrected misprint in the method CheckPCurves of the class StepToTopoDS_TranslateEdgeLoop for case when higher bound of the range of pcurve on the edge greater then last parameter of the pcurve.
    Added check on the not periodic flag for pcurve when range pcurve on the edge is adjusted to parameters pcurve.

Author: drazmyslovich
Date: Wed Aug 7 14:49:59 2019 +0200

    0030876: StepToTopoDS edge translation should be resistant to malformed parameter values
(0086796)
gka (developer)
2019-09-05 14:54

Dear Dmitry.

Plaese note that modifications in the your commit leads to set null range for pcurve on the edge:
   if (w2 > cl) {
     if (w1 > cl)
     {
       w1 = cl;
     }
      B.Range(myEdge, aFace, w1, cl);
      w2 = cl;
     }
Case when range of pcurve on the edge lies out of the first and last parameters of pcurve is processed in the method XSAlgo_AlgoContainer::CheckPCurve.

Therefore your fix was corrected by following way:

  if (w2 > cl) {
      B.Range(myEdge, aFace, w1, cl);
      w2 = cl;
  }
In such case when edge lower bound is bigger as curve upper parameter the next condition can work or range of pcurve will be corrected in the method XSAlgo_AlgoContainer::CheckPCurve
(0086871)
gka (developer)
2019-09-06 13:33

Results of tests can be found by path:
http://vm-jenkins-test-12.nnov.opencascade.com:8080/view/CR30876_1-master-gka/view/COMPARE/ [^]
(0086872)
gka (developer)
2019-09-06 13:34

Branch CR30876_1 was reviewed
(0086910)
bugmaster (administrator)
2019-09-06 18:32

Combination -
OCCT branch : CR30876_1
master SHA - 7603d5a22f02e74535f2d4f6028e7a26a009278b
5f5b1aed1c6e139bbd34314eca77ae7abcd8895c
Products branch : master SHA - 34e9bf11c6b525830b5dee35839707da81e7d1ab
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: 16176.559999999989 / 16167.270000000033 [+0.06%]
Products
Total CPU difference: 10501.580000000033 / 10484.930000000048 [+0.16%]
Windows-64-VC14:
OCCT
Total CPU difference: 18211.09375 / 18256.515625 [-0.25%]
Products
Total CPU difference: 12039.1875 / 12168.265625 [-1.06%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention
(0086929)
git (administrator)
2019-09-07 16:26

Branch CR30876_1 has been deleted by inv.

SHA-1: 7603d5a22f02e74535f2d4f6028e7a26a009278b
(0086950)
git (administrator)
2019-09-07 16:27

Branch CR30876 has been deleted by inv.

SHA-1: cccfbb3a2b008f143c9ab5eb1179db0cd5a1d294

- Related Changesets
occt: master a90dd15e
Timestamp: 2019-08-07 12:49:59
Author: drazmyslovich
Committer: bugmaster
Details ] Diff ]
0030876: Data Exchange - StepToTopoDS edge translation should be resistant to malformed parameter values

Corrected misprint in the method CheckPCurves of the class StepToTopoDS_TranslateEdgeLoop for case when higher bound of the range of pcurve on the edge greater then last parameter of the pcurve.
Added check on the not periodic flag for pcurve when range pcurve on the edge is adjusted to parameters pcurve.
mod - src/StepToTopoDS/StepToTopoDS_TranslateEdgeLoop.cxx Diff ] File ]

- Issue History
Date Modified Username Field Change
2019-08-07 15:51 drazmyslovich New Issue
2019-08-07 15:51 drazmyslovich Assigned To => gka
2019-08-07 15:52 git Note Added: 0086070
2019-08-07 15:53 drazmyslovich Note Added: 0086071
2019-08-07 15:53 drazmyslovich Status new => resolved
2019-08-07 15:53 drazmyslovich Steps to Reproduce Updated View Revisions
2019-09-04 18:32 kgv Summary StepToTopoDS edge translation should be resistant to malformed parameter values => Data Exchange - StepToTopoDS edge translation should be resistant to malformed parameter values
2019-09-05 14:06 git Note Added: 0086793
2019-09-05 14:54 gka Note Added: 0086796
2019-09-06 13:33 gka Note Added: 0086871
2019-09-06 13:34 gka Note Added: 0086872
2019-09-06 13:34 gka Assigned To gka => bugmaster
2019-09-06 13:34 gka Status resolved => reviewed
2019-09-06 18:32 bugmaster Note Added: 0086910
2019-09-06 18:32 bugmaster Status reviewed => assigned
2019-09-06 18:35 bugmaster Assigned To bugmaster => gka
2019-09-06 18:35 bugmaster Status assigned => resolved
2019-09-06 18:35 bugmaster Assigned To gka => bugmaster
2019-09-06 18:35 bugmaster Status resolved => reviewed
2019-09-06 18:35 bugmaster Status reviewed => tested
2019-09-07 11:38 bugmaster Changeset attached => occt master a90dd15e
2019-09-07 11:38 bugmaster Status tested => verified
2019-09-07 11:38 bugmaster Resolution open => fixed
2019-09-07 16:26 git Note Added: 0086929
2019-09-07 16:27 git Note Added: 0086950


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker