Salome HOME
Preparation of intermediate revision
[modules/geom.git] / src / GEOMAlgo / GEOMAlgo_BuilderSolid.cdl
1 --  Copyright (C) 2007-2008  CEA/DEN, EDF R&D, OPEN CASCADE
2 --
3 --  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 --  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 --
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.
10 --
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.
15 --
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
19 --
20 --  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 --
22 -- File:        GEOMAlgo_BuilderSolid.cdl
23 -- Created:     
24 -- Author:      Peter KURNEV  
25 --
26 class BuilderSolid from GEOMAlgo 
27         inherits BuilderArea from GEOMAlgo 
28          
29         ---Purpose: The algorithm to build solids from set of faces  
30
31 --uses 
32 --raises
33
34 is 
35     Create  
36         ---Purpose:  Empty  constructor
37         returns BuilderSolid from GEOMAlgo; 
38     ---C++: alias "Standard_EXPORT virtual ~GEOMAlgo_BuilderSolid();" 
39      
40      
41     Perform(me:out)  
42         ---Purpose:  Performs the algorithm 
43         is redefined;  
44          
45     PerformShapesToAvoid(me:out) 
46         ---Purpose:  Collect the faces that 
47         --           a) are internal             
48         --           b) are the same and have different orientation              
49         is redefined protected; 
50          
51     PerformLoops(me:out) 
52         ---Purpose: Build draft shells 
53         --          a)myLoops - draft shells that consist of  
54         --                       boundary faces 
55         --          b)myLoopsInternal - draft shells that contains 
56         --                               inner faces 
57         is redefined protected;  
58          
59     PerformAreas(me:out)   
60         ---Purpose: Build draft solids that contains boundary faces   
61         is redefined protected;  
62
63     PerformInternalShapes(me:out)   
64         ---Purpose: Build finalized solids with internal shells   
65         is redefined protected;   
66
67 --fields 
68   
69 end BuilderSolid;