- }
-}
-
-//=======================================================================
-//function : loadAndOrientModifiedShapes
-//purpose : load modified shapes in DF with preliminary orientation adjustment
-//=======================================================================
-void GeomAlgoAPI_DFLoader::loadAndOrientModifiedShapes (BRepBuilderAPI_MakeShape& theMS,
- const TopoDS_Shape& theShapeIn,
- const TopAbs_ShapeEnum theKindOfShape,
- TNaming_Builder& theBuilder,
- const TopTools_DataMapOfShapeShape& theSubShapes)
-{
- TopTools_MapOfShape aView;
- TopExp_Explorer aShapeExplorer (theShapeIn, theKindOfShape);
- for (; aShapeExplorer.More(); aShapeExplorer.Next ()) {
- const TopoDS_Shape& aRoot = aShapeExplorer.Current ();
- if (!aView.Add(aRoot)) continue;
- const TopTools_ListOfShape& aShapes = theMS.Modified (aRoot);
- TopTools_ListIteratorOfListOfShape aShapesIterator (aShapes);
- for (;aShapesIterator.More (); aShapesIterator.Next ()) {
- TopoDS_Shape aNewShape = aShapesIterator.Value ();
- if (theSubShapes.IsBound(aNewShape)) {
- aNewShape.Orientation((theSubShapes(aNewShape)).Orientation());