Part: Use std::numeric_limits and std::numbers instead of defines

This commit is contained in:
Benjamin Nauck
2025-03-27 19:01:46 +01:00
parent 1301b58296
commit 075a1362ed
38 changed files with 259 additions and 247 deletions

View File

@@ -2640,7 +2640,7 @@ GeomCurve* GeomCircle::createArc(double first, double last) const
GeomBSplineCurve* GeomCircle::toNurbs(double first, double last) const
{
// for an arc of circle use the generic method
if (first != 0 || last != 2*M_PI) {
if (first != 0 || last != 2 * std::numbers::pi) {
return GeomConic::toNurbs(first, last);
}
@@ -2674,8 +2674,8 @@ GeomBSplineCurve* GeomCircle::toNurbs(double first, double last) const
TColStd_Array1OfReal knots(1, 3);
knots(1) = 0;
knots(2) = M_PI;
knots(3) = 2*M_PI;
knots(2) = std::numbers::pi;
knots(3) = 2 * std::numbers::pi;
Handle(Geom_BSplineCurve) spline = new Geom_BSplineCurve(poles, weights,knots, mults, 3,
Standard_False, Standard_True);
@@ -2906,9 +2906,9 @@ void GeomArcOfCircle::getRange(double& u, double& v, bool emulateCCWXY) const
}
if (v < u)
v += 2*M_PI;
if (v-u > 2*M_PI)
v -= 2*M_PI;
v += 2 * std::numbers::pi;
if (v-u > 2 * std::numbers::pi)
v -= 2 * std::numbers::pi;
}
}
@@ -3086,7 +3086,7 @@ GeomCurve* GeomEllipse::createArc(double first, double last) const
GeomBSplineCurve* GeomEllipse::toNurbs(double first, double last) const
{
// for an arc of ellipse use the generic method
if (first != 0 || last != 2*M_PI) {
if (first != 0 || last != 2 * std::numbers::pi) {
return GeomConic::toNurbs(first, last);
}
@@ -3465,9 +3465,9 @@ void GeomArcOfEllipse::getRange(double& u, double& v, bool emulateCCWXY) const
std::swap(u,v);
u = -u; v = -v;
if (v < u)
v += 2*M_PI;
if (v-u > 2*M_PI)
v -= 2*M_PI;
v += 2 * std::numbers::pi;
if (v-u > 2 * std::numbers::pi)
v -= 2 * std::numbers::pi;
}
}
}
@@ -4683,11 +4683,12 @@ void GeomLineSegment::Restore (Base::XMLReader &reader)
// for other objects, the best effort may be just to leave default values.
reader.setPartialRestore(true);
constexpr double increment{std::numeric_limits<double>::epsilon()};
if(start.x == 0) {
end = start + Base::Vector3d(DBL_EPSILON,0,0);
end = start + Base::Vector3d(increment, 0, 0);
}
else {
end = start + Base::Vector3d(start.x*DBL_EPSILON,0,0);
end = start + Base::Vector3d(start.x * increment, 0, 0);
}
setPoints(start, end);
@@ -5409,7 +5410,7 @@ gp_Vec GeomCone::getDN(double u, double v, int Nu, int Nv) const
{
gp_XYZ Xdir = Pos.XDirection().XYZ();
gp_XYZ Ydir = Pos.YDirection().XYZ();
Standard_Real Um = U + Nu * M_PI_2; // M_PI * 0.5
Standard_Real Um = U + Nu * std::numbers::pi/2;
Xdir.Multiply(cos(Um));
Ydir.Multiply(sin(Um));
Xdir.Add(Ydir);
@@ -6228,11 +6229,11 @@ GeomArcOfCircle *createFilletGeometry(const GeomLineSegment *lineSeg1, const Geo
if (endAngle < startAngle)
std::swap(startAngle, endAngle);
if (endAngle > 2*M_PI )
endAngle -= 2*M_PI;
if (endAngle > 2 * std::numbers::pi)
endAngle -= 2 * std::numbers::pi;
if (startAngle < 0 )
endAngle += 2*M_PI;
if (startAngle < 0)
endAngle += 2 * std::numbers::pi;
// Create Arc Segment
GeomArcOfCircle *arc = new GeomArcOfCircle();