1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-09 13:22:24 +03:00

0029586: Revolution creates solid with degenerated edges shared among faces

Substitution of degenerated edges by their copies is implemented to make edges not shared
in BRepPrimAPI_MakeRevol::Build().
Method BRepPrimAPI_MakeRevol::Generated(...) is changed in order to use history of substitutions.
Test case is added.
This commit is contained in:
ifv
2018-03-23 11:33:27 +03:00
committed by bugmaster
parent 9f785738a1
commit 7e4ff64898
7 changed files with 214 additions and 19 deletions

View File

@@ -100,7 +100,6 @@ static Standard_Integer prism(Draw_Interpretor& , Standard_Integer n, const char
//=======================================================================
// revol
//=======================================================================
static Standard_Integer revol(Draw_Interpretor& ,
Standard_Integer n, const char** a)
{
@@ -117,10 +116,18 @@ static Standard_Integer revol(Draw_Interpretor& ,
Standard_Boolean copy = n > 10;
TopoDS_Shape res = BRepPrimAPI_MakeRevol(base,A,angle,copy);
BRepPrimAPI_MakeRevol Revol(base, A, angle, copy);
TopoDS_Shape res = Revol.Shape();
DBRep::Set(a[1],res);
//History
TopTools_ListOfShape anArgs;
anArgs.Append(base);
BRepTest_Objects::SetHistory(anArgs, Revol);
return 0;
}