0021762: Integration of new Boolean Operation algorithm to OCCT.
[occt.git] / src / BOPAlgo / BOPAlgo_Builder.cdl
CommitLineData
4e57c75e 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
22class Builder from BOPAlgo
23 inherits BuilderShape from BOPAlgo
24
25---Purpose:
26
27uses
28 ShapeEnum from TopAbs,
29 Shape from TopoDS,
30 ListOfShape from TopTools,
31 --
32 BaseAllocator from BOPCol,
33 ListOfInteger from BOPCol,
34 ListOfShape from BOPCol,
35 MapOfShape from BOPCol,
36 DataMapOfShapeShape from BOPCol,
37 DataMapOfShapeListOfShape from BOPCol,
38 Context from BOPInt,
39 PDS from BOPDS,
40 PaveFiller from BOPAlgo,
41 PPaveFiller from BOPAlgo
42
43
44--raises
45
46is
47
48 Create
49 returns Builder from BOPAlgo;
50 ---C++: alias "Standard_EXPORT virtual ~BOPAlgo_Builder();"
51
52 Create (theAllocator: BaseAllocator from BOPCol)
53 returns Builder from BOPAlgo;
54
55 Clear(me:out)
56 is virtual;
57
58 PPaveFiller(me:out)
59 returns PPaveFiller from BOPAlgo;
60
61 PDS(me:out)
62 returns PDS from BOPDS;
63
64 AddArgument (me:out;
65 theShape: Shape from TopoDS)
66 is virtual;
67
68 Arguments(me)
69 returns ListOfShape from BOPCol;
70 ---C++: return const &
71
72
73 Perform(me:out)
74 is redefined;
75
76 PerformWithFiller(me:out;
77 theFiller: PaveFiller from BOPAlgo)
78 is virtual;
79
80 --
81 -- History support
82 --
83 PrepareHistory (me:out)
84 ---Purpose: Prepare information for history support
85 is redefined protected;
86
87 Generated (me:out;
88 theS : Shape from TopoDS)
89 ---Purpose: Returns the list of shapes generated from the
90 -- shape theS.
91 returns ListOfShape from TopTools
92 is redefined;
93 ---C++: return const &
94
95 Modified (me:out;
96 theS : Shape from TopoDS)
97 ---Purpose: Returns the list of shapes modified from the shape
98 -- theS.
99 returns ListOfShape from TopTools
100 is redefined;
101 ---C++: return const &
102
103 IsDeleted (me:out;
104 theS : Shape from TopoDS)
105 ---Purpose: Returns true if the shape theS has been deleted.
106 returns Boolean from Standard
107 is redefined;
108
109 --
110 -- Debug
111 --
112 Images(me)
113 returns DataMapOfShapeListOfShape from BOPCol;
114 ---C++: return const &
115
116
117 --
118 -- protected methods
119 --
120 PerformInternal(me:out;
121 thePF: PaveFiller from BOPAlgo)
122 is virtual protected;
123
124 CheckData(me:out)
125 is redefined protected;
126
127 Prepare(me:out)
128 is virtual protected;
129
130 FillImagesVertices(me:out)
131 is protected;
132
133 FillImagesEdges(me:out)
134 is protected;
135
136
137 BuildResult(me:out;
138 theType: ShapeEnum from TopAbs)
139 is virtual protected;
140
141 IsInterferred(me;
142 theS:Shape from TopoDS)
143 returns Boolean from Standard;
144
145 FillImagesContainers(me:out;
146 theType:ShapeEnum from TopAbs)
147 is protected;
148
149 FillImagesCompounds(me:out)
150 is protected;
151
152 FillImagesContainer(me:out;
153 theS:Shape from TopoDS;
154 theType:ShapeEnum from TopAbs)
155 is protected;
156
157 FillImagesCompound(me:out;
158 theS:Shape from TopoDS;
159 theMF:out MapOfShape from BOPCol)
160 is protected;
161
162 FillImagesFaces (me:out)
163 is protected;
164
165 BuildSplitFaces (me:out)
166 is virtual protected;
167
168 FillSameDomainFaces (me:out)
169 is protected;
170
171 FillImagesFaces1 (me:out)
172 is protected;
173
174 FillInternalVertices(me:out;
175 theLF:out ListOfShape from BOPCol;
176 theLIV:out ListOfInteger from BOPCol)
177 is protected;
178 --
179 -- solids
180 --
181 FillImagesSolids(me:out)
182 is protected;
183
184 BuildDraftSolid(me:out;
185 theSolid:Shape from TopoDS;
186 theDraftSolid:out Shape from TopoDS;
187 theLIF:out ListOfShape from BOPCol)
188 is protected;
189
190 FillIn3DParts(me:out;
191 theInParts:out DataMapOfShapeListOfShape from BOPCol;
192 theDraftSolids:out DataMapOfShapeShape from BOPCol;
193 theAllocator:BaseAllocator from BOPCol)
194 is virtual protected;
195
196 BuildSplitSolids(me:out;
197 theInParts:out DataMapOfShapeListOfShape from BOPCol;
198 theDraftSolids:out DataMapOfShapeShape from BOPCol;
199 theAllocator:BaseAllocator from BOPCol)
200 is protected;
201
202 FillInternalShapes(me:out)
203 is protected;
204 --
205 -- misc
206 --
207 PostTreat (me:out)
208 is virtual protected;
209
210 Origins(me)
211 returns DataMapOfShapeShape from BOPCol;
212 ---C++: return const &
213 ---Purpose: Returns myOrigins.
214
215 ShapesSD(me)
216 returns DataMapOfShapeShape from BOPCol;
217 ---C++: return const &
218 ---Purpose: Returns myShapesSD.
219
220 Splits (me)
221 returns DataMapOfShapeListOfShape from BOPCol;
222 ---C++: return const &
223 ---Purpose: Returns mySplits.
224
225fields
226 myArguments : ListOfShape from BOPCol is protected;
227 myMapFence : MapOfShape from BOPCol is protected;
228 myPaveFiller : PPaveFiller from BOPAlgo is protected;
229 myDS : PDS from BOPDS is protected;
230 myContext : Context from BOPInt is protected;
231 myEntryPoint : Integer from Standard is protected;
232 --
233 myImages : DataMapOfShapeListOfShape from BOPCol is protected;
234 myShapesSD : DataMapOfShapeShape from BOPCol is protected;
235 --
236 mySplits : DataMapOfShapeListOfShape from BOPCol is protected;
237 myOrigins : DataMapOfShapeShape from BOPCol is protected;
238
239end Builder;
240