1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-09 13:22:24 +03:00

0026080: Wrong result obtained by General Fuse operator.

Changes:
class IntTools_FClass2d
- method:
 TopAbs_State IntTools_FClass2d::Perform
 (const gp_Pnt2d& _Puv,
 const Standard_Boolean RecadreOnPeriodic) const
 has been changed.
 The value of tolerance
For the value of tolerance for classification,
the minimum (among UResolution, VResolution) value is used.

Test case for issue CR26080
This commit is contained in:
pkv
2015-04-23 18:01:16 +03:00
committed by bugmaster
parent c87535af15
commit b85b0b0731
4 changed files with 46 additions and 2 deletions

View File

@@ -634,8 +634,12 @@ TopAbs_State IntTools_FClass2d::Perform
bUIn = (u >= Umin) && (u <= Umax);
bVIn = (v >= Vmin) && (v <= Vmax);
//
aFCTol = (bUIn==bVIn) ? Max(aURes, aVRes) :
(!bUIn ? aURes : aVRes);
if (bUIn==bVIn) {
aFCTol = Min(aURes, aVRes);
}
else {
aFCTol = (!bUIn) ? aURes : aVRes;
}
//
BRepClass_FaceClassifier aClassifier;
aClassifier.Perform(Face,Puv,aFCTol);