b311480e |
1 | -- Created on: 1997-10-08 |
2 | -- Created by: Olga KOULECHOVA |
3 | -- Copyright (c) 1997-1999 Matra Datavision |
4 | -- Copyright (c) 1999-2012 OPEN CASCADE SAS |
5 | -- |
6 | -- The content of this file is subject to the Open CASCADE Technology Public |
7 | -- License Version 6.5 (the "License"). You may not use the content of this file |
8 | -- except in compliance with the License. Please obtain a copy of the License |
9 | -- at http://www.opencascade.org and read it completely before using this file. |
10 | -- |
11 | -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its |
12 | -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France. |
13 | -- |
14 | -- The Original Code and all software distributed under the License is |
15 | -- distributed on an "AS IS" basis, without warranty of any kind, and the |
16 | -- Initial Developer hereby disclaims all such warranties, including without |
17 | -- limitation, any warranties of merchantability, fitness for a particular |
18 | -- purpose or non-infringement. Please see the License for the specific terms |
19 | -- and conditions governing the rights and limitations under the License. |
20 | |
7fd59977 |
21 | |
22 | deferred class RibSlot from BRepFeat inherits MakeShape from BRepBuilderAPI |
23 | |
24 | ---Purpose: Provides functions to build mechanical features. |
25 | -- Mechanical features include ribs - protrusions and grooves (or slots) - depressions along |
26 | -- planar (linear) surfaces or revolution surfaces. The semantics of mechanical features is built |
27 | -- around giving thickness to a contour. This thickness can either be unilateral - on one side |
28 | -- of the contour - or bilateral - on both sides. |
29 | -- As in the semantics of form features, the thickness is defined by construction of shapes |
30 | -- in specific contexts. The development contexts differ, however,in case of mechanical features. |
31 | -- Here they include extrusion: |
32 | -- - to a limiting face of the basis shape |
33 | -- - to or from a limiting plane |
34 | -- - to a height. |
35 | |
36 | uses Shape from TopoDS, |
37 | Face from TopoDS, |
38 | Wire from TopoDS, |
39 | Edge from TopoDS, |
40 | Vertex from TopoDS, |
41 | ShapeModification from BRepBuilderAPI, |
42 | DataMapOfShapeListOfShape from TopTools, |
43 | ListOfShape from TopTools, |
44 | SequenceOfCurve from TColGeom, |
45 | Plane from Geom, |
46 | Curve from Geom, |
47 | DataMapOfShapeShape from TopTools, |
48 | |
49 | Gluer from LocOpe, |
50 | HBuilder from TopOpeBRepBuild, |
51 | PerfSelection from BRepFeat, |
52 | Pnt from gp, |
53 | Dir from gp, |
54 | StatusError from BRepFeat, |
55 | --modified by NIZNHY-PKV Thu Mar 21 17:09:08 2002 f |
56 | BooleanOperation from BRepAlgoAPI, |
57 | --modified by NIZNHY-PKV Thu Mar 21 17:09:11 2002 t |
58 | HistoryCollector from BOP |
59 | is |
60 | |
61 | Initialize; |
62 | |
63 | ---Purpose: Redefines the empty constructor. |
64 | ---C++: inline |
65 | |
66 | |
67 | --- Methods redefined from BRepBuilderAPI_MakeShape |
68 | |
69 | IsDeleted(me : in out ; F: Shape from TopoDS) |
70 | returns Boolean from Standard |
71 | is redefined; |
72 | ---Purpose: Returns true if F a TopoDS_Shape of type edge or face has been deleted. |
73 | |
74 | Modified(me: in out; F: Shape from TopoDS) |
75 | ---Purpose: Returns the list of generated Faces F. This list may be empty. |
76 | ---C++: return const & |
77 | returns ListOfShape from TopTools |
78 | is redefined; |
79 | |
80 | |
81 | Generated(me: in out; S: Shape from TopoDS) |
82 | ---Purpose: Returns a list TopTools_ListOfShape of the faces S created in the shape. |
83 | ---C++: return const & |
84 | returns ListOfShape from TopTools |
85 | is redefined; |
86 | |
87 | |
88 | FirstShape (me) |
89 | ---Purpose: Returns the list of shapes created at the bottom of |
90 | -- the created form. It may be an empty list. |
91 | returns ListOfShape from TopTools; |
92 | ---C++: return const& |
93 | |
94 | |
95 | LastShape (me) |
96 | ---Purpose: Returns the list of shapes created at the top of the |
97 | -- created form. It may be an empty list. |
98 | returns ListOfShape from TopTools; |
99 | ---C++: return const& |
100 | |
101 | LFPerform(me: in out) |
102 | ---Purpose: General perform method... |
103 | |
104 | is static protected; |
105 | |
106 | FacesForDraft(me) |
107 | ---Purpose: Returns a list of the limiting and glueing faces |
108 | -- generated by the feature. These faces did not originally exist in the basis shape. |
109 | -- The list provides the information necessary for |
110 | -- subsequent addition of a draft to a face. It may be an empty list. |
111 | -- If a face has tangent edges, no draft is possible, and the tangent edges must |
112 | -- subsequently be removed if you want to add a draft to the face. |
113 | returns ListOfShape from TopTools; |
114 | ---C++: return const& |
115 | |
116 | NewEdges(me) |
117 | ---Purpose: Returns a list of the limiting and glueing edges |
118 | -- generated by the feature. These edges did not originally exist in the basis shape. |
119 | -- The list provides the information necessary for |
120 | -- subsequent addition of fillets. It may be an empty list. |
121 | returns ListOfShape from TopTools; |
122 | ---C++: return const& |
123 | |
124 | TgtEdges(me) |
125 | ---Purpose: Returns a list of the tangent edges among the |
126 | -- limiting and glueing edges generated by the |
127 | -- feature. These edges did not originally exist in |
128 | -- the basis shape and are tangent to the face |
129 | -- against which the feature is built. |
130 | -- The list provides the information necessary for |
131 | -- subsequent addition of fillets. It may be an empty list. |
132 | -- If an edge is tangent, no fillet is possible, and |
133 | -- the edge must subsequently be removed if you want to add a fillet. |
134 | returns ListOfShape from TopTools; |
135 | ---C++: return const& |
136 | |
137 | CheckPoint(me: in out; |
138 | e : Edge from TopoDS; |
139 | bnd : Real from Standard; |
140 | Pln : Plane from Geom) |
141 | returns Pnt from gp |
142 | is static protected; |
143 | |
144 | |
145 | Normal(me: in out; |
146 | F : Face from TopoDS; |
147 | P : Pnt from gp) |
148 | returns Dir from gp |
149 | is static protected; |
150 | |
151 | |
152 | IntPar(myclass; |
153 | C : Curve from Geom; |
154 | P : Pnt from gp) |
155 | returns Real from Standard; |
156 | |
157 | |
158 | EdgeExtention(me: in out; |
159 | e : in out Edge from TopoDS; |
160 | bnd : Real from Standard; |
161 | FirstLast : Boolean from Standard) |
162 | is static protected; |
163 | |
164 | |
165 | ChoiceOfFaces(myclass; |
166 | faces : in out ListOfShape from TopTools; |
167 | cc : Curve from Geom; |
168 | par : Real from Standard; |
169 | bnd : Real from Standard; |
170 | Pln : Plane from Geom) |
171 | returns Face from TopoDS; |
172 | |
173 | |
174 | HeightMax(me: in out; |
175 | theSbase : Shape from TopoDS; |
176 | theSUntil : Shape from TopoDS; |
177 | p1 : in out Pnt from gp; |
178 | p2 : in out Pnt from gp) |
179 | returns Real from Standard |
180 | is static protected; |
181 | |
182 | ExtremeFaces(me: in out; |
183 | RevolRib : Boolean from Standard; |
184 | bnd : Real from Standard; |
185 | Pln : Plane from Geom; |
186 | FirstEdge : in out Edge from TopoDS; |
187 | LastEdge : in out Edge from TopoDS; |
188 | FirstFace : in out Face from TopoDS; |
189 | LastFace : in out Face from TopoDS; |
190 | FirstVertex : in out Vertex from TopoDS; |
191 | LastVertex : in out Vertex from TopoDS; |
192 | OnFirstFace : in out Boolean from Standard; |
193 | OnLastFace : in out Boolean from Standard; |
194 | PtOnFirstEdge : in out Boolean from Standard; |
195 | PtOnLastEdge : in out Boolean from Standard; |
196 | OnFirstEdge : in out Edge from TopoDS; |
197 | OnLastEdge : in out Edge from TopoDS) |
198 | returns Boolean from Standard |
199 | is static protected; |
200 | |
201 | |
202 | PtOnEdgeVertex(me: in out; |
203 | RevolRib : Boolean from Standard; |
204 | shape : Shape from TopoDS; |
205 | point : Pnt from gp; |
206 | FirstVertex : Vertex from TopoDS; |
207 | LastVertex : Vertex from TopoDS; |
208 | PtOnEdge : in out Boolean from Standard; |
209 | OnEdge : in out Edge from TopoDS; |
210 | PtOnVertex : in out Boolean from Standard; |
211 | OnVertex : in out Vertex from TopoDS) |
212 | is static protected; |
213 | |
214 | |
215 | SlidingProfile(me: in out; |
216 | Prof : in out Face from TopoDS; |
217 | RevolRib : Boolean from Standard; |
218 | myTol : Real from Standard; |
219 | Concavite : in out Integer from Standard; |
220 | myPln : Plane from Geom; |
221 | BndFace : Face from TopoDS; |
222 | CheckPnt : Pnt from gp; |
223 | FirstFace : Face from TopoDS; |
224 | LastFace : Face from TopoDS; |
225 | FirstVertex : Vertex from TopoDS; |
226 | LastVertex : Vertex from TopoDS; |
227 | FirstEdge : Edge from TopoDS; |
228 | LastEdge : Edge from TopoDS) |
229 | returns Boolean from Standard |
230 | is static protected; |
231 | |
232 | |
233 | NoSlidingProfile(me: in out; |
234 | Prof : in out Face from TopoDS; |
235 | RevolRib : Boolean from Standard; |
236 | myTol : Real from Standard; |
237 | Concavite : in out Integer from Standard; |
238 | myPln : Plane from Geom; |
239 | bnd : Real from Standard; |
240 | BndFace : Face from TopoDS; |
241 | CheckPnt : Pnt from gp; |
242 | FirstFace : Face from TopoDS; |
243 | LastFace : Face from TopoDS; |
244 | FirstVertex : Vertex from TopoDS; |
245 | LastVertex : Vertex from TopoDS; |
246 | FirstEdge : Edge from TopoDS; |
247 | LastEdge : Edge from TopoDS; |
248 | OnFirstFace : Boolean from Standard; |
249 | OnLastFace : Boolean from Standard) |
250 | returns Boolean from Standard |
251 | is static protected; |
252 | |
253 | |
254 | UpdateDescendants(me: in out; G: Gluer from LocOpe) |
255 | |
256 | is static protected; |
257 | ---Purpose: Updates the data structures of descendant |
258 | -- shapes during the glueing operation.Returns the modified, generated |
259 | -- and deleted faces during the course of the glueing operation. |
260 | |
261 | UpdateDescendants(me: in out; |
262 | B : HBuilder from TopOpeBRepBuild; |
263 | SResult : Shape from TopoDS; |
264 | SkipFace : Boolean from Standard = Standard_False) |
265 | |
266 | is static protected; |
267 | |
268 | --modified by NIZNHY-PKV Thu Mar 21 18:42:53 2002 f |
269 | UpdateDescendants(me: in out; |
270 | aBOP: BooleanOperation from BRepAlgoAPI; |
271 | SResult : Shape from TopoDS; |
272 | SkipFace : Boolean from Standard = Standard_False) |
273 | is static protected; |
274 | --modified by NIZNHY-PKV Thu Mar 21 18:42:50 2002 t |
275 | |
276 | UpdateDescendants(me: in out; |
277 | aBOP: HistoryCollector from BOP; |
278 | SResult : Shape from TopoDS; |
279 | SkipFace : Boolean from Standard = Standard_False) |
280 | is static protected; |
281 | ---Purpose: Updates the data structures of descendant |
282 | -- shapes during the glueing operation. |
283 | -- Returns the modified, generated and deleted faces during the course of the |
284 | -- glueing operation; furnishes the arguments of the resulting shape SResult using the |
285 | -- builder B to determine the type of modification such as orientation and splitting; |
286 | -- checks to see that the SResult belongs to the data structure of the original shape. |
287 | |
288 | CurrentStatusError(me) |
289 | returns StatusError from BRepFeat; |
290 | |
291 | fields |
292 | |
293 | myFirstPnt : Pnt from gp is protected; |
294 | myLastPnt : Pnt from gp is protected; |
295 | myFuse : Boolean from Standard is protected; |
296 | mySliding : Boolean from Standard is protected; |
297 | myMap : DataMapOfShapeListOfShape from TopTools is protected; |
298 | myLFMap : DataMapOfShapeListOfShape from TopTools is protected; |
299 | myFShape : Shape from TopoDS is protected; |
300 | myLShape : Shape from TopoDS is protected; |
301 | |
302 | myPerfSelection: PerfSelection from BRepFeat is protected; |
303 | |
304 | myWire : Wire from TopoDS is protected; |
305 | mySbase : Shape from TopoDS is protected; |
306 | mySkface : Face from TopoDS is protected; |
307 | myPbase : Face from TopoDS is protected; |
308 | myGShape : Shape from TopoDS is protected; |
309 | mySUntil : Shape from TopoDS is protected; |
310 | myGluedF : DataMapOfShapeShape from TopTools is protected; |
311 | myNewEdges: ListOfShape from TopTools is protected; |
312 | myTgtEdges: ListOfShape from TopTools is protected; |
313 | myFacesForDraft: ListOfShape from TopTools is protected; |
314 | |
315 | myStatusError : StatusError from BRepFeat is protected; |
316 | |
317 | end RibSlot; |