const TopTools_ListOfShape& aListOfNew = splitTool.Modified(anIt.Value());
if(!aListOfNew.IsEmpty())
foundF = Standard_True;
+
TopTools_ListOfShape aList;
+
TopTools_ListIteratorOfListOfShape it(aListOfNew);
for(;it.More();it.Next())
- aList.Append(it.Value());
+ aList.Append(it.Value());
+ // Bug in History: partition should give only modified entities! => temporary solution is used
+ const TopTools_ListOfShape& aListOfGen = splitTool.Generated(anIt.Value());
+ if(!aListOfGen.IsEmpty())
+ foundF = Standard_True;
+ it.Initialize(aListOfGen);
+ for(;it.More();it.Next())
+ aList.Append(it.Value());
if(!foundF) // face is not modified
aList.Append (anIt.Value());
aDM1.Bind(anIt.Value(), aList);
//BRepTools::Write(it.Value(),aName.ToCString());
#endif
}
+ const TopTools_ListOfShape& aListG = splitTool.Generated(exp.Current());
+ if(aListG.Extent()) foundE = Standard_True;
+ it.Initialize(aListG);
+ for(int k=1;it.More();it.Next(),k++)
+ aList.Append(it.Value());
//cout << "NB_EDGE = " << aList.Extent() <<endl;
if(!foundE) {
aList.Append (exp.Current());