0025477: Boolean Operations with additional tolerance - Fuzzy Boolean operations
[occt.git] / src / BOPAlgo / BOPAlgo_Builder.cdl
CommitLineData
4e57c75e 1-- Created by: Peter KURNEV
973c2be1 2-- Copyright (c) 2010-2014 OPEN CASCADE SAS
4e57c75e 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--
973c2be1 7-- This file is part of Open CASCADE Technology software library.
4e57c75e 8--
d5f74e42 9-- This library is free software; you can redistribute it and/or modify it under
10-- the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 11-- by the Free Software Foundation, with special exception defined in the file
12-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
13-- distribution for complete text of the license and disclaimer of any warranty.
4e57c75e 14--
973c2be1 15-- Alternatively, this file may be used under the terms of Open CASCADE
16-- commercial license or contractual agreement.
4e57c75e 17
18class Builder from BOPAlgo
19 inherits BuilderShape from BOPAlgo
20
21---Purpose:
22
744511c8 23uses
24 Box from Bnd,
4e57c75e 25 ShapeEnum from TopAbs,
26 Shape from TopoDS,
27 ListOfShape from TopTools,
28 --
29 BaseAllocator from BOPCol,
30 ListOfInteger from BOPCol,
31 ListOfShape from BOPCol,
32 MapOfShape from BOPCol,
33 DataMapOfShapeShape from BOPCol,
34 DataMapOfShapeListOfShape from BOPCol,
1e143abb 35 Context from IntTools,
4e57c75e 36 PDS from BOPDS,
37 PaveFiller from BOPAlgo,
38 PPaveFiller from BOPAlgo
39
40
41--raises
42
43is
44
45 Create
46 returns Builder from BOPAlgo;
47 ---C++: alias "Standard_EXPORT virtual ~BOPAlgo_Builder();"
48
49 Create (theAllocator: BaseAllocator from BOPCol)
50 returns Builder from BOPAlgo;
51
52 Clear(me:out)
53 is virtual;
54
55 PPaveFiller(me:out)
56 returns PPaveFiller from BOPAlgo;
57
58 PDS(me:out)
59 returns PDS from BOPDS;
60
61 AddArgument (me:out;
62 theShape: Shape from TopoDS)
63 is virtual;
92ae0f2f 64
65 SetArguments (me:out;
66 theShapes: ListOfShape from BOPCol)
67 is virtual;
68
4e57c75e 69 Arguments(me)
70 returns ListOfShape from BOPCol;
71 ---C++: return const &
72
73
74 Perform(me:out)
75 is redefined;
76
77 PerformWithFiller(me:out;
78 theFiller: PaveFiller from BOPAlgo)
79 is virtual;
80
81 --
82 -- History support
83 --
84 PrepareHistory (me:out)
85 ---Purpose: Prepare information for history support
86 is redefined protected;
87
88 Generated (me:out;
89 theS : Shape from TopoDS)
90 ---Purpose: Returns the list of shapes generated from the
91 -- shape theS.
92 returns ListOfShape from TopTools
93 is redefined;
94 ---C++: return const &
95
96 Modified (me:out;
97 theS : Shape from TopoDS)
98 ---Purpose: Returns the list of shapes modified from the shape
99 -- theS.
100 returns ListOfShape from TopTools
101 is redefined;
102 ---C++: return const &
103
104 IsDeleted (me:out;
105 theS : Shape from TopoDS)
106 ---Purpose: Returns true if the shape theS has been deleted.
107 returns Boolean from Standard
108 is redefined;
4e57c75e 109 --
110 -- Debug
111 --
112 Images(me)
113 returns DataMapOfShapeListOfShape from BOPCol;
114 ---C++: return const &
796a784d 115
116 --
4e57c75e 117 --
118 -- protected methods
119 --
120 PerformInternal(me:out;
121 thePF: PaveFiller from BOPAlgo)
122 is virtual protected;
36f4947b 123
124 PerformInternal1(me:out;
125 thePF: PaveFiller from BOPAlgo)
126 is virtual protected;
127
4e57c75e 128 CheckData(me:out)
129 is redefined protected;
130
131 Prepare(me:out)
132 is virtual protected;
133
134 FillImagesVertices(me:out)
135 is protected;
136
137 FillImagesEdges(me:out)
138 is protected;
139
140
141 BuildResult(me:out;
142 theType: ShapeEnum from TopAbs)
143 is virtual protected;
144
145 IsInterferred(me;
146 theS:Shape from TopoDS)
147 returns Boolean from Standard;
148
149 FillImagesContainers(me:out;
150 theType:ShapeEnum from TopAbs)
151 is protected;
152
153 FillImagesCompounds(me:out)
154 is protected;
155
156 FillImagesContainer(me:out;
157 theS:Shape from TopoDS;
158 theType:ShapeEnum from TopAbs)
159 is protected;
160
161 FillImagesCompound(me:out;
162 theS:Shape from TopoDS;
163 theMF:out MapOfShape from BOPCol)
164 is protected;
165
166 FillImagesFaces (me:out)
167 is protected;
168
169 BuildSplitFaces (me:out)
170 is virtual protected;
171
172 FillSameDomainFaces (me:out)
173 is protected;
174
175 FillImagesFaces1 (me:out)
176 is protected;
4e57c75e 177 --
178 -- solids
179 --
180 FillImagesSolids(me:out)
181 is protected;
182
183 BuildDraftSolid(me:out;
184 theSolid:Shape from TopoDS;
185 theDraftSolid:out Shape from TopoDS;
186 theLIF:out ListOfShape from BOPCol)
187 is protected;
188
189 FillIn3DParts(me:out;
190 theInParts:out DataMapOfShapeListOfShape from BOPCol;
744511c8 191 theDraftSolids:out DataMapOfShapeShape from BOPCol;
192 theAllocator:BaseAllocator from BOPCol)
4e57c75e 193 is virtual protected;
744511c8 194
4e57c75e 195 BuildSplitSolids(me:out;
196 theInParts:out DataMapOfShapeListOfShape from BOPCol;
197 theDraftSolids:out DataMapOfShapeShape from BOPCol;
744511c8 198 theAllocator:BaseAllocator from BOPCol)
30ecd5f8 199 is protected;
200
4e57c75e 201 FillInternalShapes(me:out)
202 is protected;
203 --
204 -- misc
205 --
206 PostTreat (me:out)
207 is virtual protected;
208
209 Origins(me)
210 returns DataMapOfShapeShape from BOPCol;
211 ---C++: return const &
212 ---Purpose: Returns myOrigins.
213
214 ShapesSD(me)
215 returns DataMapOfShapeShape from BOPCol;
216 ---C++: return const &
217 ---Purpose: Returns myShapesSD.
218
219 Splits (me)
220 returns DataMapOfShapeListOfShape from BOPCol;
221 ---C++: return const &
b1d15f53 222 ---Purpose: Returns mySplits.
223
224 SetFuzzyValue(me:out;
225 theFuzz : Real from Standard);
226 ---Purpose: Sets the additional tolerance
227
228 FuzzyValue(me)
229 returns Real from Standard;
230 ---Purpose: Returns the additional tolerance
4e57c75e 231
232fields
233 myArguments : ListOfShape from BOPCol is protected;
234 myMapFence : MapOfShape from BOPCol is protected;
235 myPaveFiller : PPaveFiller from BOPAlgo is protected;
236 myDS : PDS from BOPDS is protected;
1e143abb 237 myContext : Context from IntTools is protected;
4e57c75e 238 myEntryPoint : Integer from Standard is protected;
239 --
240 myImages : DataMapOfShapeListOfShape from BOPCol is protected;
241 myShapesSD : DataMapOfShapeShape from BOPCol is protected;
242 --
243 mySplits : DataMapOfShapeListOfShape from BOPCol is protected;
b1d15f53 244 myOrigins : DataMapOfShapeShape from BOPCol is protected;
245 myFuzzyValue : Real from Standard is protected;
db8e4b9a 246
4e57c75e 247end Builder;
248