From 762972e5663605eb177cc2334ac682e138077c26 Mon Sep 17 00:00:00 2001 From: jgv Date: Fri, 28 May 2021 18:23:06 +0300 Subject: [PATCH] 0031910: Modeling Algorithms - Wrong result of BOP Cut Modify the method BOPAlgo_PaveFiller::PerformEF: the maximum distance between new and old vertex is decreased. --- src/BOPAlgo/BOPAlgo_PaveFiller_5.cxx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/BOPAlgo/BOPAlgo_PaveFiller_5.cxx b/src/BOPAlgo/BOPAlgo_PaveFiller_5.cxx index aebd4882d4..802f1ff661 100644 --- a/src/BOPAlgo/BOPAlgo_PaveFiller_5.cxx +++ b/src/BOPAlgo/BOPAlgo_PaveFiller_5.cxx @@ -431,6 +431,7 @@ void BOPAlgo_PaveFiller::PerformEF() // Real intersection is present. // Update the existing vertex to cover the intersection point. + Standard_Boolean bIsInSphereOfOldVertex = Standard_False; for (j = 0; j < 2; ++j) { if (bIsOnPave[j]) @@ -444,14 +445,19 @@ void BOPAlgo_PaveFiller::PerformEF() { aMaxDist = Min(aMaxDist, 0.1); } + //jgv + aMaxDist = 1.e-5; + ///// if (aDistPP < aMaxDist) { UpdateVertex(nV[j], aDistPP); myVertsToAvoidExtension.Add(nV[j]); + bIsInSphereOfOldVertex = Standard_True; } } } - continue; + if (bIsInSphereOfOldVertex) + continue; } if (CheckFacePaves(aVnew, aMIFOn)) { -- 2.39.5