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