0022627: Change OCCT memory management defaults
[occt.git] / src / Adaptor3d / Adaptor3d_IsoCurve.cdl
CommitLineData
7fd59977 1-- File: Adaptor3d_IsoCurve.cdl
2-- Created: Thu Mar 11 17:15:21 1993
3-- Author: Isabelle GRIGNON
4-- <isg@bravox>
5-- modified 01-1994 by rob (time comsumption)
6---Copyright: Matra Datavision 1993
7
8
9class IsoCurve from Adaptor3d inherits Curve from Adaptor3d
10
11 ---Purpose: Defines an isoparametric curve on a surface. The
12 -- type of isoparametric curve (U or V) is defined
13 -- with the enumeration IsoType from GeomAbs if
14 -- NoneIso is given an error is raised.
15
16uses
17 Array1OfReal from TColStd,
18 IsoType from GeomAbs,
19 Shape from GeomAbs,
20 CurveType from GeomAbs,
21 Vec from gp,
22 Pnt from gp,
23 Circ from gp,
24 Elips from gp,
25 Hypr from gp,
26 Parab from gp,
27 Lin from gp,
28 BezierCurve from Geom,
29 BSplineCurve from Geom,
30 HCurve from Adaptor3d,
31 HSurface from Adaptor3d
32
33raises
34 NoSuchObject from Standard,
35 OutOfRange from Standard,
36 DomainError from Standard
37
38is
39
40 --
41 -- Methods specific of IsoCurve
42 --
43
44 Create returns IsoCurve from Adaptor3d;
45 ---Purpose: The iso is set to NoneIso.
46
47 Create(S : HSurface from Adaptor3d) returns IsoCurve from Adaptor3d;
48 ---Purpose: The surface is loaded. The iso is set to NoneIso.
49
50 Create(S : HSurface from Adaptor3d;
51 Iso : IsoType from GeomAbs; Param : Real)
52 returns IsoCurve from Adaptor3d;
53 ---Purpose: Creates an IsoCurve curve. Iso defines the
54 -- type (isoU or isoU) Param defines the value of
55 -- the iso. The bounds of the iso are the bounds
56 -- of the surface.
57
58 Create(S : HSurface from Adaptor3d;
59 Iso : IsoType from GeomAbs; Param : Real; WFirst,WLast : Real)
60 returns IsoCurve from Adaptor3d;
61 ---Purpose: Create an IsoCurve curve. Iso defines the type
62 -- (isoU or isov). Param defines the value of the
63 -- iso. WFirst,WLast define the bounds of the iso.
64
65
66 Load( me:in out ;S : HSurface from Adaptor3d)
67 ---Purpose: Changes the surface. The iso is reset to
68 -- NoneIso.
69 is static;
70
71 Load (me : in out ; Iso : IsoType from GeomAbs; Param : Real)
72 ---Purpose: Changes the iso on the current surface.
73 is static;
74
75 Load (me : in out ;
76 Iso : IsoType from GeomAbs; Param : Real; WFirst,WLast : Real)
77 ---Purpose: Changes the iso on the current surface.
78 is static;
79
80 Surface(me) returns HSurface from Adaptor3d
81 ---C++: inline
82 ---C++: return const &
83 is static;
84
85 Iso(me) returns IsoType from GeomAbs
86 ---C++: inline
87 is static;
88
89 Parameter(me) returns Real
90 ---C++: inline
91 is static;
92
93 --
94 -- Implementation of Curve from Adaptor3d methods
95 --
96
97 --
98 -- Global methods - Apply to the whole curve.
99 --
100
101 FirstParameter(me) returns Real
102 ---C++: inline
103 is redefined static;
104
105 LastParameter(me) returns Real
106 ---C++: inline
107 is redefined static;
108
109 Continuity(me) returns Shape from GeomAbs
110 is redefined static;
111
112 NbIntervals(me:in out; S : Shape from GeomAbs) returns Integer
113 ---Purpose: Returns the number of intervals for continuity
114 -- <S>. May be one if Continuity(me) >= <S>
115 is redefined static;
116
117 Intervals(me:in out; T : in out Array1OfReal from TColStd;
118 S : Shape from GeomAbs)
119 ---Purpose: Stores in <T> the parameters bounding the intervals
120 -- of continuity <S>.
121 --
122 -- The array must provide enough room to accomodate
123 -- for the parameters. i.e. T.Length() > NbIntervals()
124 raises
125 OutOfRange from Standard
126 is redefined static;
127
128 Trim(me; First, Last, Tol : Real) returns HCurve from Adaptor3d
129 ---Purpose: Returns a curve equivalent of <me> between
130 -- parameters <First> and <Last>. <Tol> is used to
131 -- test for 3d points confusion.
132 raises
133 OutOfRange from Standard
134 ---Purpose: If <First> >= <Last>
135 is redefined static;
136
137
138 IsClosed(me) returns Boolean
139 is redefined static;
140
141 IsPeriodic(me) returns Boolean
142 is redefined static;
143
144 Period(me) returns Real
145 raises
146 DomainError from Standard -- if the curve is not periodic
147 is redefined static;
148
149 Value(me; U : Real) returns Pnt from gp
150 --- Purpose : Computes the point of parameter U on the curve.
151 is redefined static;
152
153 D0 (me; U : Real; P : out Pnt from gp)
154 --- Purpose : Computes the point of parameter U on the curve.
155 is redefined static;
156
157 D1 (me; U : Real; P : out Pnt from gp ; V : out Vec from gp)
158 --- Purpose : Computes the point of parameter U on the curve with its
159 -- first derivative.
160 raises
161 DomainError from Standard
162 --- Purpose : Raised if the continuity of the current interval
163 -- is not C1.
164 is redefined static;
165
166 D2 (me; U : Real; P : out Pnt from gp; V1, V2 : out Vec from gp)
167 --- Purpose :
168 -- Returns the point P of parameter U, the first and second
169 -- derivatives V1 and V2.
170 raises
171 DomainError from Standard
172 --- Purpose : Raised if the continuity of the current interval
173 -- is not C2.
174 is redefined static;
175
176 D3 (me; U : Real; P : out Pnt from gp; V1, V2, V3 : out Vec from gp)
177 --- Purpose :
178 -- Returns the point P of parameter U, the first, the second
179 -- and the third derivative.
180 raises
181 DomainError from Standard
182 --- Purpose : Raised if the continuity of the current interval
183 -- is not C3.
184 is redefined static;
185
186 DN (me; U : Real; N : Integer) returns Vec from gp
187 --- Purpose :
188 -- The returned vector gives the value of the derivative for the
189 -- order of derivation N.
190 raises
191 DomainError from Standard,
192 --- Purpose : Raised if the continuity of the current interval
193 -- is not CN.
194 OutOfRange from Standard
195 --- Purpose : Raised if N < 1.
196 is redefined static;
197
198 Resolution(me; R3d : Real) returns Real
199 ---Purpose : Returns the parametric resolution corresponding
200 -- to the real space resolution <R3d>.
201 is redefined static;
202
203 GetType(me) returns CurveType from GeomAbs
204 ---Purpose: Returns the type of the curve in the current
205 -- interval : Line, Circle, Ellipse, Hyperbola,
206 -- Parabola, BezierCurve, BSplineCurve, OtherCurve.
207 is redefined static;
208
209 --
210 -- The following methods must be called when GetType returned
211 -- the corresponding type.
212 --
213
214 Line(me) returns Lin from gp
215 raises
216 NoSuchObject from Standard
217 is redefined static;
218
219 Circle(me) returns Circ from gp
220 raises
221 NoSuchObject from Standard
222 is redefined static;
223
224 Ellipse(me) returns Elips from gp
225 raises
226 NoSuchObject from Standard
227 is redefined static;
228
229 Hyperbola(me) returns Hypr from gp
230 raises
231 NoSuchObject from Standard
232 is redefined static;
233
234 Parabola(me) returns Parab from gp
235 raises
236 NoSuchObject from Standard
237 is redefined static;
238
239
240
241 Degree(me) returns Integer
242 raises
243 NoSuchObject from Standard
244 is redefined static;
245
246 IsRational(me) returns Boolean
247 raises
248 NoSuchObject from Standard
249 is redefined static;
250
251 NbPoles(me) returns Integer
252 raises
253 NoSuchObject from Standard
254 is redefined static;
255
256
257 NbKnots(me) returns Integer
258 raises
259 NoSuchObject from Standard
260 is redefined static;
261
262
263
264
265
266 Bezier(me) returns BezierCurve from Geom
267 raises
268 NoSuchObject from Standard
269 is redefined static;
270
271 BSpline(me) returns BSplineCurve from Geom
272 raises
273 NoSuchObject from Standard
274 is redefined static;
275
276
277fields
278
279 mySurface : HSurface from Adaptor3d;
280 myIso : IsoType from GeomAbs;
281 myFirst : Real;
282 myLast : Real;
283 myParameter : Real;
284end IsoCurve;
285
286
287
288
289