]> SALOME platform Git repositories - modules/geom.git/blob - src/NMTTools/NMTTools_PaveFiller.cdl
Salome HOME
Added help page and revert some changes for a better ergonomy
[modules/geom.git] / src / NMTTools / NMTTools_PaveFiller.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:        NMTTools_PaveFiller.cdl
23 -- Created:     
24 -- Author:      Peter KURNEV
25 --              <pkv@irinox>
26 --
27 class PaveFiller from NMTTools 
28
29         ---Purpose: 
30
31 uses   
32     DataMapOfIntegerInteger from TColStd, 
33     ListOfInteger from TColStd,  
34     MapOfInteger from TColStd,  
35      
36     Pnt from gp,
37     ShapeEnum  from  TopAbs, 
38     Vertex     from  TopoDS, 
39     Face       from  TopoDS,  
40     Shape      from TopoDS, 
41     Edge       from  TopoDS, 
42     ListOfShape from TopTools,  
43     DataMapOfShapeShape from TopTools,
44         
45     Context     from IntTools, 
46     ShrunkRange from IntTools,
47     
48     IndexedDataMapOfShapeInteger from BooleanOperations, 
49
50     PavePool          from BOPTools, 
51     PaveBlock         from BOPTools,
52     ListOfPaveBlock   from BOPTools,
53     SplitShapesPool   from BOPTools, 
54     Pave              from BOPTools, 
55     PaveSet           from BOPTools, 
56     Curve             from BOPTools, 
57     SSInterference    from BOPTools, 
58     IDMapOfPaveBlockIMapOfPaveBlock from BOPTools, 
59     IDMapOfPaveBlockIMapOfInteger   from BOPTools, 
60     SSIntersectionAttribute         from BOPTools,  
61     
62     ShapesDataStructure  from NMTDS,  
63     PShapesDataStructure from NMTDS, 
64     Iterator             from NMTDS,  
65     PIterator from NMTDS, 
66     PInterfPool from NMTDS, 
67     
68     CommonBlockPool         from NMTTools, 
69     CommonBlock             from NMTTools, 
70     ListOfCommonBlock       from NMTTools, 
71     DataMapOfIntegerFaceInfo from NMTTools,
72     IndexedDataMapOfIndexedMapOfInteger from NMTTools  
73
74 --raises
75
76 is 
77     Create 
78         returns PaveFiller from NMTTools;  
79     ---C++: alias "Standard_EXPORT virtual ~NMTTools_PaveFiller();"
80       
81   
82      
83     SetCompositeShape (me:out;  
84             aS:  Shape from TopoDS);  
85      
86     CompositeShape(me) 
87         returns  Shape from TopoDS; 
88         ---C++:  return  const&  
89         
90              
91     DS(me:out) 
92         returns PShapesDataStructure from NMTDS;  
93  
94     DSIt(me:out) 
95         returns PIterator from NMTDS; 
96      
97     IP(me:out)  
98         returns PInterfPool from NMTDS; 
99     --   
100     Init       (me:out) 
101         is virtual  protected; 
102          
103     Clear   (me:out) 
104         is virtual  protected;
105
106     Perform    (me:out) 
107         is virtual;   
108          
109     PerformVV  (me:out) 
110         is virtual protected;  
111      
112     PerformVE  (me:out) 
113         is virtual protected; 
114      
115     PerformVF  (me:out) 
116         is virtual protected; 
117
118     PerformEE (me:out) 
119         is virtual protected; 
120       
121     PerformEF (me:out) 
122         is virtual protected; 
123    
124     PerformFF (me:out) 
125         is virtual protected; 
126      
127     MakeSplitEdges(me:out) 
128         is protected;   
129      
130     PreparePaveBlocks (me:out; 
131             aType1: ShapeEnum  from  TopAbs; 
132             aType2: ShapeEnum  from  TopAbs) 
133         is virtual protected; 
134      
135     CorrectShrunkRanges(me:out; 
136             aSide:  Integer  from  Standard; 
137             aPave:  Pave from BOPTools; 
138             aSR  :  out ShrunkRange  from  IntTools)
139         is protected; 
140          
141     PreparePaveBlocks (me:out;   
142             anE:Integer from Standard) 
143         is virtual protected;             
144         
145      
146     PrepareEdges  (me:out) 
147         is virtual protected;  
148      
149     --
150     -- Query section 
151     IsDone(me) 
152         returns  Boolean from Standard; 
153
154     Context(me) 
155          returns Context from IntTools; 
156         ---C++:return const &   
157
158     PavePool(me) 
159         returns  PavePool from BOPTools; 
160         ---C++:return const &    
161
162     ChangePavePool(me:out) 
163         returns  PavePool from BOPTools; 
164         ---C++:return & 
165
166     CommonBlockPool(me) 
167         returns  CommonBlockPool from NMTTools; 
168         ---C++:return const &    
169
170     ChangeCommonBlockPool(me:out) 
171         returns  CommonBlockPool from NMTTools; 
172         ---C++:return & 
173
174     SplitShapesPool(me)  
175         returns  SplitShapesPool from BOPTools;
176         ---C++:return const &   
177
178     ChangeSplitShapesPool(me:out)  
179         returns  SplitShapesPool from BOPTools;
180         ---C++:return  &        
181      
182     FindSDVertex (me; 
183                     nV:  Integer  from  Standard) 
184         returns Integer from Standard; 
185
186     IsSuccessorsComputed (me;  
187             iF1:Integer from  Standard; 
188             iF2:Integer from  Standard) 
189         returns  Boolean from Standard 
190         is protected;  
191
192     IsBlocksCoinside (me; 
193             aPB1:PaveBlock from BOPTools;
194             aPB2:PaveBlock from BOPTools) 
195         returns Boolean from Standard 
196         is protected; 
197      
198     RefinePavePool(me:out) 
199         is protected;  
200
201     CheckFacePaves(me:out;  
202              aV : Vertex  from TopoDS;  
203              nF:  Integer from Standard) 
204         returns Integer from Standard 
205         is protected;  
206          
207     ReplaceCommonBlocks (me:out; 
208             aLCB: ListOfCommonBlock from NMTTools) 
209         is protected; 
210      
211     RemoveCommonBlocks (me:out; 
212             aLCB: ListOfCommonBlock from NMTTools) 
213         is protected;
214      
215     SplitCommonBlocks (me:out; 
216             aLCB: ListOfCommonBlock from NMTTools) 
217         is protected;  
218
219     SplitCommonBlock (me:out; 
220             aCB : CommonBlock from NMTTools; 
221             aLCB: out ListOfCommonBlock from NMTTools) 
222         is protected; 
223
224     EECommonBlocks(me:out; 
225             aM:IDMapOfPaveBlockIMapOfPaveBlock from BOPTools) 
226         is protected; 
227      
228     EFCommonBlocks(me:out;  
229              aMapCB:IDMapOfPaveBlockIMapOfInteger from BOPTools) 
230         is protected;  
231          
232     EENewVertices (me:out;  
233             aM:IndexedDataMapOfShapeInteger from BooleanOperations) 
234         is protected;  
235
236     EENewVertices (me:out;  
237             aV:Vertex from TopoDS;  
238             aM:IndexedDataMapOfShapeInteger from BooleanOperations) 
239         is protected; 
240      
241     EFNewVertices (me:out; 
242             aM:IndexedDataMapOfShapeInteger from BooleanOperations) 
243         is protected; 
244      
245     EFNewVertices (me:out; 
246             aV:Vertex from TopoDS;  
247             aM:IndexedDataMapOfShapeInteger from BooleanOperations) 
248         is protected;   
249          
250     UpdateCommonBlocks(me:out) 
251         is protected;   
252         
253     --modified by NIZNHY-PKV Mon Dec 12 09:12:15 2011f  
254     UpdateCommonBlocks(me:out; 
255             aI:Integer from Standard) 
256         is protected;  
257     --modified by NIZNHY-PKV Mon Dec 12 09:12:21 2011t 
258      
259     UpdatePaveBlocks(me:out) 
260         is protected; 
261          
262     SplitIndex(me; 
263             aPB:PaveBlock from BOPTools) 
264         returns Integer from Standard  
265         is protected;                
266          
267     MakeBlocks(me:out) 
268         is protected;   
269
270     -------------------------------------------------------------- 
271     ---   
272     ---  Some API FUNCTIONS  
273     ---                  
274     SplitsInFace(me:out; 
275                  aBid:Integer from Standard;  
276                  nF1 :Integer from Standard;  
277                  nF2 :Integer from Standard;  
278                  aLs :out ListOfInteger from TColStd) 
279         returns Integer from Standard;  
280
281     SplitsInFace(me:out; 
282                  nE1 :Integer from Standard;  
283                  nF2 :Integer from Standard;  
284                  aLs :out ListOfInteger from TColStd) 
285         returns Integer from Standard;  
286         
287     SplitsOnEdge(me:out; 
288                  nE1 :Integer from Standard;  
289                  nE2 :Integer from Standard;  
290                  aLs :out ListOfInteger from TColStd) 
291         returns Integer from Standard;  
292         
293     SplitsOnFace(me:out; 
294                  nE1 :Integer from Standard;  
295                  nF2 :Integer from Standard;  
296                  aLs :out ListOfInteger from TColStd) 
297         returns Integer from Standard;  
298         
299     SplitsOnFace(me:out;  
300                  aBid:Integer from Standard;  
301                  nF1 :Integer from Standard;  
302                  nF2 :Integer from Standard;  
303                  aLs :out ListOfInteger from TColStd) 
304         returns Integer from Standard;  
305         
306     SplitsInFace(me:out; 
307                  aBid:Integer from Standard;  
308                  nF1 :Integer from Standard;  
309                  nF2 :Integer from Standard;  
310                  aLs :out ListOfPaveBlock from BOPTools) 
311         returns Integer from Standard;  
312      
313     SplitsInFace(me:out; 
314                  nE1 :Integer from Standard;  
315                  nF2 :Integer from Standard;  
316                  aLs :out ListOfPaveBlock from BOPTools) 
317         returns Integer from Standard;  
318      
319     SplitsOnEdge(me:out; 
320                  nE1 :Integer from Standard;  
321                  nE2 :Integer from Standard;  
322                  aLs :out ListOfPaveBlock from BOPTools) 
323         returns Integer from Standard;  
324      
325     SplitsOnFace(me:out; 
326                  nE1 :Integer from Standard;  
327                  nF2 :Integer from Standard;  
328                  aLs :out ListOfPaveBlock from BOPTools) 
329         returns Integer from Standard;  
330
331     SplitsOnFace(me:out;  
332                  aBid:Integer from Standard;  
333                  nF1 :Integer from Standard;  
334                  nF2 :Integer from Standard;  
335                  aLs :out ListOfPaveBlock from BOPTools) 
336         returns Integer from Standard;  
337     --
338     SplitsFace  (me:out;  
339                  nF2 :Integer from Standard;  
340                  aLs :out ListOfPaveBlock from BOPTools) 
341         returns Integer from Standard;  
342
343     SplitsFace  (me:out;  
344                  nF2 :Integer from Standard;  
345                  aLs :out ListOfInteger from TColStd) 
346         returns Integer from Standard;  
347
348     CommonBlocksFace (me:out;  
349                  nF  :Integer from Standard;  
350                  aLCB:out ListOfCommonBlock from NMTTools) 
351         returns Integer from Standard;   
352  
353     PrepareFace(me:out;  
354             nF  :  Integer from Standard; 
355             aF  : out Face from TopoDS); 
356      
357     -- 
358     RealPaveBlock(me:out;   
359             aPB:PaveBlock from BOPTools) 
360         returns PaveBlock from BOPTools; 
361     ---C++: return const &         
362     
363     RealPaveBlock(me:out;   
364             aPB:PaveBlock from BOPTools; 
365             aLB:out ListOfInteger from TColStd; 
366             aIsCommonBlock:out  Integer from Standard) 
367         returns PaveBlock from BOPTools; 
368     ---C++: return const &       
369      
370     RealSplitsFace  (me:out;  
371                  nF2 :Integer from Standard;  
372                  aLs :out ListOfPaveBlock from BOPTools); 
373          
374     HasRealSplitsInOnFace (me:out; 
375                  nF1 :Integer from Standard;  
376                  nF2 :Integer from Standard) 
377         returns Boolean from Standard; 
378          
379     RealSplitsInFace(me:out; 
380                  aBid:Integer from Standard;  
381                  nF1 :Integer from Standard;  
382                  nF2 :Integer from Standard;  
383                  aLs :out ListOfPaveBlock from BOPTools); 
384      
385     RealSplitsInFace(me:out; 
386                  nE1 :Integer from Standard;  
387                  nF2 :Integer from Standard;  
388                  aLs :out ListOfPaveBlock from BOPTools);  
389  
390     RealSplitsInFace(me:out; 
391                  nF1 :Integer from Standard;  
392                  aLPB :out ListOfPaveBlock from BOPTools); 
393  
394     RealSplitsOnEdge(me:out; 
395                  nE1 :Integer from Standard;  
396                  nE2 :Integer from Standard;  
397                  aLs :out ListOfPaveBlock from BOPTools); 
398      
399     RealSplitsOnFace(me:out; 
400                  nE1 :Integer from Standard;  
401                  nF2 :Integer from Standard;  
402                  aLs :out ListOfPaveBlock from BOPTools); 
403
404     RealSplitsOnFace(me:out;  
405                  aBid:Integer from Standard;  
406                  nF1 :Integer from Standard;  
407                  nF2 :Integer from Standard;  
408                  aLs :out ListOfPaveBlock from BOPTools); 
409                   
410     PrepareSetForFace(me:out;   
411                 nF1 :Integer from Standard;  
412                 nF2 :Integer from Standard;  
413                 aLPB: ListOfPaveBlock from BOPTools;  
414                 aPSF:out PaveSet from BOPTools); 
415      
416     PutPaveOnCurve(me:out;   
417                 aPSF: PaveSet from BOPTools;  
418                 aTol: Real from Standard;  
419                 aBC : out Curve from BOPTools);  
420                 
421
422     PutBoundPaveOnCurve (me:out; 
423                     aBC :out Curve from BOPTools;        
424                     aFF :out SSInterference from BOPTools); 
425         
426     PutBoundPaveOnCurve (me:out;  
427                     aP  : Pnt from  gp; 
428                     aT  : Real from Standard;                    
429                     aBC :out Curve from BOPTools;        
430                     aFF :out SSInterference from BOPTools); 
431         
432     FindPave            (me:out; 
433                     aP  : Pnt from gp;  
434                     aTpV: Real from Standard;  
435                     aPS : PaveSet from BOPTools; 
436                     aPV :out Pave from BOPTools) 
437         returns Boolean from Standard; 
438          
439     CheckIntermediatePoint(me:out;  
440                     aPB : PaveBlock      from BOPTools;  
441                     aPBR: PaveBlock      from BOPTools;  
442                     aTol: Real  from  Standard) 
443         returns Integer from Standard;  
444                 
445
446     IsExistingPaveBlock (me:out; 
447                     aPB : PaveBlock       from BOPTools; 
448                     aLPB: ListOfPaveBlock from BOPTools; 
449                     aTol: Real  from  Standard) 
450         returns Boolean from Standard;  
451           
452     MakePCurves (me:out); 
453      
454     PerformVF1(me:out) 
455         is protected;  
456          
457     MakeAloneVertices(me:out) 
458         is protected;   
459          
460     AloneVertices(me)  
461         returns IndexedDataMapOfIndexedMapOfInteger from NMTTools; 
462     ---C++: return const & 
463      
464     IsExistingPaveBlock (me:out; 
465                     aPB : PaveBlock   from BOPTools; 
466                     aLPB: ListOfShape from TopTools; 
467                     aTol: Real  from  Standard) 
468         returns Boolean from Standard;  
469
470     --
471     CheckCoincidence (me:out; 
472                     aPB : PaveBlock   from BOPTools; 
473                     aLPB: ListOfPaveBlock from BOPTools) 
474         returns Boolean from Standard;  
475     -- 
476      
477     CheckIntermediatePoint(me:out;  
478                     aPB : PaveBlock      from BOPTools;  
479                     aE  : Edge from TopoDS;  
480                     aTol: Real  from  Standard) 
481         returns Integer from Standard;   
482
483     SharedEdges(me:out;  
484                  nF1  :Integer from Standard;  
485                  nF2  :Integer from Standard;  
486                  aLNE :out ListOfInteger from TColStd; 
487                  aLSE :out ListOfShape   from TopTools); 
488
489     FuseVertices(me; 
490         aC:Shape from TopoDS; 
491         aDMVV:  out  DataMapOfShapeShape from TopTools);  
492     --
493     TreatPaveBlocks(me:out; 
494             theLCB:out ListOfCommonBlock from NMTTools); 
495              
496     ChangePavePoolNew(me:out) 
497         returns PavePool from BOPTools; 
498     ---C++:return &  
499
500     CheckCoincidence (me:out; 
501                     aPB1 : PaveBlock   from BOPTools; 
502                     aPB2 : PaveBlock   from BOPTools) 
503         returns Boolean from Standard;     
504         
505     FillFaceInfo (me:out) 
506         is protected;
507  
508     CorrectTolR3D(me:out;   
509                 aFF     : SSInterference from BOPTools;  
510                 aMVStick: MapOfInteger from TColStd; 
511                 aTolR3D:  out Real from Standard) 
512         is protected;  
513          
514     PutClosingPaveOnCurve (me:out; 
515                     aBC :out Curve from BOPTools;        
516                     aFF :out SSInterference from BOPTools); 
517  
518 fields 
519     myDS               :  PShapesDataStructure from NMTDS       is protected;   
520     myIsDone           :  Boolean from Standard                 is protected; 
521     myNbSources        :  Integer from Standard                 is protected;  
522     myNbEdges          :  Integer from Standard                 is protected;  
523
524     myPavePool         :  PavePool from BOPTools                is protected;     
525     myPavePoolNew      :  PavePool from BOPTools                is protected;  
526     myCommonBlockPool  :  CommonBlockPool from NMTTools         is protected;  
527     mySplitShapesPool  :  SplitShapesPool from BOPTools         is protected;    
528     -- 
529     myContext          :  Context from IntTools                 is protected; 
530     mySectionAttribute :  SSIntersectionAttribute from BOPTools is protected; 
531     myAloneVertices    :  IndexedDataMapOfIndexedMapOfInteger from NMTTools is protected;   
532     --
533     myVSD              :  DataMapOfIntegerInteger from TColStd is protected; 
534     myDSIt             :  PIterator from NMTDS is protected;  
535     myCompositeShape   :  Shape from TopoDS is protected;
536     myIP               :  PInterfPool from NMTDS is protected;     
537     myFaceInfo         :  DataMapOfIntegerFaceInfo from NMTTools is protected;
538 end PaveFiller;