Integration of OCCT 6.5.0 from SVN
[occt.git] / src / BRepBlend / BRepBlend_SurfRstConstRad.cdl
CommitLineData
7fd59977 1-- File: BRepBlend_SurfRstConstRad.cdl
2-- Created: Thu Feb 6 16:22:22 1997
3-- Author: Jacques GOUSSARD
4-- Author: Laurent BOURESCHE
5-- <lbo@pomalox.paris1.matra-dtv.fr>
6---Copyright: Matra Datavision 1997
7
8class SurfRstConstRad from BRepBlend
9inherits SurfRstFunction from Blend
10
11
12uses Vector from math,
13 Matrix from math,
14 Ax1 from gp,
15 Vec from gp,
16 Vec2d from gp,
17 Pnt from gp,
18 Pnt2d from gp,
19 Circ from gp,
20 Array1OfPnt from TColgp,
21 Array1OfVec from TColgp,
22 Array1OfPnt2d from TColgp,
23 Array1OfVec2d from TColgp,
24 Array1OfReal from TColStd,
25 Array1OfInteger from TColStd,
26 Shape from GeomAbs,
27 Point from Blend,
28 SectionShape from BlendFunc,
29 HSurface from Adaptor3d,
30 HCurve from Adaptor3d,
31 HCurve2d from Adaptor2d,
32 CurveOnSurface from Adaptor3d,
33 ParameterisationType from Convert
34
35
36is
37
38 Create(Surf : HSurface from Adaptor3d;
39 SurfRst : HSurface from Adaptor3d;
40 Rst : HCurve2d from Adaptor2d;
41 CGuide : HCurve from Adaptor3d)
42 returns SurfRstConstRad from BRepBlend;
43
44 NbVariables(me)
45 ---Purpose: Returns 3.
46 returns Integer from Standard;
47
48 NbEquations(me)
49 ---Purpose: Returns 3.
50 returns Integer from Standard;
51
52 Value(me: in out; X: Vector; F: out Vector)
53 ---Purpose: computes the values <F> of the Functions for the
54 -- variable <X>.
55 -- Returns True if the computation was done successfully,
56 -- False otherwise.
57 returns Boolean from Standard;
58
59 Derivatives(me: in out; X: Vector; D: out Matrix)
60 ---Purpose: returns the values <D> of the derivatives for the
61 -- variable <X>.
62 -- Returns True if the computation was done successfully,
63 -- False otherwise.
64 returns Boolean from Standard;
65
66 Values(me: in out; X: Vector; F: out Vector; D: out Matrix)
67 ---Purpose: returns the values <F> of the functions and the derivatives
68 -- <D> for the variable <X>.
69 -- Returns True if the computation was done successfully,
70 -- False otherwise.
71 returns Boolean from Standard;
72
73 Set(me : in out;
74 SurfRef : HSurface from Adaptor3d;
75 RstRef : HCurve2d from Adaptor2d);
76
77 Set(me: in out; Param: Real from Standard);
78
79 Set(me: in out; First, Last: Real from Standard);
80 ---Purpose: Sets the bounds of the parametric interval on
81 -- the guide line.
82 -- This determines the derivatives in these values if the
83 -- function is not Cn.
84
85 GetTolerance(me; Tolerance: out Vector from math; Tol: Real from Standard);
86
87 GetBounds(me; InfBound,SupBound: out Vector from math);
88
89 IsSolution(me: in out; Sol: Vector from math; Tol: Real from Standard)
90 returns Boolean from Standard;
91
92 GetMinimalDistance(me)
93 ---Purpose: Returns the minimal Distance beetween two
94 -- extremitys of calculed sections.
95 returns Real from Standard
96 is redefined;
97
98--- TheFollowing methods are called only when
99-- IsSolution returns Standard_True.
100
101 PointOnS(me)
102 ---C++: return const&
103 returns Pnt from gp;
104
105 PointOnRst(me)
106 ---C++: return const&
107 returns Pnt from gp;
108
109 Pnt2dOnS(me)
110 ---Purpose: Returns U,V coordinates of the point on the surface.
111 ---C++: return const&
112 returns Pnt2d from gp;
113
114 Pnt2dOnRst(me)
115 ---Purpose: Returns U,V coordinates of the point on the curve on
116 -- surface.
117 ---C++: return const&
118 returns Pnt2d from gp;
119
120 ParameterOnRst(me)
121 ---Purpose: Returns parameter of the point on the curve.
122 returns Real from Standard;
123
124 IsTangencyPoint(me)
125 returns Boolean from Standard;
126
127 TangentOnS(me)
128 ---C++: return const&
129 returns Vec from gp;
130
131 Tangent2dOnS(me)
132 ---C++: return const&
133 returns Vec2d from gp;
134
135 TangentOnRst(me)
136 ---C++: return const&
137 returns Vec from gp;
138
139 Tangent2dOnRst(me)
140 ---C++: return const&
141 returns Vec2d from gp;
142
143 Decroch(me;
144 Sol : Vector from math;
145 NS,TgS : out Vec from gp)
146 ---Purpose: Enables implementation of a criterion of decrochage
147 -- specific to the function.
148 -- Warning: Can be called without previous call of issolution
149 -- but the values calculated can be senseless.
150 returns Boolean from Standard
151 is static;
152
153-- methodes hors template (en plus du create)
154
155 Set(me : in out;
156 Radius : Real from Standard;
157 Choix : Integer from Standard)
158 is static;
159
160 Set(me: in out; TypeSection: SectionShape from BlendFunc)
161 ---Purpose: Sets the type of section generation for the
162 -- approximations.
163 is static;
164
165 Section(me : in out;
166 Param : Real from Standard;
167 U,V,W : Real from Standard;
168 Pdeb,Pfin : out Real from Standard;
169 C : out Circ from gp)
170 is static;
171
172-- Methods for the approximation
173--
174 IsRational(me) returns Boolean
175 ---Purpose: Returns if the section is rationnal
176 is static;
177
178 GetSectionSize(me) returns Real
179 ---Purpose: Returns the length of the maximum section
180 is static;
181
182 GetMinimalWeight(me; Weigths : out Array1OfReal from TColStd)
183 ---Purpose: Compute the minimal value of weight for each poles
184 -- of all sections.
185 is static;
186
187 NbIntervals(me; S : Shape from GeomAbs) returns Integer
188 ---Purpose: Returns the number of intervals for continuity
189 -- <S>. May be one if Continuity(me) >= <S>
190 is static;
191
192 Intervals(me; T : in out Array1OfReal from TColStd;
193 S : Shape from GeomAbs)
194 ---Purpose: Stores in <T> the parameters bounding the intervals
195 -- of continuity <S>.
196 -- The array must provide enough room to accomodate
197 -- for the parameters. i.e. T.Length() > NbIntervals()
198 is static;
199
200 GetShape(me : in out;
201 NbPoles : out Integer from Standard;
202 NbKnots : out Integer from Standard;
203 Degree : out Integer from Standard;
204 NbPoles2d : out Integer from Standard)
205 is static;
206
207 GetTolerance(me;
208 BoundTol, SurfTol, AngleTol : Real;
209 Tol3d : out Vector;
210 Tol1D : out Vector )
211 ---Purpose: Returns the tolerance to reach in approximation
212 -- to respecte
213 -- BoundTol error at the Boundary
214 -- AngleTol tangent error at the Boundary
215 -- SurfTol error inside the surface.
216 is static;
217
218 Knots(me: in out; TKnots: out Array1OfReal from TColStd)
219 is static;
220
221 Mults(me: in out; TMults: out Array1OfInteger from TColStd)
222 is static;
223
224 Section(me : in out ;
225 P : Point from Blend;
226 Poles : out Array1OfPnt from TColgp;
227 DPoles : out Array1OfVec from TColgp;
228 Poles2d : out Array1OfPnt2d from TColgp;
229 DPoles2d : out Array1OfVec2d from TColgp;
230 Weigths : out Array1OfReal from TColStd;
231 DWeigths : out Array1OfReal from TColStd)
232 ---Purpose: Used for the first and last section
233 returns Boolean from Standard
234 is static;
235
236 Section(me: in out; P: Point from Blend;
237 Poles : out Array1OfPnt from TColgp;
238 DPoles : out Array1OfVec from TColgp;
239 D2Poles : out Array1OfVec from TColgp;
240 Poles2d : out Array1OfPnt2d from TColgp;
241 DPoles2d : out Array1OfVec2d from TColgp;
242 D2Poles2d : out Array1OfVec2d from TColgp;
243 Weigths : out Array1OfReal from TColStd;
244 DWeigths : out Array1OfReal from TColStd;
245 D2Weigths : out Array1OfReal from TColStd)
246 ---Purpose: Used for the first and last section
247 -- The method returns Standard_True if the derivatives
248 -- are computed, otherwise it returns Standard_False.
249 returns Boolean from Standard
250 is static;
251
252 Section(me : in out ;
253 P : Point from Blend;
254 Poles : out Array1OfPnt from TColgp;
255 Poles2d : out Array1OfPnt2d from TColgp;
256 Weigths : out Array1OfReal from TColStd)
257 is static;
258
259 Resolution(me;
260 IC2d : Integer from Standard;
261 Tol : Real from Standard;
262 TolU, TolV : out Real from Standard);
263
264fields
265
266 surf : HSurface from Adaptor3d;
267 surfrst : HSurface from Adaptor3d;
268 rst : HCurve2d from Adaptor2d;
269 cons : CurveOnSurface from Adaptor3d;
270 guide : HCurve from Adaptor3d;
271 tguide : HCurve from Adaptor3d;
272 pts : Pnt from gp;
273 ptrst : Pnt from gp;
274 pt2ds : Pnt2d from gp;
275 pt2drst : Pnt2d from gp;
276 prmrst : Real from Standard;
277 istangent: Boolean from Standard;
278 tgs : Vec from gp;
279 tg2ds : Vec2d from gp;
280 tgrst : Vec from gp;
281 tg2drst : Vec2d from gp;
282
283 ray : Real from Standard;
284 choix : Integer from Standard;
285 ptgui : Pnt from gp;
286 d1gui : Vec from gp;
287 d2gui : Vec from gp;
288 nplan : Vec from gp;
289 normtg : Real from Standard;
290 theD : Real from Standard;
291
292 surfref : HSurface from Adaptor3d;
293 rstref : HCurve2d from Adaptor2d;
294
295 maxang : Real from Standard;
296 minang : Real from Standard;
297 distmin : Real from Standard;
298 mySShape : SectionShape from BlendFunc;
299 myTConv : ParameterisationType from Convert;
300
301end SurfRstConstRad;