View Issue Details

IDProjectCategoryView StatusLast Update
0027234CommunityOCCT:Modeling Algorithmspublic2016-12-09 16:37
ReporterabvAssigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Target Version7.1.0Fixed in Version7.1.0 
Summary0027234: Code duplication: Convert_CompBezierCurvesToBSplineCurve* in ShapeConstruct
DescriptionCode duplication of classes Convert_CompBezierCurvesToBSplineCurve and ShapeConstruct_CompBezierCurvesToBSplineCurve has been reported at http://dev.opencascade.org/index.php?q=node/1149

Actually classes from ShapeConstruct are not used in OCCT; classes from Convert have been evolving more since duplication. However, classes in ShapeConstruct contain one fix not present in Convert: protection against joining segments when degree is 1.

Naturally duplicate classes from ShapeConstruct shall be removed.
Steps To ReproduceN/A
TagsNo tags attached.
Test case numberNot needed

Activities

git

2016-03-08 19:41

administrator   ~0051436

Branch CR27234 has been created by abv.

SHA-1: cbdd59b334c2fdde34fe1fe77a48402bf67e2c18


Detailed log of new commits:

Author: abv
Date: Tue Mar 8 19:39:15 2016 +0300

    0027234: Code duplication: Convert_CompBezierCurvesToBSplineCurve* in ShapeConstruct
    
    Classes from ShapeConstruct duplicating the ones from Convert package are removed.
    Protection against joining segments when degree is 1 is introduced in Convert classes.
    Optimization previously made in Convert_CompBezierCurvesToBSplineCurve class (within #25256) is applied to 2d equivalent.

abv

2016-03-08 19:45

manager   ~0051437

Fix pushed to CR27234, please review

git

2016-03-08 20:21

administrator   ~0051438

Branch CR27234 has been updated forcibly by abv.

SHA-1: eb312d301a5db60589a97719eaf9a6d60dea1767

msv

2016-03-09 10:15

developer   ~0051451

src\Convert\Convert_CompBezierCurvesToBSplineCurve.cxx

- Please comment out the output to cout in the line 56.

git

2016-03-11 17:02

administrator   ~0051561

Branch CR27234 has been updated by abv.

SHA-1: cb596cfad41b1e8919e8857a6be3e9c52edefabc


Detailed log of new commits:

Author: abv
Date: Fri Mar 11 17:01:52 2016 +0300

    // cout disabled unless OCCT_DEBUG is defined

abv

2016-03-11 17:02

manager   ~0051562

Done, please review again

msv

2016-03-11 17:55

developer   ~0051565

Reviewed.

mkv

2016-03-15 13:18

tester   ~0051628

Dear BugMaster,
Branch CR27234 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
SHA-1: cb596cfad41b1e8919e8857a6be3e9c52edefabc

There are following compilation errors:
Windows:
http://jenkins-test-01.nnov.opencascade.com:8080/view/CR27234-master/job/CR27234-master_build_products_csharp_samples_windows/1/parsed_console/
occtypes.i(367) : Error: Unable to find 'ShapeConstruct_CompBezierCurves2dToBSplineCurve2d.hxx'
occtypes.i(367) : Error: Unable to find 'ShapeConstruct_CompBezierCurvesToBSplineCurve.hxx'

http://jenkins-test-01.nnov.opencascade.com:8080/view/CR27234-master/job/CR27234-master_build_products_java_samples_windows/1/parsed_console/
occtypes.i(310) : Error: Unable to find 'ShapeConstruct_CompBezierCurves2dToBSplineCurve2d.hxx'
occtypes.i(310) : Error: Unable to find 'ShapeConstruct_CompBezierCurvesToBSplineCurve.hxx'

Number of compiler warnings:

occt component :
Linux: 0 (0 on master)
Windows: 0 (0 on master)
MacOS : 0 (0 on master)

products component :
Linux: 41 (41 on master)
Windows: 0 (0 on master)

Regressions/Differences/Improvements:
No regressions/differences

Testing cases:
Not needed

Testing on Linux:
occt component :
Total MEMORY difference: 90004625 / 90985305 [-1.08%]
Total CPU difference: 18964.12999999975 / 19490.33000000016 [-2.70%]
products component :
Total MEMORY difference: 25997916 / 25908972 [+0.34%]
Total CPU difference: 5334.429999999985 / 5284.629999999986 [+0.94%]

Testing on Windows:
occt component :
Total MEMORY difference: 58139020 / 57324399 [+1.42%]
Total CPU difference: 17382.39582489897 / 18302.94212579877 [-5.03%]
products component :
Total MEMORY difference: 17971259 / 17515721 [+2.60%]
Total CPU difference: 5018.708170999953 / 5141.340557099954 [-2.39%]

There are no differences in images found by testdiff.

mkv

2016-03-15 13:18

tester   ~0051629

Dear abv,
Branch CR27234 has been rejected due to:
- compilation errors in Products Csharp Samples and Products Java Samples

abv

2016-03-15 13:43

manager   ~0051631

Fix for C# wrapper is pushed to CR27234 (in Products), please check wrapper

mkv

2016-03-16 14:38

tester   ~0051700

Dear BugMaster,
Branch CR27234 from occt git-repository (and CR27234 from products git-repository) was recompiled on Linux, MacOS and Windows platforms on Release mode.
SHA-1: dd59edcf080cecebf50781e07eebfcfa13024c5e

There are not compilation errors.

mkv

2016-03-16 14:38

tester   ~0051701

Dear BugMaster,
Branch CR27234 is TESTED.

git

2016-05-20 12:23

administrator   ~0054229

Branch CR27234 has been deleted by inv.

SHA-1: cb596cfad41b1e8919e8857a6be3e9c52edefabc

Related Changesets

occt: master 9a9a3edf

2016-03-08 16:39:15

abv


Committer: bugmaster Details Diff
0027234: Code duplication: Convert_CompBezierCurvesToBSplineCurve* in ShapeConstruct

Classes from ShapeConstruct duplicating the ones from Convert package are removed.
Protection against joining segments when degree is 1 is introduced in Convert classes.
Optimization previously made in Convert_CompBezierCurvesToBSplineCurve class (within #25256) is applied to 2d equivalent.

Data for automatic upgrade procedure are extended to replace removed classes by their duplicates from Convert.

// cout disabled unless OCCT_DEBUG is defined
Affected Issues
0027234
mod - adm/upgrade.dat Diff File
mod - src/Convert/Convert_CompBezierCurves2dToBSplineCurve2d.cxx Diff File
mod - src/Convert/Convert_CompBezierCurvesToBSplineCurve.cxx Diff File
mod - src/ShapeConstruct/FILES Diff File
rm - src/ShapeConstruct/ShapeConstruct_CompBezierCurves2dToBSplineCurve2d.cxx Diff File
rm - src/ShapeConstruct/ShapeConstruct_CompBezierCurves2dToBSplineCurve2d.hxx Diff File
rm - src/ShapeConstruct/ShapeConstruct_CompBezierCurvesToBSplineCurve.cxx Diff File
rm - src/ShapeConstruct/ShapeConstruct_CompBezierCurvesToBSplineCurve.hxx Diff File

Issue History

Date Modified Username Field Change
2016-03-08 19:34 abv New Issue
2016-03-08 19:34 abv Assigned To => msv
2016-03-08 19:41 git Note Added: 0051436
2016-03-08 19:45 abv Note Added: 0051437
2016-03-08 19:45 abv Status new => resolved
2016-03-08 20:21 git Note Added: 0051438
2016-03-09 10:15 msv Note Added: 0051451
2016-03-09 10:15 msv Assigned To msv => abv
2016-03-09 10:15 msv Status resolved => assigned
2016-03-11 17:02 git Note Added: 0051561
2016-03-11 17:02 abv Note Added: 0051562
2016-03-11 17:02 abv Assigned To abv => msv
2016-03-11 17:02 abv Status assigned => resolved
2016-03-11 17:55 msv Note Added: 0051565
2016-03-11 17:55 msv Assigned To msv => bugmaster
2016-03-11 17:55 msv Status resolved => reviewed
2016-03-11 17:56 mkv Assigned To bugmaster => mkv
2016-03-15 13:18 mkv Note Added: 0051628
2016-03-15 13:18 mkv Note Added: 0051629
2016-03-15 13:18 mkv Assigned To mkv => abv
2016-03-15 13:18 mkv Status reviewed => assigned
2016-03-15 13:18 mkv Test case number => Not needed
2016-03-15 13:43 abv Note Added: 0051631
2016-03-15 13:43 abv Status assigned => feedback
2016-03-15 17:29 abv Assigned To abv => mkv
2016-03-16 14:38 mkv Note Added: 0051700
2016-03-16 14:38 mkv Note Added: 0051701
2016-03-16 14:38 mkv Assigned To mkv => bugmaster
2016-03-16 14:38 mkv Status feedback => tested
2016-04-22 16:48 bugmaster Changeset attached => occt master 9a9a3edf
2016-04-22 16:48 bugmaster Status tested => verified
2016-04-22 16:48 bugmaster Resolution open => fixed
2016-05-20 12:23 git Note Added: 0054229
2016-12-09 16:31 aiv Status verified => closed
2016-12-09 16:37 aiv Fixed in Version => 7.1.0