Salome HOME
Fix regression: storeViewParameters() does not work for OCC view
[modules/geom.git] / src / GEOMAlgo / GEOMAlgo_BuilderArea.cdl
1 --  Copyright (C) 2007-2010  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
23 -- File:        ModGlue_BuilderArea.cdl
24 -- Created:     
25 -- Author:      Peter KURNEV  
26 --
27 deferred class BuilderArea from GEOMAlgo 
28         inherits Algo from GEOMAlgo 
29          
30         ---Purpose: The root class for algorithms to build  
31         --          faces/solids from set of edges/faces  
32
33 uses 
34     Shape from TopoDS,
35     ListOfShape from TopTools,
36     MapOfOrientedShape from TopTools, 
37     Context from IntTools, 
38     PContext from IntTools
39
40 --raises
41
42 is 
43     Initialize  
44         ---Purpose:  Empty  constructor
45         returns BuilderArea from GEOMAlgo; 
46     ---C++: alias "Standard_EXPORT virtual ~GEOMAlgo_BuilderArea();" 
47      
48     SetContext(me:out; 
49             theContext:Context from IntTools);  
50         ---Purpose: Sets cashed geometrical tools   
51             
52     SetShapes(me:out; 
53             theLS:ListOfShape from TopTools); 
54         ---Purpose: Sets edges/faces to process 
55         
56     Shapes(me) 
57         ---Purpose: Returns edges/faces to process 
58         returns ListOfShape from TopTools;   
59     ---C++:  return const &  
60      
61     Loops(me)  
62         ---Purpose: Returns wires/shells that have been built  
63         returns ListOfShape from TopTools; 
64     ---C++:  return const &   
65      
66     Areas(me) 
67         ---Purpose: Returns faces/solids that have been built  
68         returns ListOfShape from TopTools; 
69     ---C++:  return const &     
70      
71     PerformShapesToAvoid(me:out) 
72         ---Purpose:  Collect the edges/faces that 
73         --           a) are internal             
74         --           b) are the same and have different orientation              
75         is virtual protected; 
76          
77     PerformLoops(me:out) 
78         ---Purpose: Build draft faces/shells 
79         --          a)myLoops - draft faces/shells that consist of  
80         --                      boundary edges/faces 
81         --          b)myLoopsInternal - draft faces/shells that contains 
82         --                               inner edges/faces 
83         is virtual protected;  
84          
85     PerformAreas(me:out)   
86         ---Purpose: Build draft faces/solids that contains boundary faces   
87         is virtual protected;  
88
89     PerformInternalShapes(me:out)   
90         ---Purpose: Build finalized faces/solids with internal wires/shells   
91         is virtual protected;  
92      
93
94 fields 
95     myShapes         :  ListOfShape from TopTools is protected;  
96     myLoops          :  ListOfShape from TopTools is protected;  
97     myLoopsInternal  :  ListOfShape from TopTools is protected;
98     myShapesToAvoid  :  MapOfOrientedShape from TopTools is protected;  
99     myAreas          :  ListOfShape from TopTools is protected;  
100     --
101     myContext        :  PContext from IntTools is protected;             
102
103 end BuilderArea; 
104