1 -- Created on: 1998-02-26
2 -- Created by: Roman BORISOV
3 -- Copyright (c) 1998-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
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
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.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 private class SnglrFunc from GeomFill inherits Curve from Adaptor3d
19 ---Purpose: to represent function C'(t)^C''(t)
22 HCurve from Adaptor3d,
24 CurveType from GeomAbs,
25 Array1OfReal from TColStd,
30 OutOfRange from Standard,
31 DomainError from Standard
34 Create(HC: HCurve from Adaptor3d)
37 SetRatio(me:in out; Ratio : Real)
40 FirstParameter(me) returns Real
43 LastParameter(me) returns Real
46 NbIntervals(me: in out; S : Shape from GeomAbs) returns Integer
47 ---Purpose: Returns the number of intervals for continuity
48 -- <S>. May be one if Continuity(me) >= <S>
51 Intervals(me: in out; T : in out Array1OfReal from TColStd;
52 S : Shape from GeomAbs)
53 ---Purpose: Stores in <T> the parameters bounding the intervals
56 -- The array must provide enough room to accomodate
57 -- for the parameters. i.e. T.Length() > NbIntervals()
59 OutOfRange from Standard
62 Value(me; U : Real) returns Pnt from gp
63 --- Purpose : Computes the point of parameter U on the curve.
66 IsPeriodic(me) returns Boolean
69 Period(me) returns Real
71 DomainError from Standard -- if the curve is not periodic
74 D0 (me; U : Real; P : out Pnt from gp)
75 --- Purpose : Computes the point of parameter U on the curve.
78 D1 (me; U : Real; P : out Pnt from gp ; V : out Vec from gp)
79 --- Purpose : Computes the point of parameter U on the curve with its
82 DomainError from Standard
83 --- Purpose : Raised if the continuity of the current interval
87 D2 (me; U : Real; P : out Pnt from gp; V1, V2 : out Vec from gp)
89 -- Returns the point P of parameter U, the first and second
90 -- derivatives V1 and V2.
92 DomainError from Standard
93 --- Purpose : Raised if the continuity of the current interval
97 D3 (me; U : Real; P : out Pnt from gp; V1, V2, V3 : out Vec from gp)
99 -- Returns the point P of parameter U, the first, the second
100 -- and the third derivative.
102 DomainError from Standard
103 --- Purpose : Raised if the continuity of the current interval
108 DN (me; U : Real; N : Integer) returns Vec from gp
110 -- The returned vector gives the value of the derivative for the
111 -- order of derivation N.
113 OutOfRange from Standard
114 --- Purpose : Raised if N < 1.
118 Resolution(me; R3d : Real) returns Real
119 ---Purpose : Returns the parametric resolution corresponding
120 -- to the real space resolution <R3d>.
123 GetType(me) returns CurveType from GeomAbs
124 ---Purpose: Returns the type of the curve in the current
125 -- interval : Line, Circle, Ellipse, Hyperbola,
126 -- Parabola, BezierCurve, BSplineCurve, OtherCurve.
131 myHCurve: HCurve from Adaptor3d;