DiscussionsIssue archiveOCCT:Modeling Algorithms

Archived issue #0027531

Modeling Algorithms - Make the algorithm Approx_SameParameter more clear and robust

Open CASCADEOCCT:Modeling Algorithmsclosed136 public notes

Search issues

Description

1) Same parameter algorithm logic can be improved using projection algorithm in case when interpolation is failed.

2) Interpolation part depends on magic numbers like "250.0 or 1000", incorrect usage of infinite loop protection, different names for the same array in memory (to use in different API), two types of poles increasing in this loop.

It is proposed to improve this algorithm to simplify it and make more predictable.

This fix will decrease tolerance of result in #0027015.

Steps to reproduce

bugs modalg_6 bug27015.

Public activity

136 archived notes

Participants are labeled by their role within this record.

01Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Wed Jun 1 09:17:40 2016 +0300

    Refactoring of the last part of the Build method.

Author: Author
Date: Wed Jun 1 08:32:24 2016 +0300

    Code simplification.

02Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Wed Jun 1 10:57:05 2016 +0300

    Internal data structure is added. Partial migration on it.

03Commenter 2
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
04Commenter 2
Branch [archived branch] has been created by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Thu Jun 2 15:13:46 2016 +0300

    logic simplification.

Author: Author
Date: Thu Jun 2 14:42:21 2016 +0300

    Method to increase number of poles is added.

Author: Author
Date: Thu Jun 2 12:07:35 2016 +0300

    Code simplification.

Author: Author
Date: Thu Jun 2 11:58:35 2016 +0300

    Minor correction.

Author: Author
Date: Thu Jun 2 11:18:22 2016 +0300

    Method to interpolate data is added.

Author: Author
Date: Thu Jun 2 10:36:39 2016 +0300

    Unused formal parameter is deleted.

Author: Author
Date: Thu Jun 2 10:10:49 2016 +0300

    "Swap" method is added. Code simplification.

Author: Author
Date: Wed Jun 1 10:57:05 2016 +0300

    Internal data structure is added. Partial migration on it.

Author: Author
Date: Wed Jun 1 09:17:40 2016 +0300

    Refactoring of the last part of the Build method.

Author: Author
Date: Wed Jun 1 08:32:24 2016 +0300

    Code simplification.

Author: Author
Date: Tue May 31 14:46:34 2016 +0300

    Commentary about general algorithm workflow is added.

Author: Author
Date: Tue May 31 14:36:15 2016 +0300

    Check same parameter state is extracted into special method.

Author: Author
Date: Tue May 31 11:36:46 2016 +0300

    Tuning number of samples in case of C0 Continuity is extracted into special method.

Author: Author
Date: Tue May 31 10:52:07 2016 +0300

    0027531: Make the algorithm Approx_SameParameter more clear and robust
    
    Tangent computation is extracted into special method.
05Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Fri Jun 10 10:19:56 2016 +0300

    Test cases correction.

Author: Author
Date: Fri Jun 10 08:30:21 2016 +0300

    Function cap correction.
    Refactoring.

06Commenter 2
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
07Commenter 2
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
08Commenter 2
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
09Commenter 2
Branch [archived branch] has been created by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Tue Jun 28 08:24:22 2016 +0300

    Test cases correction.

Author: Author
Date: Mon Jun 27 14:48:25 2016 +0300

    Minor corrections.

Author: Author
Date: Mon Jun 27 14:45:49 2016 +0300

    Upgrade guide is updated.
10Commenter 2
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
11Commenter 2
Branch [archived branch] has been deleted by Author.

[revision removed]
12Commenter 12
Projection algorithm is not added to the same parameter since:
1) It contradicts with same parameter nature which is "reparameterization" but not "projection".
2) Same parameter is not good place for projection adding by flag - necessary to add support of such flag in BRepLib.
3) Big amount of regressions in prototype with projection.

Regressions:
1) Special issues are added for cases "blend simple H4" and "bugs modalg_6 bug27531".
2) TODO statements are changed for cases "offset with_intersect_80 M1" and "offset with_intersect_80 M1".
3) Other cases are updated to the new behaviour.


Dear msv,
Please check current state of CR27531_1 (CR27531_2) branch in OCCT repository and CR27531_2 branch in products repository. The branch CR27531_2 contains the same fix as CR27531_1 squashed into singe commit.


Dear Commenter 1,
Please use branches CR27531_2 from OCCT and products repositories for the testing.
13Commenter 13
src\Approx\Approx_SameParameter.hxx

- Make the constant field myDeltaMin static. For that initialize it separately in cxx file.
- 105: "Fast" => "First"
14Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Wed Jun 29 07:31:09 2016 +0300

    Remarks correction.

15Commenter 2
Branch [archived branch] has been updated forcibly by Author.

[revision removed]
16Commenter 16
Dear msv,
Please check current state of CR27531_1 (CR27531_2) branch in OCCT repository and CR27531_2 branch in products repository. The branch CR27531_2 contains the same fix as CR27531_1 squashed into singe commit.


