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

0030876: Data Exchange - StepToTopoDS edge translation should be resistant to malformed parameter values

Corrected misprint in the method CheckPCurves of the class StepToTopoDS_TranslateEdgeLoop for case when higher bound of the range of pcurve on the edge greater then last parameter of the pcurve.
Added check on the not periodic flag for pcurve when range pcurve on the edge is adjusted to parameters pcurve.
This commit is contained in:
drazmyslovich 2019-08-07 15:49:59 +03:00 committed by bugmaster
parent f9c58d7c4e
commit a90dd15e6b

View File

@ -149,13 +149,17 @@ static void CheckPCurves (TopoDS_Wire& aWire, const TopoDS_Face& aFace,
continue;
}
//check parameters of range only for not periodic curves
if (!thePC->IsPeriodic())
{
if (w1 < cf) {
B.Range(myEdge, aFace, cf, w2);
w1 = cf;
}
if (w2 > cl) {
B.Range(myEdge, aFace, w1, cl);
w2 = cf;
w2 = cl;
}
}
if (w1 > w2 && mySurf->IsUPeriodic())