0023948: Wrong intersection between a surface of revolution and a plane.
[occt.git] / src / BRepOffset / BRepOffset_MakeOffset.cdl
CommitLineData
b311480e 1-- Created on: 1995-10-26
2-- Created by: Yves FRICAUD
3-- Copyright (c) 1995-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--
d5f74e42 8-- This library is free software; you can redistribute it and/or modify it under
9-- the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 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
17-- Modified by skv - Tue Mar 15 16:17:37 2005
18-- Add methods for supporting history.
19
20class MakeOffset from BRepOffset
21
22 ---Purpose:
23
24uses
25 Image from BRepAlgo,
26 AsDes from BRepAlgo,
27 Analyse from BRepOffset,
28 Mode from BRepOffset,
29 DataMapOfShapeOffset from BRepOffset,
30 Error from BRepOffset,
31 Inter3d from BRepOffset,
32 DataMapOfShapeReal from TopTools,
33 Shape from TopoDS,
34 JoinType from GeomAbs,
35 Face from TopoDS,
36 Edge from TopoDS,
37 MapOfShape from TopTools,
975ec82a 38 IndexedMapOfShape from TopTools,
7fd59977 39 ListOfShape from TopTools,
40 MakeLoops from BRepOffset
41
42is
43
44 Create;
45
46 Create ( S : Shape from TopoDS;
47 Offset : Real from Standard;
48 Tol : Real from Standard;
49 Mode : Mode from BRepOffset = BRepOffset_Skin;
50 Intersection : Boolean from Standard = Standard_False;
51 SelfInter : Boolean from Standard = Standard_False;
52 Join : JoinType from GeomAbs = GeomAbs_Arc;
53 Thickening : Boolean from Standard = Standard_False)
54 returns MakeOffset from BRepOffset;
55
56---Category: Initialization.
57
58 Initialize (me : in out;
59 S : Shape from TopoDS;
60 Offset : Real from Standard;
61 Tol : Real from Standard;
62 Mode : Mode from BRepOffset = BRepOffset_Skin;
63 Intersection : Boolean from Standard = Standard_False;
64 SelfInter : Boolean from Standard = Standard_False;
65 Join : JoinType from GeomAbs = GeomAbs_Arc;
66 Thickening : Boolean from Standard = Standard_False)
67 is static;
68
69 Clear (me : in out)
70 is static;
71
72 AddFace (me : in out; F : Face from TopoDS) is static;
73 ---Purpose: Add Closing Faces, <F> has to be in the initial
74 -- shape S.
75
76 SetOffsetOnFace (me : in out;
77 F : Face from TopoDS;
78 Off : Real from Standard) is static;
79 ---Purpose: set the offset <Off> on the Face <F>
80
81
82---Category: Computation.
83
84 MakeOffsetShape (me : in out) is static;
85
86 MakeThickSolid (me : in out) is static;
87
88---Category: Querying.
89
90 GetAnalyse(me)
91 ---C++: return const &
92 returns Analyse from BRepOffset
93 is static;
94
95 IsDone (me) returns Boolean from Standard
96 is static;
97
98 Shape (me)
99 ---C++: return const &
100 returns Shape from TopoDS
101 is static;
102
103 Error (me) returns Error from BRepOffset;
104 ---Purpose: returns information if IsDone() = FALSE.
105
106
107 OffsetFacesFromShapes (me)
108 ---Purpose: Returns <Image> containing links between initials
109 -- shapes and offset faces.
110 ---C++: return const &
111 returns Image from BRepAlgo
112 is static;
113
114-- Modified by skv - Tue Mar 15 16:17:37 2005 Begin
115-- Query offset join type.
116
117 GetJoinType(me)
118 ---Purpose: Returns myJoin.
119 returns JoinType from GeomAbs
120 is static;
121
122-- Add methods for supporting history.
123
124 OffsetEdgesFromShapes (me)
125 ---Purpose: Returns <Image> containing links between initials
126 -- shapes and offset edges.
127 ---C++: return const &
128 returns Image from BRepAlgo
129 is static;
130
131-- Modified by skv - Tue Mar 15 16:17:37 2005 End
132
133 ClosingFaces (me)
134 ---Purpose: Returns the list of closing faces stores by AddFace
135 ---C++: return const &
975ec82a 136 returns IndexedMapOfShape from TopTools
7fd59977 137 is static;
138
139---Category: private methods
140
141 BuildOffsetByArc ( me : in out )
142 is static private;
143
144 BuildOffsetByInter ( me : in out )
145 is static private;
146
147 SelfInter (me : in out ;
148 Modif : in out MapOfShape from TopTools)
149 is static private;
150
151 Intersection3D (me : in out;
152 Inter : in out Inter3d from BRepOffset)
153 is static private;
154
155 Intersection2D ( me : in out ;
975ec82a
J
156 Modif : IndexedMapOfShape from TopTools;
157 NewEdges : IndexedMapOfShape from TopTools)
7fd59977 158 is static private;
159
160 MakeLoops ( me : in out ;
975ec82a 161 Modif : in out IndexedMapOfShape from TopTools)
7fd59977 162 is static private;
163
164 MakeLoopsOnContext ( me : in out ;
165 Modif : in out MapOfShape from TopTools)
166 is static private;
167
168 MakeFaces ( me : in out ;
975ec82a 169 Modif : in out IndexedMapOfShape from TopTools)
7fd59977 170 is static private;
171
172 MakeShells (me : in out )
173 is static private;
174
175 SelectShells (me : in out)
176 is static private;
177
178 EncodeRegularity( me : in out)
179 is static private;
180
181 MakeSolid (me : in out)
182 is static private;
183
184 ToContext (me : in out;
185 MapSF : in out DataMapOfShapeOffset from BRepOffset)
186 is static private;
187
188 UpdateFaceOffset (me: in out)
189 ---Purpose: Private method use to update the map face<->offset
190 is static private;
191
192 CorrectConicalFaces (me: in out)
193 ---Purpose: Private method used to correct degenerated edges on conical faces
194 is static private;
195
196 MakeMissingWalls (me: in out)
197 ---Purpose: Private method used to build walls for thickening the shell
198 is static private;
199
200fields
201
202 myOffset : Real from Standard;
203 myTol : Real from Standard;
204 myShape : Shape from TopoDS; -- Initial
205 myMode : Mode from BRepOffset;
206 myInter : Boolean from Standard;
207 mySelfInter : Boolean from Standard;
208 myJoin : JoinType from GeomAbs;
209 myThickening : Boolean from Standard;
210
211 myFaceOffset : DataMapOfShapeReal from TopTools;
212
975ec82a
J
213 myFaces : IndexedMapOfShape from TopTools;
214 myAnalyse : Analyse from BRepOffset;
7fd59977 215
216 myOffsetShape : Shape from TopoDS; -- Result
217 myInitOffsetFace : Image from BRepAlgo;
218 myInitOffsetEdge : Image from BRepAlgo;
219 myImageOffset : Image from BRepAlgo;
220 myWalls : ListOfShape from TopTools;
221 myAsDes : AsDes from BRepAlgo;
222
223 myDone : Boolean from Standard;
224 myError : Error from BRepOffset;
225
226 myMakeLoops : MakeLoops from BRepOffset;
227
228end MakeOffset;