Dear Commenter 1,
Please use branches CR27531_2 from OCCT and products repositories for the testing.
17Commenter 17
Reviewed.
Please test but postpone integration till resolution of regressions #0027650 and #0027651.
18Commenter 18
Dear Commenter 1,
Branch CR27531_2 from occt git-repository (and CR27531_2 from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
[revision removed]
[revision removed]

Number of compiler warnings:

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

products component :
Linux: 64 (64 on master)
Windows: 0 (0 on master)
MacOS : 1137

There is new additional compilation warning on Linux platform:
http://jenkins-test-07.nnov.opencascade.com:8080/user/mnt/my-views/view/A_mnt_warnings/portlet/dashboard_portlet_13912/job/CR27531_2-CR27531_2-OCCT-Debian70-64-opt-compile/1/warnings17Result/
Approx_SameParameter.cxx:634, GNU C Compiler 4 (gcc), Priority: Normal
variable 'aDistMin' set but not used [-Wunused-but-set-variable]

Regressions/Differences/Improvements:
http://occt-tests/CR27531_2-CR27531_2-OCCT/Debian70-64/blend/simple/H4.html
http://occt-tests/CR27531_2-CR27531_2-OCCT/Windows-64-VC10/blend/simple/H4.html
blend simple H4: FAILED

Testing cases:
http://occt-tests/CR27531_2-CR27531_2-OCCT/Debian70-64/bugs/modalg_6/bug27531.html
http://occt-tests/CR27531_2-CR27531_2-OCCT/Windows-64-VC10/bugs/modalg_6/bug27531.html
bugs modalg_6 bug27531: BAD (known problem)

Testing on Linux:
occt component :
Total MEMORY difference: 88520652 / 88674703 [-0.17%]
Total CPU difference: 19388.319999999887 / 19557.569999999916 [-0.87%]
products component :
Total MEMORY difference: 27358448 / 27381089 [-0.08%]
Total CPU difference: 5175.69999999999 / 5181.219999999986 [-0.11%]

Testing on Windows:
occt component :
Total MEMORY difference: 55890424 / 55887389 [+0.01%]
Total CPU difference: 18581.715912798776 / 17840.04035849868 [+4.16%]
products component :
Total MEMORY difference: 18614941 / 18577733 [+0.20%]
Total CPU difference: 5102.168705999953 / 4930.286804199938 [+3.49%]

There are following differences in images found by testdiff.
http://occt-tests/CR27531_2-CR27531_2-OCCT/Debian70-64/diff-Debian70-64.html
http://occt-tests/CR27531_2-CR27531_2-OCCT/Windows-64-VC10/diff-Windows-64-VC10.html
IMAGE sewing tol_100 D3: D3.png differs
IMAGE sewing tol_100 J2: J2.png differs
IMAGE sewing tol_100 I6: I6.png differs
IMAGE sewing tol_100 J6: J6.png differs
IMAGE sewing tol_100 I9: I9.png differs
IMAGE sewing tol_100 C5: C5.png differs
IMAGE sewing tol_100 Y7: Y7.png differs
IMAGE sewing tol_100 I5: I5.png differs
IMAGE sewing tol_100 J1: J1.png differs
IMAGE bugs modalg_6 bug26288: bug26288.png differs
19Commenter 19
Dear aml,
Branch [archived branch] has been rejected due to:
- additional warnings
- regressions/differences/improvements
- differences in images
20Commenter 2
Branch [archived branch] has been updated by Author.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Thu Jun 30 07:02:52 2016 +0300

    Minor correction.

21Commenter 21
Dear msv,
Please check current state of the CR27531_2 branch from OCCT and Products repositories.

Dear mkv,
blend simple H4 - I've added missing TODO statement. Now this test should be in the "BAD" state.
Differences in images are OK.

22Commenter 22
Reviewed.
Please check only warnings and failed case blend simple H4.
Reminder: postpone integration till resolution of regressions 0027650 and 0027651.
23Commenter 23
Dear Commenter 1,
Branch CR27531_2 from occt git-repository (and CR27531_2 from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
[revision removed]
[revision removed]

Number of compiler warnings:

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

products component :
Linux: 64 (64 on master)
Windows: 0 (0 on master)
MacOS : 1137

There is new additional compilation warning on Linux platform:
http://jenkins-test-07.nnov.opencascade.com:8080/user/mnt/my-views/view/A_mnt_warnings/portlet/dashboard_portlet_13912/job/CR27531_2-CR27531_2-OCCT-Debian70-64-opt-compile/1/warnings17Result/
Approx_SameParameter.cxx:665, GNU C Compiler 4 (gcc), Priority: Normal
unused variable 'ap1' [-Wunused-variable]

There is new additional compilation warning on Windows platform:
http://jenkins-test-07.nnov.opencascade.com:8080/user/mnt/my-views/view/A_mnt_warnings/portlet/dashboard_portlet_13912/job/CR27531_2-CR27531_2-OCCT-Windows-64-VC10-opt-compile/1/warnings34Result/
Approx_SameParameter.cxx:665, MSBuild, Priority: Normal
'ap1' : local variable is initialized but not referenced

There is new additional compilation warning on MacOS platform:
http://jenkins-test-07.nnov.opencascade.com:8080/user/mnt/my-views/view/A_mnt_warnings/portlet/dashboard_portlet_13912/job/CR27531_2-CR27531_2-OCCT-MacOS-opt-compile/1/warnings7Result/
Approx_SameParameter.cxx:665, Clang (LLVM based), Priority: Normal
unused variable 'ap1'

Regressions/Differences/Improvements:
No regressions/differences
24Commenter 24
Dear aml,
Branch [archived branch] has been rejected due to:
- additional warnings
25Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Tue May 31 10:52:07 2016 +0300

    0027531_0027650_0027651: Make the algorithm Approx_SameParameter more clear and robust
    
    Commit for #0027531
    
    Class Approx_SameParameter refactoring. Logic is changed in many places to unify usage, simplify maintenance.
    Method Curve2d() is changed to return Geom2d_Curve instead of Geom2d_BSplineCurve. Corresponding message is added to the upgrade guide.
    .lxx file is merged into .hxx.
    
    Commit for #0027650: Fix for regression blend simple H4
    
    Comparing number of sample points after CheckSameParameter(...) is added to define cases with projection fails.
    
    Commit for #0027651
    
    Preliminary analysis of "sameparameter" error is added for edge. If error is large, "bad" pcurve is replaced by projected curve.
    
    Test cases are updated.
26Commenter 26
Branch CR27831_27650_27651 is ready for review and tests.
This branch fixes #0027650 and #0027651 too
27Commenter 27
Change in tests\offset\with_intersect_80\M6 apparently hides regression (crash)
28Commenter 28
src/Approx/Approx_SameParameter.cxx
- The variable aDistMin at line 647 is not used.

src/Approx/Approx_SameParameter.hxx
- Incorrect comment modification at line 105.

src/BRepBuilderAPI/BRepBuilderAPI_Sewing.cxx
- There is a lack comments describing the added functionality.
- It is better to create special enum with well-named items for return value of CheckBndStatus() function.

src/Geom2dAdaptor/Geom2dAdaptor.cxx
- At 95: use dynamic_cast instead of direct static casting.

dox/dev_guides/upgrade/upgrade.md
- The change must be moved to the section regarding version 7.2.

tests\offset\with_intersect_80\M6
- Please explain why do you accept exception in this test.
29Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
30Commenter 30
Branch CR27531_27650_27651 is updated according to remark and ready for review and test
31Commenter 31
- In Geom2dAdaptor.cxx, extra const_cast:
      Adaptor2d_Curve2d* pHC = const_cast<Adaptor2d_Curve2d*>(&HC);
      const Geom2dAdaptor_Curve* pGAC = dynamic_cast<Geom2dAdaptor_Curve*>(pHC);
simpler code:
      const Geom2dAdaptor_Curve* pGAC = dynamic_cast<const Geom2dAdaptor_Curve*>(&HC);

The changes in BRepLib.cxx and BRepOffset_Inter2d.cxx need discussion.
32Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
33Commenter 33
Branch CR27531_27650_27651 is updated and ready for review
34Commenter 34
Reviewed.
35Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
36Commenter 36
Dear Commenter 1,
Branch CR27531_27650_27651 was rebased on current master of occt git-repository.
[revision removed]
Branch CR27531_2 was rebased on current master of products git-repository.
[revision removed]
37Commenter 37
Dear Commenter 1,
Branch CR27531_27650_27651 from occt git-repository (and CR27531_2 from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
[revision removed]
[revision removed]

Number of compiler warnings:

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

products component :
Linux: 63 (63 on master)
Windows: 0 (0 on master)
MacOS : 1133

Regressions/Differences/Improvements:
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10/gdt/presentation/A5.html
gdt presentation A5: IMPROVEMENT

http://occt-tests/CR27531_0_1-CR27531_2-Products/Debian70-64/summary.html
http://occt-tests/CR27531_0_1-CR27531_2-Products/Windows-64-VC10/summary.html
Failed:
  sat read B9
  sat read_parallel_1 B9

Testing cases:
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10/bugs/modalg_6/bug27531.html
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Debian70-64/bugs/modalg_6/bug27531.html
bugs modalg_6 bug27531: OK

Testing on Linux:
occt component :
Total MEMORY difference: 91982786 / 91845276 [+0.15%]
Total CPU difference: 21834.8000000002 / 21684.49000000021 [+0.69%]
products component :
Total MEMORY difference: 29971063 / 29898526 [+0.24%]
Total CPU difference: 5312.379999999974 / 5287.509999999979 [+0.47%]

Testing on Windows:
occt component :
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10-cpu/diff-Windows-64-VC10-cpu.html
CPU bugs modalg_2 bug22770_15: 23.712152 / 4.3992282 [+439.01%]
CPU bugs modalg_2 bug22770_28: 8.3772537 / 5.1948333 [+61.26%]
CPU bugs modalg_2 bug22770_8: 12.2304784 / 5.3196341 [+129.91%]
CPU bugs modalg_2 bug22770_30: 8.3928538 / 5.1948333 [+61.56%]
CPU bugs modalg_2 bug22770_11: 12.1524779 / 5.2416336 [+131.85%]
CPU bugs modalg_2 bug22770_9: 11.8092757 / 5.3196341 [+121.99%]
CPU bugs modalg_2 bug22770_13: 23.556151 / 4.2276271 [+457.20%]
CPU bugs modalg_2 bug22770_12: 16.9729088 / 3.9312252 [+331.75%]
CPU bugs modalg_2 bug22770_24: 8.5176546 / 5.2728338 [+61.54%]
CPU bugs modalg_2 bug22770_27: 8.3148533 / 5.0388323 [+65.02%]
CPU bugs modalg_2 bug22770_26: 8.5020545 / 5.4756351 [+55.27%]
CPU bugs modalg_2 bug453_2: 1.5756101 / 0.8580055 [+83.64%]
CPU bugs modalg_2 bug22770_25: 8.5176546 / 5.1792332 [+64.46%]
CPU bugs modalg_2 bug22770_23: 8.3928538 / 5.1636331 [+62.54%]
CPU bugs modalg_2 bug22770_10: 10.4208668 / 3.8688248 [+169.35%]
CPU bugs modalg_2: 171.44509900000003 / 69.68564669999999 [+146.03%]

Total MEMORY difference: 56931207 / 56927644 [+0.01%]
Total CPU difference: 20356.773291298647 / 19742.815755698448 [+3.11%]

products component :
Total MEMORY difference: 20843930 / 20807990 [+0.17%]
Total CPU difference: 5301.085581099964 / 5163.945101999975 [+2.66%]

There are following differences in images found by testdiff.
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Debian70-64/diff-Debian70-64.html
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10/diff-Windows-64-VC10-image.html
IMAGE chamfer dist_angle_sequence B3: B3.png differs
IMAGE sewing tol_100 J3: J3.png differs
IMAGE sewing tol_100 D3: D3.png differs
IMAGE sewing tol_100 J2: J2.png differs
IMAGE sewing tol_100 I6: I6.png differs
IMAGE sewing tol_100 I9: I9.png differs
IMAGE sewing tol_100 C5: C5.png differs
IMAGE sewing tol_100 K1: K1.png differs
IMAGE sewing tol_100 Y7: Y7.png differs
IMAGE sewing tol_100 I5: I5.png differs
IMAGE sewing tol_100 J4: J4.png differs
IMAGE sewing tol_100 J1: J1.png differs
IMAGE bugs modalg_6 bug26288: bug26288.png differs
38Commenter 38
Dear ifv,
Branch [archived branch] has been rejected due to:
- regressions/differences/improvements
- CPU problems
- differences in images
39Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
40Commenter 40
Branch CR27531_27650_27651 is updated to fix
sat read B9 and performance problems
Differences in images correspond current state of Approx_SameParameter, BRepOffset and BRepBuilderAPI_Sewing algorithms.
41Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
42Commenter 42
Reviewed with a minor correction (added comment explaining why try/catch has been added).
43Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
44Commenter 44
Rebased on current master.
45Commenter 45
Dear Commenter 1,
Branch CR27531_2 was rebased on current master of products git-repository.
[revision removed]
46Commenter 46
Dear Commenter 1,
Branch CR27531_27650_27651 from occt git-repository (and CR27531_2 from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
[revision removed]
[revision removed]

Number of compiler warnings:

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

products component :
Linux: 63 (63 on master)
Windows: 0 (0 on master)
MacOS : 1148

Regressions/Differences/Improvements:
No regressions/differences

Testing cases:
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10/bugs/modalg_6/bug27531.html
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Debian70-64/bugs/modalg_6/bug27531.html
bugs modalg_6 bug27531: OK

Testing on Linux:
occt component :
Total MEMORY difference: 91938737 / 92886692 [-1.02%]
Total CPU difference: 21674.770000000215 / 21638.59000000027 [+0.17%]
products component :
Total MEMORY difference: 30089418 / 30067682 [+0.07%]
Total CPU difference: 5307.679999999967 / 5288.109999999972 [+0.37%]

Testing on Windows:
occt component :
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10-cpu/diff-Windows-64-VC10-cpu.html
CPU bugs modalg_2 bug22770_28: 8.4708543 / 5.3196341 [+59.24%]
CPU bugs modalg_2 bug22770_8: 12.1368778 / 5.2884339 [+129.50%]
CPU bugs modalg_2 bug22770_30: 8.3772537 / 5.460035 [+53.43%]
CPU bugs modalg_2 bug22770_11: 12.1056776 / 5.3352342 [+126.90%]
CPU bugs modalg_2 bug22770_9: 11.7780755 / 5.2728338 [+123.37%]
CPU bugs modalg_2 bug22770_24: 8.580055 / 5.2104334 [+64.67%]
CPU bugs modalg_2 bug22770_27: 8.1900525 / 5.148033 [+59.09%]
CPU bugs modalg_2 bug22770_26: 8.5956551 / 5.3196341 [+61.58%]
CPU bugs modalg_2 bug453_2: 1.5756101 / 0.8892057 [+77.19%]
CPU bugs modalg_2 bug22770_25: 8.5488548 / 5.2260335 [+63.58%]
CPU bugs modalg_2 bug22770_23: 8.3928538 / 5.2884339 [+58.70%]
CPU bugs modalg_2 bug22770_10: 10.3896666 / 3.7284239 [+178.66%]
CPU bugs modalg_2: 107.14148680000001 / 57.486368500000005 [+86.38%]

Total MEMORY difference: 58523308 / 58518712 [+0.01%]
Total CPU difference: 19972.776829798542 / 19818.897443398673 [+0.78%]
products component :
Total MEMORY difference: 20897261 / 20861060 [+0.17%]
Total CPU difference: 5328.432556399985 / 5204.302560699983 [+2.39%]

There are following differences in images found by testdiff.
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Debian70-64/diff-Debian70-64.html
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10/diff-Windows-64-VC10-image.html
IMAGE chamfer dist_angle_sequence B3: B3.png differs
IMAGE sewing tol_0_01 F8: F8.png differs
IMAGE sewing tol_100 J3: J3.png differs
IMAGE sewing tol_100 D3: D3.png differs
IMAGE sewing tol_100 J2: J2.png differs
IMAGE sewing tol_100 I6: I6.png differs
IMAGE sewing tol_100 J6: J6.png differs
IMAGE sewing tol_100 I9: I9.png differs
IMAGE sewing tol_100 C5: C5.png differs
IMAGE sewing tol_100 K1: K1.png differs
IMAGE sewing tol_100 Y7: Y7.png differs
IMAGE sewing tol_100 I5: I5.png differs
IMAGE sewing tol_100 J1: J1.png differs
IMAGE bugs modalg_6 bug26288: bug26288.png differs
47Commenter 47
Dear ifv,
Branch [archived branch] has been rejected due to:
- CPU problems

48Commenter 2
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Tue May 31 10:52:07 2016 +0300

    0027531_0027650_0027651: Make the algorithm Approx_SameParameter more clear and robust
    
    Commit for #0027531
    
    Class Approx_SameParameter refactoring. Logic is changed in many places to unify usage, simplify maintenance.
    Method Curve2d() is changed to return Geom2d_Curve instead of Geom2d_BSplineCurve. Corresponding message is added to the upgrade guide.
    .lxx file is merged into .hxx.
    
    Commit for #0027650: Fix for regression blend simple H4
    
    Comparing number of sample points after CheckSameParameter(...) is added to define cases with projection fails.
    
    Commit for #0027651
    
    Preliminary analysis of "sameparameter" error is added for edge. If error is large, "bad" pcurve is replaced by projected curve.
    
    Catching of exception in method BRep_Tool::Parameter is added in method BRepOffset_Inter2d::FuseVertices.
    Test cases are updated.

Author: apn
Date: Fri Dec 23 10:10:55 2016 +0300

    Warnings on vc14 were eliminated

Author: isk
Date: Thu Dec 22 12:53:46 2016 +0300

    0028244: Visualization - AIS_AngleDimension throws exception for 180 degree
    
    Small correction of test case for issue CR28244

Author: ika
Date: Tue Dec 20 13:25:02 2016 +0300

    0028250: Data Exchange - Wrong number of geometric tolerance modifiers.
    
    fix some copy paste mistakes,
    update test cases.

Author: Commenter 3
Date: Sun Dec 18 10:18:55 2016 +0300

    0028232: Visualization, StdPrs_ShadedShape - create WireFrame presentation for sole Vertex / Edge / Wire

Author: Commenter 3
Date: Thu Dec 22 12:48:16 2016 +0300

    0028180: Visualization, TKOpenGl - Performance of Shaded presentation dropped due to FFP disabled by default
    
    FFP state management (light sources, matrices, clipping planes) has been
    moved to OpenGl_ShaderManager for consistency with Programmable Pipeline.
    
    OpenGl_Context::BindProgram() does not re-bind already active Program.
    OpenGl_PrimitiveArray::Render() does not reset active Program at the end.
    
    OpenGl_Context::ApplyModelViewMatrix() now checks if matrix differs
    from already set one before modifying state in Shader Manager.
    This allows avoing redundant state changes, matrix uploads onto GPU
    and re-computation of inversed matrices.
    
    NCollection_Mat4 has been extended with equality check operators for proper comparison.
    
    OpenGl_ShaderManager - the tracking Material state has been added.
    Removed unreachable states OPENGL_NS_RESMAT, OPENGL_NS_TEXTURE and OPENGL_NS_WHITEBACK.
    
    Fixed resetting FFP material state after displaying GL_COLOR_ARRAY vertices;
    the Material state within Shader Manager is now
    invalidated within OpenGl_VertexBuffer::unbindFixedColor().
    
    OpenGl_Workspace::ApplyAspectFace() - fixed invalidating Material State
    when only Highlighting style is changing.

Author: isk
Date: Fri Dec 9 13:50:40 2016 +0300

    0028205: Visualization - add functionality for dumping results of detection algorithms into image
    
    StdSelect_ViewerSelector3d::ToPixMap() - added new method for dumping
    detection results into an image.

Author: dbp
Date: Mon Dec 19 14:00:09 2016 +0300

    0028241: Visualization, Path tracing - shader compilation error on Radeon 290

Author: msv
Date: Thu Dec 22 12:43:48 2016 +0300

    0028221: General Fuse operation error
    
    The method BOPTools_AlgoTools2D::AttachExistingPCurve has been corrected so that
    to call BRepLib::SameParameter not on the target edge with the whole set of pcurves,
    but rather on a temporary edge with 3D curve and copied pcurve only.
    After that the updated pcurve is transferred to the target edge.
    
    Small correction of test case for issue CR28221

Author: abv
Date: Sun Dec 18 09:21:54 2016 +0300

    0028240: Avoid redundant search for span index in evaluation of BSpline cache

Author: ski
Date: Thu Dec 22 12:40:55 2016 +0300

    0028204: TopoTools_ShapeSet::Dump() does not show flag Locked
    
    Corrected command dump to show flag Locked for shapes in DRAW.
    Test case for issue CR28204
    Updated test case.

Author: Commenter 3
Date: Thu Dec 22 12:39:13 2016 +0300

    0028004: Visualization, AIS_ColorScale - allow defining labels list not equal to intervals list
    
    Cosmetics, code clean up.
    
    AIS_ColorScale now draw labels using Graphic3d_VTA_CENTER
    vertical alignment flag, instead of incorrect own alignment logic.
    The color bar now adds margin on the top simmetrical to the bottom.
    
    AIS_ColorScale::SetSmoothTransition() - added new property
    for displaying colorscale with smooth transition between color intervals.
    
    AIS_ColorScale::SetHueRange() - added new property defining the hue angles
    corresponding to minimal and maximum values on the color scale.
    
    AIS_ColorScale::SetLabels() now allows setting the sequence of free labels,
    which number does not match the number of intervals.
    In this case the labels will be displayed at positions of virtual
    intervals corresponding to the number of labels.

Author: msv
Date: Wed Dec 14 10:09:38 2016 +0300

    0028183: Modeling - BRepExtrema_DistShapeShape does not find all solutions
    
    Disable SetSingleSolutionFlag when calling algorithm of curve-curve Extrema.
    Now DistShapeShape will find all solutions, even if they are located on the same pair of edges.
    The fix brings the speed down for the cases of coinciding curves.

Author: msv
Date: Fri Dec 16 17:13:07 2016 +0300

    0028233: lvarpop is needed for correct work of lmatch defined in StandardCommands.tcl
    
    The proc lvarpop has been implemented.

49Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
50Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
51Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
52Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
53Commenter 53
Branch CR27531_27650_27651 is updated
54Commenter 54
src\RWStepBasic\RWStepBasic_RWPerson.cxx
- Do not create arrays if nb of items is zero. Instead set corresponding flag to false.
55Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
56Commenter 56
Branch is updated according to remarks
57Commenter 57
src\RWStepBasic\RWStepBasic_RWPerson.cxx
It's better to simplify the code, initializing the Boolean flag with 'false', and then remove 'else' blocks.
58Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
59Commenter 59
Branch is updated
60Commenter 60
Reviewed.
61Commenter 61
Dear ify,
could you please rebase branch CR27531_27650_27651 on current master.
62Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
63Commenter 63
Branch is rebased
64Commenter 64
Dear Commenter 1,
Branch CR27531_2 was rebased on current master of products git-repository.
[revision removed]
65Commenter 65
Dear Commenter 1,
Branch CR27531_27650_27651 from occt git-repository (and CR27531_2 from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
[revision removed]

Number of compiler warnings:

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

products component :
Linux: 63 (63 on master)
Windows: 0 (0 on master)
MacOS : 1138

Regressions/Differences/Improvements:
No regressions/differences

Testing cases:
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Debian70-64/bugs/modalg_6/bug27531.html
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10/bugs/modalg_6/bug27531.html
bugs modalg_6 bug27531: OK

Testing on Linux:
occt component :
Total MEMORY difference: 93914951 / 92862791 [+1.13%]
Total CPU difference: 21339.55000000015 / 21498.7600000003 [-0.74%]
products component :
Total MEMORY difference: 30359783 / 30395462 [-0.12%]
Total CPU difference: 5339.619999999964 / 5312.789999999971 [+0.51%]

Testing on Windows:
occt component :
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10-cpu/diff-Windows-64-VC10-cpu.html
bugs modalg_2 bug453_2: 1.5288098 / 0.8580055 [+78.18%]

Total MEMORY difference: 58654070 / 58649007 [+0.01%]
Total CPU difference: 19259.867859898593 / 19749.742200098677 [-2.48%]
products component :
Total MEMORY difference: 21154383 / 21118126 [+0.17%]
Total CPU difference: 5185.800842099972 / 5256.094892699988 [-1.34%]

There are following differences in images found by testdiff.
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Debian70-64/diff-Debian70-64.html
http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10/diff-Windows-64-VC10-image.html
IMAGE chamfer dist_angle_sequence B3: B3.png differs
IMAGE sewing tol_0_01 F8: F8.png differs
IMAGE sewing tol_100 J3: J3.png differs
IMAGE sewing tol_100 D3: D3.png differs
IMAGE sewing tol_100 J2: J2.png differs
IMAGE sewing tol_100 I6: I6.png differs
IMAGE sewing tol_100 J6: J6.png differs
IMAGE sewing tol_100 I9: I9.png differs
IMAGE sewing tol_100 C5: C5.png differs
IMAGE sewing tol_100 K1: K1.png differs
IMAGE sewing tol_100 J5: J5.png differs
IMAGE sewing tol_100 Y7: Y7.png differs
IMAGE sewing tol_100 I5: I5.png differs
IMAGE sewing tol_100 J4: J4.png differs
IMAGE sewing tol_100 J1: J1.png differs
IMAGE bugs modalg_6 bug26288: bug26288.png differs
66Commenter 66
Dear ifv,
Branch [archived branch] has been rejected due to:
- CPU problems
67Commenter 67
Dear Commenter 1, I cannot reproduce such large increasing of performance, please retest bugs modalg_6 bug27531 or check reference data for this test.
68Commenter 68
Dear ifv,
Branch [archived branch] has been rejected due to:
- CPU problems for test case bugs/modalg_2/bug453_2 :


http://occt-tests/CR27531_0_1-CR27531_2-OCCT/Windows-64-VC10-cpu/diff-Windows-64-VC10-cpu.html [^]
CPU bugs modalg_2 bug453_2: 1.56001 / 0.8580055 [+81.82%]


69Commenter 69
Testing results are out of date and will be removed soon.
70Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
71Commenter 71
Branch [archived branch] has been updated.
72Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
73Commenter 73
Branches CR27531_27650_27651 from occt git-repository and CR27531_2 from products git-repository have been rebased on the current masters.
74Commenter 74
Dear Commenter 1,

Branch CR27531_27650_27651 from occt git-repository (and CR27531_2 from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
[revision removed]
[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: 64
   Windows: 0
   MacOS: 1209

Regressions/Differences:
Not detected

Testing cases:
bugs modalg_6 bug27531 - OK
http://occt-tests/CR27531_27650_27651-CR27531_2-OCCT/Debian70-64/bugs/modalg_6/bug27531.html
http://occt-tests/CR27531_27650_27651-CR27531_2-OCCT/Windows-64-VC10/bugs/modalg_6/bug27531.html

CPU-problematic test case has been detected:
CPU perf modalg bug453_2: 1.5444099 / 0.9204059 [+67.80%]
Relaunch result is following:
CPU perf modalg: 1.4820095 / 0.9204059 [+61.02%]

Testing on Linux:
occt component:
Total MEMORY difference: 92200485 / 92163990 [+0.04%]
Total CPU difference: 18971.790000000186 / 18926.030000000348 [+0.24%]
products component:
Total MEMORY difference: 37526722 / 37533520 [-0.02%]
Total CPU difference: 6439.530000000079 / 6405.870000000062 [+0.53%]

Testing on Windows:
occt component:
Total MEMORY difference: 58847598 / 58850236 [-0.00%]
Total CPU difference: 17441.14580149868 / 17597.770805498705 [-0.89%]
products component:
Total MEMORY difference: 27836610 / 27837358 [-0.00%]
Total CPU difference: 6499.750464800036 / 6587.376226500077 [-1.33%]

There are differences in images found by testdiff:
http://occt-tests/CR27531_27650_27651-CR27531_2-OCCT/Debian70-64/diff-Debian70-64-image.html
http://occt-tests/CR27531_27650_27651-CR27531_2-OCCT/Windows-64-VC10/diff-Windows-64-VC10-image.html
chamfer dist_angle_sequence B3
sewing tol_0_01 F8
sewing tol_100 J3
sewing tol_100 D3
sewing tol_100 J2
sewing tol_100 I6
sewing tol_100 J6
sewing tol_100 I9
sewing tol_100 C5
sewing tol_100 K1
sewing tol_100 J5
sewing tol_100 Y7
sewing tol_100 I5
sewing tol_100 J4
sewing tol_100 J1
bugs modalg_6 bug26288
75Commenter 75
Dear ifv,

Branches CR27531_27650_27651 from occt git-repository and CR27531_2 from product git-repository have been rejected due to:
- CPU problems
76Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Tue May 31 10:52:07 2016 +0300

    0027531_0027650_0027651: Make the algorithm Approx_SameParameter more clear and robust
    
    Commit for #0027531
    
    Class Approx_SameParameter refactoring. Logic is changed in many places to unify usage, simplify maintenance.
    Method Curve2d() is changed to return Geom2d_Curve instead of Geom2d_BSplineCurve. Corresponding message is added to the upgrade guide.
    .lxx file is merged into .hxx.
    
    Commit for #0027650: Fix for regression blend simple H4
    
    Comparing number of sample points after CheckSameParameter(...) is added to define cases with projection fails.
    
    Commit for #0027651
    
    Preliminary analysis of "sameparameter" error is added for edge. If error is large, "bad" pcurve is replaced by projected curve.
    
    Catching of exception in method BRep_Tool::Parameter is added in method BRepOffset_Inter2d::FuseVertices. This is protection against bad cases when an edge has very big tolerance, and not relevant vertices hit in its descendants.
    Protection against creation invalid arrays (upper boundary = 0) is added in classes IntPatch_ALineToWLine.cxx and
    RWStepBasic/RWStepBasic_RWPerson.cxx
    Test cases are updated.
77Commenter 2
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: ifv
Date: Tue Jul 11 16:56:31 2017 +0300

    Test perf

78Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
79Commenter 79
Branch CR27531_27650_27651 is updated to fix performance issue.
80Commenter 80
Dear Commenter 1,
Branch CR27531_27650_27651 from occt git-repository (and CR27531_2 from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
[revision removed]
[revision removed]

Number of compiler warnings:

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

products component :
Linux: 10 (10 on master)
Windows: 0 (0 on master)
MacOS : 26 (28 on master)

Regressions/Differences/Improvements:
http://occt-tests/CR27531_27650_27651-CR27531_2-OCCT/Debian70-64/summary.html
http://occt-tests/CR27531_27650_27651-CR27531_2-OCCT/Windows-64-VC10/summary.html
Improvements:
  perf moddata bug453_3
Failed:
  perf modalg bug453_2

Testing cases:
http://occt-tests/CR27531_27650_27651-CR27531_2-OCCT/Debian70-64/bugs/modalg_6/bug27531.html
http://occt-tests/CR27531_27650_27651-CR27531_2-OCCT/Windows-64-VC10/bugs/modalg_6/bug27531.html
bugs modalg_6 bug27531: OK

Testing on Linux:
occt component :
Total CPU difference: 19148.000000000113 / 19401.700000000146 [-1.31%]
Total MEMORY difference: 92512598 / 92490288 [+0.02%]
products component :
Total CPU difference: 6476.790000000054 / 6549.0400000000745 [-1.10%]
Total MEMORY difference: 38108729 / 38042393 [+0.17%]
Testing on Windows:
occt component :
Total CPU difference: 17984.90288709854 / 17787.76442339872 [+1.11%]
Total MEMORY difference: 59105190 / 59108328 [-0.01%]
products component :
Total CPU difference: 6792.907544000063 / 6684.861251400067 [+1.62%]
Total MEMORY difference: 28819701 / 28820451 [-0.00%]

There are following differences in images found by testdiff.
http://occt-tests/CR27531_27650_27651-CR27531_2-OCCT/Debian70-64/diff-Debian70-64-image.html
http://occt-tests/CR27531_27650_27651-CR27531_2-OCCT/Windows-64-VC10/diff-Windows-64-VC10-image.html
IMAGE chamfer dist_angle_sequence B3: B3.png differs
IMAGE perf moddata bug453_3: bug453_3.png differs
IMAGE sewing tol_0_01 F8: F8.png differs
IMAGE sewing tol_100 J3: J3.png differs
IMAGE sewing tol_100 D3: D3.png differs
IMAGE sewing tol_100 J2: J2.png differs
IMAGE sewing tol_100 I6: I6.png differs
IMAGE sewing tol_100 J6: J6.png differs
IMAGE sewing tol_100 I9: I9.png differs
IMAGE sewing tol_100 C5: C5.png differs
IMAGE sewing tol_100 K1: K1.png differs
IMAGE sewing tol_100 J5: J5.png differs
IMAGE sewing tol_100 Y7: Y7.png differs
IMAGE sewing tol_100 I5: I5.png differs
IMAGE sewing tol_100 J4: J4.png differs
IMAGE sewing tol_100 J1: J1.png differs
IMAGE bugs modalg_6 bug26288: bug26288.png differs
81Commenter 81
Dear ifv,
Branch [archived branch] has been rejected due to:
- regressions/differences/improvements
- differences in images
82Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
83Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
84Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
85Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
86Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
87Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
88Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
89Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
90Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
91Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
92Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
93Commenter 2
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: ifv
Date: Fri Mar 16 16:00:37 2018 +0300

    Commit to fix bugs modalg_7 bug28151

94Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
95Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
96Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
97Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
98Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]
99Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: Author
Date: Tue May 31 10:52:07 2016 +0300

    0027531_0027650_0027651: Make the algorithm Approx_SameParameter more clear and robust
    
    Commit for #0027531
    
    Class Approx_SameParameter refactoring. Logic is changed in many places to unify usage, simplify maintenance.
    Method Curve2d() is changed to return Geom2d_Curve instead of Geom2d_BSplineCurve. Corresponding message is added to the upgrade guide.
    .lxx file is merged into .hxx.
    
    Commit for #0027650: Fix for regression blend simple H4
    
    Comparing number of sample points after CheckSameParameter(...) is added to define cases with projection fails.
    
    Commit for #0027651
    
    Preliminary analysis of "sameparameter" error is added for edge. If error is large, "bad" pcurve is replaced by projected curve.
    
    Catching of exception in method BRep_Tool::Parameter is added in method BRepOffset_Inter2d::FuseVertices. This is protection against bad cases when an edge has very big tolerance, and not relevant vertices hit in its descendants.
    Protection against creation invalid arrays (upper boundary = 0) is added in class RWStepBasic/RWStepBasic_RWPerson.cxx
    Test cases are updated.
100Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
101Commenter 101
Branches CR27531_27650_27651 & CR27531-p
are ready for review
Test results: CR27531-CR27531-p-IFV
102Commenter 102
src/Approx/Approx_SameParameter.hxx
- Missing description of the methods IsDone(), TolReached()

src/Approx/Approx_SameParameter.cxx
- 620: incorrect comment
- 136-137: replace with vector = gp_Vec(a_point, APoint).
- 376: If there are problems with projection, why myDone = true? What is the meaning of Done(), there is no description in the header.
- 806: why exception is thrown instead of finishing the algorithm with myDone = false?
- 873,927: these printouts are not of interest during general work of OCCT.

src/BRepBuilderAPI/BRepBuilderAPI_Sewing.cxx
- The method ComputeTol is a copy-paste of the method ComputeTolReached from Approx_SameParameter.cxx, with a modification in the value of aMult constant. Is this modification intentional? I propose to create the new public static method in GeomLib (there the method EvalMaxDistanceAlongParameter has a similar meaning).
- 198,223: why interpolated parameter is multiplied by r=1/(nbp-1)?
- The patch for projecting curve looks like a work around for a very specific case. I propose to remove from the overal patch the fix for the bug 27651. GKA will fix it in scope of another bug. Which test cases will be affected if we remove this fix from the patch?

src/BRepOffset/BRepOffset_Inter2d.cxx
- It seems like somewhere in earlier code there is a bug, and here is a workaround. It is better to find and eliminate the cause of inconsistence of data structure.

src/ChFi3d/ChFi3d_Builder_CnCrn.cxx
- What for is this change? There is no explanation nor in comments nor in commit message.

tests/boolean/bopcut_complex/N2
- this change looks not needed
103Commenter 103
Also, please update upgrade guide on the subject of changing the method Approx_SameParameter::Curve2d().
104Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: ifv
Date: Fri May 31 16:36:44 2019 +0300

    0027531: Modeling Algorithms - Make the algorithm Approx_SameParameter more clear and robust
105Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
106Commenter 2
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: ifv
Date: Fri May 25 15:21:04 2018 +0300

    0027651: Add projection support in sewing pcurves handling
    
    1. BRepLib.hxx, BRepLib_1.cxx - implementation of method SetPCurve(...), which can build new pcurve by projection, if pcurve to be set is not satisfied by tolerance criterium.
    
    2. BRepBuilderAPI_Sewing.cxx - modification of method SameParameterEdge(...) using new method SetPCurve(...)
    
    3. BRepTest/BRepTest_BasicCommands.cxx - implementation Draw command SetPCurve
    
    4. Approx_ComputeCLine.gxx, BRepOffsetAPI_DraftAngle.cxx, ProjLib_ProjectedCurve.cxx - small modification to fix regression.
    
    5. Modification of tests according to current behavior of sewing algorithm.
107Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
108Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
109Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
110Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
111Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
112Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
113Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
114Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
115Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
116Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
117Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
118Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
119Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
120Commenter 120
Branches CR27531_3 for OCCT and CR27531_3 for PRODUCTS are ready for review
121Commenter 121
Test results are CR27531-master-IFV
122Commenter 122
src/Approx/Approx_SameParameter.hxx
- Please add description of the methods IsDone(), TolReached()

src/Approx/Approx_SameParameter.cxx
- 623: incorrect comment
- In the method Build not all return points set myDone.
- 809: why exception is thrown instead of finishing the algorithm with myDone = false?

src/Adaptor3d/Adaptor3d_TopolTool.cxx
- 936: myMaxPnts is not a field member, rename it.

Update upgrade guide on the subject of changing the type of returned value of the method Approx_SameParameter::Curve2d().

In commit message, please describe something more than simple phrase "base modifications".
123Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
124Commenter 124
OCCT branch CR531_3 and PRODUCTS branch CR531_3 are ready for review
125Commenter 3
-Upgrade from older OCCT versions  {#occt_dev_guides__upgrade}
+\feffUpgrade from older OCCT versions  {#occt_dev_guides__upgrade}

Please revert adding unexpected BOM from the patch.

+    Standard_Real *myPC2d; //! Parameters on 2d curve.
...
+    Standard_Real myC2dPL; // Curve 2d Parameter Last.

nit: this is a broken Doxygen syntax - it should be //!<, otherwise comments will be passed to the next item. As this is internal structure, this is probably not important.
126Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
127Commenter 127
Approx_SameParameter.hxx is modified
128Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
129Commenter 2
Branch [archived branch] has been updated by Commenter 3.

[revision removed]


Detailed log of new commits:

Author: Commenter 3
Date: Wed Mar 4 17:08:45 2020 +0300

    # remove BOM

130Commenter 1
Tested in framework of WEEK-10

Combination -
OCCT branch : [archived branch]
master SHA - [revision removed]
[revision removed]
Products branch : [archived branch] SHA - [revision removed]
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: 16663.16000000014 / 17013.19000000002 [-2.06%]
Products
Total CPU difference: 11265.660000000078 / 12597.180000000119 [-10.57%]
Windows-64-VC14:
OCCT
Total CPU difference: 18045.28125 / 18458.609375 [-2.24%]
Products
Total CPU difference: 13043.75 / 14566.953125 [-10.46%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention
131Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]
132Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]
133Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]
134Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]
135Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]
136Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]

Related records