1 -- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
3 -- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 -- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 -- This library is free software; you can redistribute it and/or
7 -- modify it under the terms of the GNU Lesser General Public
8 -- License as published by the Free Software Foundation; either
9 -- version 2.1 of the License.
11 -- This library is distributed in the hope that it will be useful,
12 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
13 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 -- Lesser General Public License for more details.
16 -- You should have received a copy of the GNU Lesser General Public
17 -- License along with this library; if not, write to the Free Software
18 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 -- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 -- File: ModGlue_BuilderArea.cdl
24 -- Author: Peter KURNEV
26 deferred class BuilderArea from GEOMAlgo
27 inherits Algo from GEOMAlgo
29 ---Purpose: The root class for algorithms to build
30 -- faces/solids from set of edges/faces
34 ListOfShape from TopTools,
35 MapOfOrientedShape from TopTools,
36 Context from IntTools,
37 PContext from IntTools
43 ---Purpose: Empty constructor
44 returns BuilderArea from GEOMAlgo;
45 ---C++: alias "Standard_EXPORT virtual ~GEOMAlgo_BuilderArea();"
48 theContext:Context from IntTools);
49 ---Purpose: Sets cashed geometrical tools
52 theLS:ListOfShape from TopTools);
53 ---Purpose: Sets edges/faces to process
56 ---Purpose: Returns edges/faces to process
57 returns ListOfShape from TopTools;
58 ---C++: return const &
61 ---Purpose: Returns wires/shells that have been built
62 returns ListOfShape from TopTools;
63 ---C++: return const &
66 ---Purpose: Returns faces/solids that have been built
67 returns ListOfShape from TopTools;
68 ---C++: return const &
70 PerformShapesToAvoid(me:out)
71 ---Purpose: Collect the edges/faces that
73 -- b) are the same and have different orientation
77 ---Purpose: Build draft faces/shells
78 -- a)myLoops - draft faces/shells that consist of
79 -- boundary edges/faces
80 -- b)myLoopsInternal - draft faces/shells that contains
85 ---Purpose: Build draft faces/solids that contains boundary faces
88 PerformInternalShapes(me:out)
89 ---Purpose: Build finalized faces/solids with internal wires/shells
94 myShapes : ListOfShape from TopTools is protected;
95 myLoops : ListOfShape from TopTools is protected;
96 myLoopsInternal : ListOfShape from TopTools is protected;
97 myShapesToAvoid : MapOfOrientedShape from TopTools is protected;
98 myAreas : ListOfShape from TopTools is protected;
100 myContext : PContext from IntTools is protected;