+// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License.
+//
+// This library is distributed in the hope that it will be useful
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
-- GEOM PARTITION : partition algorithm
--
-- Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-- License along with this library; if not, write to the Free Software
-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
--
--- See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
+-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
--
--
--
---Category: private methods
+ MakeSolids (me: in out; Solid : Shape from TopoDS;
+ Shells: in out ListOfShape from TopTools)
+ is private;
+ ---Purpose: make solids out of Shells
+
MakeShells (me: in out; S : Shape from TopoDS;
NS: in out ListOfShape from TopTools) is private;
---Purpose: split S into shells
-- shared by
-- <LE> contains edge splits
+ IsInside (myclass; S1,S2 : Shape from TopoDS)
+ returns Boolean from Standard is private;
+ ---Purpose: Return True if the first vertex of S1 inside S2.
+ -- If S1.IsNull(), check infinite point against S2.
+
+ GetOriginalShape(me; aShape : Shape from TopoDS)
+ returns Shape from TopoDS is private;
+ ---Purpose: Return the shape aShape originates from. aShape
+ -- should be a face or more complex result shape
+
+ FindToolsToReconstruct(me: in out) is private;
+ ---Purpose: find and store as objects tools which interfere
+ -- with solids or are inside solids without
+ -- an interference
+
fields
- myDoneStep : ShapeEnum from TopAbs; -- reconstructed topology
+ myDoneStep : ShapeEnum from TopAbs; -- rebuilt level
myShape : Compound from TopoDS; -- result
myBuilder : Builder from BRep;
myListShapes : ListOfShape from TopTools; -- object shapes
myMapFaces : MapOfShape from TopTools; -- object faces
myMapTools : MapOfShape from TopTools; -- tool faces
+ myEqualEdges : MapOfShape from TopTools; -- equal splits
+ myNewSection : MapOfShape from TopTools; -- new secton edges
+ myClosedShapes : MapOfShape from TopTools;
+ mySharedFaces : MapOfShape from TopTools; -- faces shared by several shapes
+ myWrappingSolid: MapOfShape from TopTools; -- solids having other shapes inside
myFaceShapeMap : DataMapOfShapeShape from TopTools; -- to find a shape by face
- myNewSection : MapOfShape from TopTools; -- new secton edges
+ myInternalFaces: DataMapOfShapeShape from TopTools; -- shape and its internal faces
+ myIntNotClFaces: DataMapOfShapeShape from TopTools; -- internal but not closed
+
myAsDes : AsDes from BRepAlgo;
myImagesFaces : Image from BRepAlgo;
-- avoid rebuilding twice commont part of solids
myAddedFacesMap: MapOfOrientedShape from TopTools;
- -- equal splits
- myEqualEdges : MapOfShape from TopTools;
-
- -- shape and its internal faces
- myInternalFaces: DataMapOfShapeShape from TopTools;
- myIntNotClFaces: DataMapOfShapeShape from TopTools;-- internal but not closed
-
end Spliter;