1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00

0027766: Incorrect section curves between attached cylinders

2d-tolerance has been bounded above (earlier it was too big for precise computation).

Creation of the test case for this issue.
Adjusting some test cases according to their new behavior.

Adjusting test case according to its new behavior.
This commit is contained in:
nbv
2016-08-12 22:08:50 +03:00
committed by bugmaster
parent 2cc873e2a2
commit ae54125247
4 changed files with 49 additions and 7 deletions

View File

@@ -177,8 +177,11 @@ void IntPatch_ImpImpIntersection::Perform(const Handle(Adaptor3d_HSurface)& S1,
aBox2.Add(gp_Pnt2d(aU2f, S2->FirstVParameter()));
aBox2.Add(gp_Pnt2d(aU2l, S2->LastVParameter()));
const Standard_Real a2DTol = Min( S1->UResolution(TolTang),
S2->UResolution(TolTang));
// Resolution is too big if the cylinder radius is
// too small. Therefore, we shall bounde its value above.
// Here, we use simple constant.
const Standard_Real a2DTol = Min(1.0e-4, Min( S1->UResolution(TolTang),
S2->UResolution(TolTang)));
Standard_Boolean isReversed = ((aU2l - aU2f) < (aU1l - aU1f));