0023024: Update headers of OCCT files
[occt.git] / src / BRepFill / BRepFill.cdl
CommitLineData
b311480e 1-- Created on: 1994-03-03
2-- Created by: Joelle CHAUVET
3-- Copyright (c) 1994-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-- Modified: Mon Nov 3 10:24:07 1997
7fd59977 22-- new class CurveConstraint
23-- Modified: Mon Jan 12 10:46:37 1998
7fd59977 24-- new method Organize
25-- Modified: Mon Feb 23 09:28:33 1998
7fd59977 26-- new methods SameNumber, ComputeACR, InsertACR
27-- for sections with different number of elements
28-- Modified: Thu Apr 30 15:27:04 1998
7fd59977 29-- methods Organize and SameNumber are dispatched in
30-- new methods SearchOrigin and SameNumberByACR for open wires
31-- and SameNumberByPolarMethod and ComputeOrigin for closed wires
32-- Modified: Tue Nov 3 10:41:06 1998
7fd59977 33-- add classe CompatibleWires
7fd59977 34
35
36package BRepFill
37
38
39uses
40 MMgt,
41 TCollection,
42 TColStd,
43 GeomAbs,
44 gp,
45 Bnd,
46 TopLoc,
47 TColgp,
48 MAT,
49 Geom2d,
50 TColGeom2d,
51 TopAbs,
52 TopoDS,
53 TopTools,
54 Geom,
55 TColGeom,
56 Geom2dAdaptor,
57 Approx,
58 Bisector,
59 BRep,
60 BRepTools,
61 BRepAlgo,
62 BRepSweep,
63 GeomFill,
64 BRepMAT2d,
65 StdFail,
66 GeomPlate,
67 Adaptor3d,
68 Law,
69 GeomLProp
70
71is
72 enumeration TransitionStyle
73 is Modified, Right, Round end;
74
75-- private class FilledPair;
76 ---Purpose: A pair of bound shapes with the result.
77
78
79 class Generator;
80 ---Purpose: Compute a topological surface ( a shell) using
81 -- generating wires. The face of the shell will be
82 -- ruled surfaces through the wires.
83 -- The wires must have the same number of edges.
84
85 deferred class SectionLaw;
86 class ShapeLaw;
87 class NSections;
88
89 class Draft;
90
91 deferred class LocationLaw;
92 class DraftLaw;
93 class Edge3DLaw;
94 class EdgeOnSurfLaw;
95 class ACRLaw;
96
97 class Pipe;
98 ---Purpose: Computes a topological shape using a wire
99 -- (spine) and a shape (profile).
100 class PipeShell;
101 ---Purpose: Computes a topological shell using some wires --
102 -- (spines and profiles) and diplacement option
103
104
105 class Evolved;
106 ---Purpose: Computes an evolved volum using a generating
107 -- wire and a profile.
108
109 class Sweep;
110 ---Purpose: Computes an Sweep shell using a generating
111 -- wire, an SectionLaw and an LocationLaw.
112
113
114 class CompatibleWires;
115 ---Purpose: Computes Wires with good orientation and origin in order
116 -- to generate a shell not twisted.
117
118
119 class OffsetWire;
120 ---Purpose: Computes the offset of a Wire or the Wires contained
121 -- in a Face.
122 -- The Wire or the Face must be planar.
123
124 class OffsetAncestors;
125
126
127 class ListOfOffsetWire instantiates
128 List from TCollection (OffsetWire from BRepFill);
129 private class ApproxSeewing;
130
131 private class MultiLine;
132
133 private class MultiLineTool;
134
135 private class ComputeCLine instantiates
136 ComputeCLine from Approx ( MultiLine, MultiLineTool);
137
138
139 private class TrimSurfaceTool;
140 ---Purpose: Compute the Pcurves and the 3d curves resulting
141 -- of the trimming of a face by an extruded surface.
142
143 private class TrimEdgeTool;
144 ---Purpose: Geometric Tool using to construct Offset Wires.
145
146 private class SectionPlacement;
147
148 private class Section;
149
150 --class TrimCorner;
151
152--modified by NIZHNY-MKK Tue Oct 21 17:43:15 2003
153 class TrimShellCorner;
154
155 private class SequenceOfSection instantiates
156 Sequence from TCollection (Section);
157
158 class DataMapOfNodeDataMapOfShapeShape instantiates
159 DataMap from TCollection (Node from MAT,
86b3805f
J
160 DataMapOfShapeShape from TopTools,
161 MapTransientHasher from TColStd );
7fd59977 162
163 class DataMapOfNodeShape instantiates
164 DataMap from TCollection (Node from MAT,
165 Shape from TopoDS,
166 MapTransientHasher from TColStd );
167
168 class DataMapOfShapeDataMapOfShapeListOfShape instantiates
169 DataMap from TCollection (Shape from TopoDS,
170 DataMapOfShapeListOfShape from TopTools,
171 ShapeMapHasher from TopTools );
172
173 class DataMapOfShapeSequenceOfReal instantiates
174 DataMap from TCollection (Shape from TopoDS,
175 SequenceOfReal from TColStd,
176 ShapeMapHasher from TopTools );
177
178 class DataMapOfShapeSequenceOfPnt instantiates
179 DataMap from TCollection (Shape from TopoDS,
180 SequenceOfPnt from TColgp,
181 ShapeMapHasher from TopTools );
182
183 class DataMapOfOrientedShapeListOfShape instantiates
184 DataMap from TCollection (Shape from TopoDS,
185 ListOfShape from TopTools,
186 OrientedShapeMapHasher from TopTools);
187
86b3805f
J
188 class IndexedDataMapOfOrientedShapeListOfShape instantiates
189 IndexedDataMap from TCollection (Shape from TopoDS,
190 ListOfShape from TopTools,
191 OrientedShapeMapHasher from TopTools);
192
7fd59977 193 class CurveConstraint ;
194 ---Purpose: same as CurveConstraint from GeomPlate
195 -- with BRepAdaptor_Surface instead of
196 -- GeomAdaptor_Surface
197 -- inherits CurveConstraint from GeomPlate
198
199 class Filling;
200 ---Purpose: N-Side Filling
201 -- This algorithm avoids to build a face from:
202 -- * a set of edges defining the bounds of the face and some
203 -- constraints the surface of the face has to satisfy
204 -- * a set of edges and points defining some constraints
205 -- the support surface has to satisfy
206 -- * an initial surface to deform for satisfying the constraints
207 -- * a set of parameters to control the constraints.
208
209 private class FaceAndOrder;
210
211 private class EdgeFaceAndOrder;
212
213 private class SequenceOfFaceAndOrder instantiates
214 Sequence from TCollection (FaceAndOrder from BRepFill);
215
216 private class SequenceOfEdgeFaceAndOrder instantiates
217 Sequence from TCollection (EdgeFaceAndOrder from BRepFill);
218
219 Face( Edge1 : Edge from TopoDS;
220 Edge2 : Edge from TopoDS )
221 ---Purpose: Computes a ruled surface between two edges.
222 returns Face from TopoDS;
223
224 Shell( Wire1 : Wire from TopoDS;
225 Wire2 : Wire from TopoDS )
226 ---Purpose: Computes a ruled surface between two wires.
227 -- The wires must have the same number of edges.
228 returns Shell from TopoDS;
229
230 Axe (Spine : Shape from TopoDS;
231 Profile : Wire from TopoDS;
232 AxeProf : in out Ax3 from gp;
233 ProfOnSpine : in out Boolean from Standard;
234 Tol : Real from Standard);
235 ---Purpose: Computes <AxeProf> as Follow. <Location> is
236 -- the Position of the nearest vertex V of <Profile>
237 -- to <Spine>.<XDirection> is confused with the tangent
238 -- to <Spine> at the projected point of V on the Spine.
239 -- <Direction> is normal to <Spine>.
240 -- <Spine> is a plane wire or a plane face.
241
242 -- <ProfOnSpine> is <False> if the distance
243 -- between <Profile> and <Spine> is high to <Tol>.
244
245
246 SearchOrigin( W : in out Wire from TopoDS;
247 P : Pnt from gp;
248 V : Vec from gp;
249 Tol : Real) is private;
250 ---Purpose: Computes origins and orientation on a closed wire
251
252
253 ComputeACR( wire : Wire from TopoDS;
254 ACR : out Array1OfReal from TColStd );
255 ---Purpose: Compute ACR on a wire
256
257 InsertACR( wire : Wire from TopoDS;
258 ACRcuts : Array1OfReal from TColStd;
259 prec : Real from Standard )
260 ---Purpose: Insert ACR on a wire
261 returns Wire from TopoDS;
262
263
264end BRepFill;
265
266
267
268
269
270
271