1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-03 17:56:21 +03:00

0023954: Modeling Algorithms - BRepPrimAPI_MakeRevol fails to recognize a torus case

Fixed the Toroidal surface recognition;
The test case bugs/moddata_1/bug22296: the result is a torus with parameters: u [0, 2*PI], v [PI, 3*PI];
The test case bugs/modalg_5/bug23954: BAD -> OK.
This commit is contained in:
abulyche 2022-09-09 13:21:03 +03:00 committed by smoskvin
parent 3536158f11
commit 259b930379
3 changed files with 3 additions and 14 deletions

View File

@ -502,16 +502,7 @@ GeomAbs_SurfaceType GeomAdaptor_SurfaceOfRevolution::GetType() const
MajorRadius = aLin.Distance(aLC);
if(MajorRadius > aR)
{
Standard_Real aT = 0., aDx, dX;
gp_Pnt aPx;
aPx = ElCLib::Value(aT, C);
aDx = aLin.Distance(aPx);
dX = aDx - MajorRadius - aR;
if (dX < 0.)
dX = -dX;
if (dX < TolConf)
return GeomAbs_Torus;
return GeomAbs_Torus;
}
}
break;

View File

@ -1,5 +1,3 @@
puts "TODO OCC23954 ALL: Error: result is not Toroidal surface"
puts "============"
puts "OCC23954"
puts "============"

View File

@ -23,8 +23,8 @@ if { ${E_Length} < 6} {
set good_umin 0
set good_umax 6.28319
set good_vmin 0
set good_vmax 6.28319
set good_vmin 3.14159
set good_vmax 9.42478
set xlist [xbounds f]
set umin [lindex $xlist 0]