summaryrefslogtreecommitdiff
path: root/src/BOPTools/BOPTools_DSFiller.cdl
blob: 4137a27f889a01821dae09431619b3b22f48b58d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
-- File:	BOPTools_PoolsFiller.cdl
-- Created:	Tue Feb 20 12:38:40 2001
-- Author:	Peter KURNEV
--		<pkv@irinox>
---Copyright:	 Matra Datavision 2001


class DSFiller from BOPTools 

	---Purpose:   
	---  class that provides  
        ---  1. creation of the data structure (DS)    	 
        ---  2. creation of the interferences' pool   	 
        ---  3. invokation of PaveFiller->Perform() to fill the DS 
    	---
uses
    Shape from TopoDS,  
    ShapesDataStructure  from BooleanOperations,
    PShapesDataStructure from BooleanOperations, 
    InterferencePool     from BOPTools,  
    PInterferencePool    from BOPTools, 
    PavePool        from BOPTools,      
    PPaveFiller     from BOPTools,  
    PaveFiller      from BOPTools,  
    SSIntersectionAttribute from BOPTools,
    SplitShapesPool from BOPTools,  
    CommonBlockPool from BOPTools, 
    DataMapOfIntegerListOfInteger from TColStd,
    SetOfInteger  from  TColStd

is 
    Create  
    	returns DSFiller from BOPTools;
    	---Purpose:  
    	--- Empty constructor 
    	---
    Destroy (me:out);
    	---C++: alias ~
    	---Purpose: Destructor 
    	---
    SetShapes (me:out; aS1, aS2:  Shape from TopoDS); 
    	---Purpose: 
    	--- Modifier	
    	--- Sets the arguments of boolean operation           
    	---
    Shape1(me) 
    	returns  Shape from TopoDS; 
    	---C++:  return  const& 
    	---Purpose:
    	--- Selector           
    	---
    Shape2(me) 
    	returns  Shape from TopoDS; 
    	---C++:  return  const& 
    	---Purpose:
    	--- Selector           
    	---
    Perform (me:out); 
    	---Purpose:
    	--- Performs the filling of the DS
	--- 
	 
    InitFillersAndPools(me:out); 
	 
    PartialPerform(me:out; anObjSubSet, aToolSubSet:  SetOfInteger  from  TColStd); 
     
    ToCompletePerform(me:out);		   
 
    Perform (me:out; theSectionAttribute: SSIntersectionAttribute from BOPTools);
    	---Purpose:
    	--- Performs the filling of the DS
    	---
    DS  (me) 
	returns  ShapesDataStructure from BooleanOperations; 
    	---C++:  return  const&     	
    	---Purpose:
    	--- Selector           
    	---
    InterfPool (me) 
    	returns  InterferencePool from BOPTools;
    	---C++:  return const &   
    	---Purpose:
    	--- Selector           
    	---
    PavePool  (me) 
    	returns  PavePool from BOPTools;  
    	---C++:  return  const&  
    	---Purpose:
    	--- Selector           
    	---
    CommonBlockPool(me) 
    	returns  CommonBlockPool from BOPTools; 
    	---C++:return const &	 
    	---Purpose:
    	--- Selector           
    	---
    SplitShapesPool(me)  
    	returns  SplitShapesPool from BOPTools;
    	---C++:return const &	
    	---Purpose:
    	--- Selector           
    	---
    PaveFiller (me) 
    	returns  PaveFiller from BOPTools; 
    	---C++:return const &	
    	---Purpose:
    	--- Selector           
    	---
    Clear   (me:out) 
    	is  private; 
    	---Purpose:
    	--- Clear contents of the DS and the interferences' pool            
    	---
    IsNewFiller(me) 
    	returns Boolean from  Standard; 
    	---Purpose: 
    	--- Returns TRUE if new DS and the interferences' pool has been created           
    	---
    SetNewFiller(me;  
    	    aFlag:Boolean from  Standard);	
    	---Purpose:
    	--- Modifier           
    	---
    IsDone(me) 
    	returns  Boolean  from  Standard;  
    	---Purpose:
    	--- Selector               
    	---
    SplitFacePool(me)
    	---C++: return const&
    	---C++: inline
    	returns DataMapOfIntegerListOfInteger from TColStd;

    ChangeSplitFacePool(me: out)
    	---C++: return &
    	---C++: inline
    	returns DataMapOfIntegerListOfInteger from TColStd;
     
    --modified by NIZHNY-MKK  Tue Sep  7 12:03:34 2004
    TreatCompound(myclass; theShape: Shape from TopoDS;
    	    	    	   theShapeResult: out Shape from TopoDS)
    	returns Integer from Standard;
    	---Purpose: Finds sub-shapes of theShape having equal type
	--          and store them in theShapeResult.
	--          Returns the following status codes:
	--          0 - OK
	--          1 - Error: theShape is a COMPSOLID
	--          2 - Error: theShape is not a COMPOUND
	--          3 - Error: theShape contains shapes of COMPSOLID type
	--          4 - Error: Subshape of theShape have unkown type
	--          5 - Error: theShape contains shapes of different type

fields
    myShape1      :  Shape from TopoDS;
    myShape2      :  Shape from TopoDS;
    myDS          :  PShapesDataStructure from BooleanOperations; 
    myInterfPool  :  PInterferencePool    from BOPTools;  
    myPaveFiller  :  PPaveFiller from BOPTools;   
    myIsDone      :  Boolean from  Standard; 
    mySplitFacePool:  DataMapOfIntegerListOfInteger from TColStd;
     
    myNewFiller   :  Boolean from  Standard;       
    
end DSFiller;