Archived issue #0030747
Modeling Algorithms - 2d Curves concatenator doesn't properly process closed contours.
Description
Method Add from Geom2dConvert_CompCurveToBSplineCurve checks if initial curve is closed and not the resulting one. This at least leads to an incorrect usage of the parameter After.
Steps to reproduce
Not possible
Public activity
23 archived notes
Participants are labeled by their role within this record.
Branch [archived branch] has been created by Author.
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon May 27 16:41:16 2019 +0300
0030747: Modeling Algorithms - 2d Curves concatenator doesn't properly process closed contours.
Correct processing of closed curves was added to method Geom2dConvert_CompCurveToBSplineCurve::Add
[revision removed]
Detailed log of new commits:
Author: Author
Date: Mon May 27 16:41:16 2019 +0300
0030747: Modeling Algorithms - 2d Curves concatenator doesn't properly process closed contours.
Correct processing of closed curves was added to method Geom2dConvert_CompCurveToBSplineCurve::Add
Mikhail, I've come across this issue while trying to concatenate two curves that form a full contour. Curve is being added to the end even though parameter After states otherwise. I've fixed it in a similar way it's being proceeded for 3d curves. Please check.
Please provide information about the source project and test case.
Please test it first.
Branch [archived branch] has been updated forcibly by Author.
[revision removed]
[revision removed]
Branch [archived branch] has been created by Participant.
[revision removed]
Detailed log of new commits:
Author: Commenter 3
Date: Thu Sep 23 14:08:40 2021 +0300
0030747: Modeling Algorithms - 2d Curves concatenator doesn't properly process closed contours.
This branch was created to create a test for this problem and fixes of anv.
-Added the test for this problem.
-Correct Geom2dConvert_CompCurveToBSplineCurve::Add in Geom2dConvert_CompCurveToBSplineCurve.hxx
[revision removed]
Detailed log of new commits:
Author: Commenter 3
Date: Thu Sep 23 14:08:40 2021 +0300
0030747: Modeling Algorithms - 2d Curves concatenator doesn't properly process closed contours.
This branch was created to create a test for this problem and fixes of anv.
-Added the test for this problem.
-Correct Geom2dConvert_CompCurveToBSplineCurve::Add in Geom2dConvert_CompCurveToBSplineCurve.hxx
Please avoid creation of merged loop in the repository. Use rebase instead of merging.
Branch [archived branch] has been created by Participant.
[revision removed]
Detailed log of new commits:
Author: Commenter 3
Date: Mon Oct 4 04:00:55 2021 +0300
0030747: Modeling Algorithms - 2d Curves concatenator doesn't properly process closed contours.
Corrected Geom2dConvert_CompCurveToBSplineCurve::Add in Geom2dConvert_CompCurveToBSplineCurve.cxx;
Added the test for this problem;
Corrected "gluing" curves in ProjLib_ProjectedCurve.cxx.
[revision removed]
Detailed log of new commits:
Author: Commenter 3
Date: Mon Oct 4 04:00:55 2021 +0300
0030747: Modeling Algorithms - 2d Curves concatenator doesn't properly process closed contours.
Corrected Geom2dConvert_CompCurveToBSplineCurve::Add in Geom2dConvert_CompCurveToBSplineCurve.cxx;
Added the test for this problem;
Corrected "gluing" curves in ProjLib_ProjectedCurve.cxx.
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
- aCompCurve.Add(aSegment, aTol);
+
+ if (FirstOrLast == 0)
+ {
+ aCompCurve.Add(aSegment, aTol, Standard_False);
+ }
+ else
+ {
+ aCompCurve.Add(aSegment, aTol,Standard_True);
+ }
Usually the code should look like
> aCompCurve.Add (aSegment, aTol, FirstOrLast != 0);
for better readability.
+ Standard_Real aSqTol = Tolerance * Tolerance;
const Standard_Real
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been updated forcibly by Participant.
[revision removed]
[revision removed]
Branch CR30747_2 seems to be valid
Branches for integrations
OCCT - CR30747_2
Products - not
Branches for integrations
OCCT - CR30747_2
Products - not
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: 17699.720000000394 / 17936.010000000137 [-1.32%]
Products
Total CPU difference: 11665.880000000112 / 11621.340000000107 [+0.38%]
Windows-64-VC14:
OCCT
Total CPU difference: 19656.34375 / 19690.109375 [-0.17%]
Products
Total CPU difference: 12872.390625 / 12807.375 [+0.51%]
Image differences :
No differences that require special attention
Memory differences :
No differences that require special attention
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: 17699.720000000394 / 17936.010000000137 [-1.32%]
Products
Total CPU difference: 11665.880000000112 / 11621.340000000107 [+0.38%]
Windows-64-VC14:
OCCT
Total CPU difference: 19656.34375 / 19690.109375 [-0.17%]
Products
Total CPU difference: 12872.390625 / 12807.375 [+0.51%]
Image differences :
No differences that require special attention
Memory differences :
No differences that require special attention
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]
Branch [archived branch] has been deleted by Participant.
[revision removed]
[revision removed]