From: razmyslovich Date: Wed, 14 May 2014 11:16:16 +0000 (+0200) Subject: 0024921: ShapeAnalysis_Curve::ValidateRange doesn't adjust the range for periodic... X-Git-Tag: V6_8_0_beta~321 X-Git-Url: http://git.dev.opencascade.org/gitweb/?a=commitdiff_plain;h=72952ef2b87cb54043ef047d2c38864388306351;p=occt-copy.git 0024921: ShapeAnalysis_Curve::ValidateRange doesn't adjust the range for periodic curves Fix the sequence of conditional checks and always try to adjust the range for periodic curves --- diff --git a/src/ShapeAnalysis/ShapeAnalysis_Curve.cxx b/src/ShapeAnalysis/ShapeAnalysis_Curve.cxx index 0a68b22bd6..8b83b3229a 100644 --- a/src/ShapeAnalysis/ShapeAnalysis_Curve.cxx +++ b/src/ShapeAnalysis/ShapeAnalysis_Curve.cxx @@ -506,11 +506,13 @@ Standard_Boolean ShapeAnalysis_Curve::ValidateRange (const Handle(Geom_Curve)& t } } - if (First < Last) return Standard_True; - // 15.11.2002 PTV OCC966 - if (ShapeAnalysis_Curve::IsPeriodic(theCurve)) + if (ShapeAnalysis_Curve::IsPeriodic(theCurve)) { ElCLib::AdjustPeriodic(cf,cl,Precision::PConfusion(),First,Last); //:a7 abv 11 Feb 98: preci -> PConfusion() + } + else if (First < Last) { + // nothing to fix + } else if (theCurve->IsClosed()) { // l'un des points projecte se trouve sur l'origine du parametrage // de la courbe 3D. L algo a donne cl +- preci au lieu de cf ou vice-versa