4e57c75e |
1 | -- Created on: 2004-09-03 |
2 | -- Created by: Oleg FEDYAEV |
973c2be1 |
3 | -- Copyright (c) 2004-2014 OPEN CASCADE SAS |
4e57c75e |
4 | -- |
973c2be1 |
5 | -- This file is part of Open CASCADE Technology software library. |
4e57c75e |
6 | -- |
d5f74e42 |
7 | -- This library is free software; you can redistribute it and/or modify it under |
8 | -- the terms of the GNU Lesser General Public License version 2.1 as published |
973c2be1 |
9 | -- by the Free Software Foundation, with special exception defined in the file |
10 | -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT |
11 | -- distribution for complete text of the license and disclaimer of any warranty. |
4e57c75e |
12 | -- |
973c2be1 |
13 | -- Alternatively, this file may be used under the terms of Open CASCADE |
14 | -- commercial license or contractual agreement. |
4e57c75e |
15 | |
16 | class ArgumentAnalyzer from BOPAlgo |
b1d15f53 |
17 | inherits Algo from BOPAlgo |
4e57c75e |
18 | ---Purpose: check the validity of argument(s) for Boolean Operations |
19 | |
20 | uses |
21 | Shape from TopoDS, |
22 | Operation from BOPAlgo, |
23 | CheckStatus from BOPAlgo, |
24 | ShapeEnum from TopAbs, |
b1d15f53 |
25 | ListOfCheckResult from BOPAlgo, |
26 | DataMapOfShapeReal from BOPCol |
4e57c75e |
27 | |
28 | is |
29 | Create |
30 | returns ArgumentAnalyzer; |
b1d15f53 |
31 | ---C++: alias "Standard_EXPORT virtual ~BOPAlgo_ArgumentAnalyzer();" |
4e57c75e |
32 | ---Purpose: empty constructor |
33 | |
34 | SetShape1(me: in out; TheShape: Shape from TopoDS); |
35 | ---Purpose: sets object shape |
36 | |
37 | SetShape2(me: in out; TheShape: Shape from TopoDS); |
38 | ---Purpose: sets tool shape |
39 | |
40 | GetShape1(me) |
41 | returns Shape from TopoDS; |
42 | ---C++: return const & |
43 | ---Purpose: returns object shape; |
44 | |
45 | GetShape2(me) |
46 | returns Shape from TopoDS; |
47 | ---C++: return const & |
48 | ---Purpose: returns tool shape |
49 | |
50 | ---options |
51 | OperationType(me: in out) |
52 | returns Operation from BOPAlgo; |
53 | ---C++: return & |
54 | ---Purpose: returns ref |
55 | |
56 | StopOnFirstFaulty(me: in out) |
57 | returns Boolean from Standard; |
58 | ---C++: return & |
59 | ---Purpose: returns ref |
60 | |
61 | ArgumentTypeMode(me: in out) |
62 | returns Boolean from Standard; |
63 | ---C++: return & |
64 | ---C++: inline |
65 | ---Purpose: Returns (modifiable) mode |
66 | -- that means checking types of shapes. |
67 | |
68 | Prepare(me: in out) |
69 | is protected; |
70 | ---Purpose: Prepares data; |
71 | |
72 | SelfInterMode(me: in out) |
73 | returns Boolean from Standard; |
74 | ---C++: return & |
75 | ---C++: inline |
76 | ---Purpose: Returns (modifiable) mode that means |
77 | -- checking of self-intersection of shapes. |
78 | |
79 | SmallEdgeMode(me: in out) |
80 | returns Boolean from Standard; |
81 | ---C++: return & |
82 | ---C++: inline |
83 | ---Purpose: Returns (modifiable) mode that means |
84 | -- checking of small edges. |
85 | |
86 | RebuildFaceMode(me: in out) |
87 | returns Boolean from Standard; |
88 | ---C++: return & |
89 | ---C++: inline |
90 | ---Purpose: Returns (modifiable) mode that means |
91 | -- checking of possibility to split or rebuild faces. |
92 | |
93 | TangentMode(me: in out) |
94 | returns Boolean from Standard; |
95 | ---C++: return & |
96 | ---C++: inline |
97 | ---Purpose: Returns (modifiable) mode that means |
98 | -- checking of tangency between subshapes. |
99 | |
100 | MergeVertexMode(me: in out) |
101 | returns Boolean from Standard; |
102 | ---C++: return & |
103 | ---C++: inline |
104 | ---Purpose: Returns (modifiable) mode that means |
105 | -- checking of problem of merging vertices. |
106 | |
107 | MergeEdgeMode(me: in out) |
108 | returns Boolean from Standard; |
109 | ---C++: return & |
110 | ---C++: inline |
111 | ---Purpose: Returns (modifiable) mode that means |
112 | -- checking of problem of merging edges. |
113 | |
0e09ee8e |
114 | ContinuityMode(me: in out) |
115 | returns Boolean from Standard; |
116 | ---C++: return & |
117 | ---C++: inline |
118 | ---Purpose: Returns (modifiable) mode that means |
119 | -- checking of problem of continuity of the shape. |
120 | |
e98e3990 |
121 | CurveOnSurfaceMode(me: in out) |
122 | returns Boolean from Standard; |
123 | ---C++: return & |
124 | ---C++: inline |
125 | ---Purpose: Returns (modifiable) mode that means |
126 | -- checking of problem of invalid curve on surface. |
127 | |
4e57c75e |
128 | --- |
129 | Perform(me: out); |
130 | ---Purpose: performs analysis |
131 | |
132 | HasFaulty(me) |
133 | returns Boolean from Standard; |
134 | ---Purpose: result of test |
135 | |
136 | GetCheckResult(me) |
137 | returns ListOfCheckResult from BOPAlgo; |
138 | ---C++: return const & |
139 | ---Purpose: returns a result of test |
140 | |
141 | --- protected |
142 | TestTypes(me: out) |
143 | is protected; |
144 | |
145 | TestSelfInterferences(me: out) |
146 | is protected; |
147 | |
148 | TestSmallEdge(me: out) |
149 | is protected; |
150 | |
151 | TestRebuildFace(me: out) |
152 | is protected; |
153 | |
154 | TestTangent(me: out) |
155 | is protected; |
156 | |
157 | TestMergeSubShapes(me: out; theType: ShapeEnum from TopAbs) |
158 | is protected; |
159 | |
160 | TestMergeVertex(me: out) |
161 | is protected; |
162 | |
163 | TestMergeEdge(me: out) |
164 | is protected; |
165 | |
0e09ee8e |
166 | TestContinuity(me: out) |
e98e3990 |
167 | is protected; |
168 | |
169 | TestCurveOnSurface(me: out) |
0e09ee8e |
170 | is protected; |
171 | |
172 | -- TestMergeFace(me: out) |
b1d15f53 |
173 | -- is protected; |
4e57c75e |
174 | |
b1d15f53 |
175 | SetFuzzyValue(me:out; |
176 | theFuzz : Real from Standard); |
177 | ---C++: inline |
178 | ---Purpose: Sets the additional tolerance |
179 | |
180 | FuzzyValue(me) |
181 | returns Real from Standard; |
182 | ---C++: inline |
183 | ---Purpose: Returns the additional tolerance |
184 | |
185 | UpdateTolerances(me:out) |
186 | is protected; |
187 | ---Purpose: Updates the shapes tolerance values. |
188 | |
189 | SetDefaultTolerances(me:out) |
190 | is protected; |
191 | ---Purpose: Reverts the tolerance values for all entities to default values. |
4e57c75e |
192 | |
193 | fields |
194 | |
e98e3990 |
195 | myShape1 : Shape from TopoDS; |
196 | myShape2 : Shape from TopoDS; |
197 | myStopOnFirst : Boolean from Standard; |
198 | myOperation : Operation from BOPAlgo; |
199 | myArgumentTypeMode : Boolean from Standard; |
200 | mySelfInterMode : Boolean from Standard; |
201 | mySmallEdgeMode : Boolean from Standard; |
202 | myRebuildFaceMode : Boolean from Standard; |
203 | myTangentMode : Boolean from Standard; |
204 | myMergeVertexMode : Boolean from Standard; |
205 | myMergeEdgeMode : Boolean from Standard; |
206 | myContinuityMode : Boolean from Standard; |
207 | myCurveOnSurfaceMode : Boolean from Standard; |
208 | myEmpty1, myEmpty2 : Boolean from Standard; |
b1d15f53 |
209 | myResult : ListOfCheckResult from BOPAlgo; |
210 | myFuzzyValue : Real from Standard; |
211 | myToleranceMap : DataMapOfShapeReal from BOPCol; |
212 | |
4e57c75e |
213 | end ArgumentAnalyzer; |