mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-09 13:22:24 +03:00
0026374: GeomFill_Profiler fails to unify BSplines if one has knot distance less than PConf
This commit is contained in:
@@ -571,7 +571,7 @@ void Geom_BSplineCurve::Segment(const Standard_Real U1,
|
||||
AbsUMax = Max(AbsUMax, Max(Abs(FirstParameter()),Abs(LastParameter())));
|
||||
// Modified by Sergey KHROMOV - Fri Apr 11 12:15:40 2003 End
|
||||
|
||||
Standard_Real Eps = 100. * Epsilon(AbsUMax);
|
||||
Standard_Real Eps = Max (Epsilon(AbsUMax), Precision::PConfusion());
|
||||
|
||||
InsertKnots( Knots, Mults, Eps);
|
||||
|
||||
|
@@ -541,7 +541,7 @@ void Geom_BSplineSurface::Segment(const Standard_Real U1,
|
||||
if ((U2 < U1) || (V2 < V1))
|
||||
Standard_DomainError::Raise("Geom_BSplineSurface::Segment");
|
||||
Standard_Real deltaU = Max(Abs(U2),Abs(U1));
|
||||
Standard_Real EpsU = Epsilon(deltaU);
|
||||
Standard_Real EpsU = Max (Epsilon(deltaU), Precision::PConfusion());
|
||||
deltaU = U2 - U1;
|
||||
if (uperiodic) {
|
||||
Standard_Real aUPeriod = uknots->Last() - uknots->First();
|
||||
@@ -552,7 +552,7 @@ void Geom_BSplineSurface::Segment(const Standard_Real U1,
|
||||
}
|
||||
|
||||
Standard_Real deltaV = Max(Abs(V2),Abs(V1));
|
||||
Standard_Real EpsV = Epsilon(deltaV);
|
||||
Standard_Real EpsV = Max (Epsilon(deltaV), Precision::PConfusion());
|
||||
deltaV = V2 - V1;
|
||||
if (vperiodic) {
|
||||
Standard_Real aVPeriod = vknots->Last() - vknots->First();
|
||||
@@ -763,7 +763,7 @@ void Geom_BSplineSurface::CheckAndSegment(const Standard_Real U1,
|
||||
if ((U2 < U1) || (V2 < V1))
|
||||
Standard_DomainError::Raise("Geom_BSplineSurface::CheckAndSegment");
|
||||
Standard_Real deltaU = Max(Abs(U2),Abs(U1));
|
||||
Standard_Real EpsU = Epsilon(deltaU);
|
||||
Standard_Real EpsU = Max (Epsilon(deltaU), Precision::PConfusion());
|
||||
deltaU = U2 - U1;
|
||||
if (uperiodic) {
|
||||
Standard_Real aUPeriod = uknots->Last() - uknots->First();
|
||||
@@ -774,7 +774,7 @@ void Geom_BSplineSurface::CheckAndSegment(const Standard_Real U1,
|
||||
}
|
||||
|
||||
Standard_Real deltaV = Max(Abs(V2),Abs(V1));
|
||||
Standard_Real EpsV = Epsilon(deltaV);
|
||||
Standard_Real EpsV = Max (Epsilon(deltaV), Precision::PConfusion());
|
||||
deltaV = V2 - V1;
|
||||
if (vperiodic) {
|
||||
Standard_Real aVPeriod = vknots->Last() - vknots->First();
|
||||
|
Reference in New Issue
Block a user