[bos #39942] EDF 25230 - New problem with XYZtoUV

This commit is contained in:
jfa 2023-12-15 12:05:20 +00:00
parent 6395ebefdf
commit c52059c3f8

View File

@ -1042,9 +1042,8 @@ gp_Pnt GEOMUtils::ProjectPointOnFace(const gp_Pnt& thePoint,
BRepTools::UVBounds(aFace, U1, U2, V1, V2); BRepTools::UVBounds(aFace, U1, U2, V1, V2);
// projector // projector
Standard_Real tol = Max(theTol, 1.e-4);
GeomAPI_ProjectPointOnSurf proj; GeomAPI_ProjectPointOnSurf proj;
proj.Init(surface, U1, U2, V1, V2, tol); proj.Init(surface, U1, U2, V1, V2);
proj.Perform(thePoint); proj.Perform(thePoint);
if (!proj.IsDone()) if (!proj.IsDone())
StdFail_NotDone::Raise("Projection aborted : the algorithm failed"); StdFail_NotDone::Raise("Projection aborted : the algorithm failed");
@ -1055,6 +1054,7 @@ gp_Pnt GEOMUtils::ProjectPointOnFace(const gp_Pnt& thePoint,
gp_Pnt2d aProjPnt (theU, theV); gp_Pnt2d aProjPnt (theU, theV);
// classifier // classifier
Standard_Real tol = Max(theTol, 1.e-4);
BRepClass_FaceClassifier aClsf (aFace, aProjPnt, tol); BRepClass_FaceClassifier aClsf (aFace, aProjPnt, tol);
if (aClsf.State() != TopAbs_IN && aClsf.State() != TopAbs_ON) { if (aClsf.State() != TopAbs_IN && aClsf.State() != TopAbs_ON) {
bool isSol = false; bool isSol = false;