0024166: Unable to create file with "Save" menu of voxeldemo Qt sample
[occt.git] / src / BOPAlgo / BOPAlgo_BuilderFace.cdl
1 -- Created by: Peter KURNEV
2 -- Copyright (c) 2010-2012 OPEN CASCADE SAS
3 -- Copyright (c) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
4 -- Copyright (c) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT,
5 --                         EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 --
7 -- The content of this file is subject to the Open CASCADE Technology Public
8 -- License Version 6.5 (the "License"). You may not use the content of this file
9 -- except in compliance with the License. Please obtain a copy of the License
10 -- at http://www.opencascade.org and read it completely before using this file.
11 --
12 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
13 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
14 --
15 -- The Original Code and all software distributed under the License is
16 -- distributed on an "AS IS" basis, without warranty of any kind, and the
17 -- Initial Developer hereby disclaims all such warranties, including without
18 -- limitation, any warranties of merchantability, fitness for a particular
19 -- purpose or non-infringement. Please see the License for the specific terms
20 -- and conditions governing the rights and limitations under the License.
21
22
23
24 class BuilderFace from BOPAlgo 
25         inherits BuilderArea from BOPAlgo 
26          
27         ---Purpose: The algorithm to build faces from set of edges  
28
29 uses    
30     Orientation from TopAbs,
31     Face from TopoDS,
32     BaseAllocator from BOPCol 
33 --raises
34
35 is 
36     Create  
37         returns BuilderFace from BOPAlgo; 
38     ---C++: alias "Standard_EXPORT virtual ~BOPAlgo_BuilderFace();" 
39       
40     Create (theAllocator: BaseAllocator from BOPCol)  
41         returns BuilderFace from BOPAlgo;  
42         
43     SetFace(me:out; 
44             theFace:Face from TopoDS);  
45     ---Purpose: Sets the face generatix  
46          
47     Face(me) 
48     ---Purpose: Returns the face generatix   
49         returns Face from TopoDS; 
50     ---C++:  return const &
51                  
52     Perform(me:out)  
53         ---Purpose:  Performs the algorithm 
54         is redefined;  
55          
56     PerformShapesToAvoid(me:out) 
57         ---Purpose:  Collect the edges that 
58         --           a) are internal             
59         --           b) are the same and have different orientation              
60         is redefined protected; 
61          
62     PerformLoops(me:out) 
63         ---Purpose: Build draft wires 
64         --          a)myLoops - draft wires that consist of  
65         --                       boundary edges 
66         --          b)myLoopsInternal - draft wires that contains 
67         --                               inner edges 
68         is redefined protected;  
69          
70     PerformAreas(me:out)   
71         ---Purpose: Build draft faces that contains boundary edges 
72         is redefined protected;  
73
74     PerformInternalShapes(me:out)   
75         ---Purpose: Build finalized faces with internals   
76         is redefined protected;  
77      
78     CheckData(me:out) 
79         is redefined protected;   
80      
81     Orientation(me) 
82         returns Orientation from TopAbs; 
83  
84 fields  
85     myFace : Face from TopoDS is protected;     
86     myOrientation: Orientation from TopAbs is protected;              
87  
88 end BuilderFace; 
89