7fd59977 |
1 | -- File: Extrema_Curve2dTool.cdl |
2 | -- Created: Tue Jul 18 14:54:37 1995 |
3 | -- Author: Modelistation |
4 | -- <model@metrox> |
5 | ---Copyright: Matra Datavision 1995 |
6 | |
7 | |
8 | class Curve2dTool from Extrema |
9 | |
10 | uses |
11 | Curve2d from Adaptor2d, |
12 | Array1OfReal from TColStd, |
13 | Shape from GeomAbs, |
14 | CurveType from GeomAbs, |
15 | Vec2d from gp, |
16 | Pnt2d from gp, |
17 | Circ2d from gp, |
18 | Elips2d from gp, |
19 | Hypr2d from gp, |
20 | Parab2d from gp, |
21 | Lin2d from gp, |
22 | BezierCurve from Geom2d, |
23 | BSplineCurve from Geom2d, |
24 | HCurve2d from Adaptor2d |
25 | |
26 | is |
27 | |
28 | FirstParameter(myclass; C : Curve2d from Adaptor2d) returns Real |
29 | ---C++: inline |
30 | ; |
31 | |
32 | LastParameter(myclass; C : Curve2d from Adaptor2d) returns Real |
33 | ---C++: inline |
34 | ; |
35 | |
36 | Continuity(myclass; C : Curve2d from Adaptor2d) returns Shape from GeomAbs |
37 | ---C++: inline |
38 | ; |
39 | |
40 | NbIntervals(myclass; C : Curve2d from Adaptor2d; S : Shape from GeomAbs) returns Integer |
41 | ---Purpose: If necessary, breaks the curve in intervals of |
42 | -- continuity <S>. And returns the number of |
43 | -- intervals. |
44 | ---C++: inline |
45 | ; |
46 | |
47 | Intervals(myclass; C : Curve2d from Adaptor2d; |
48 | T : in out Array1OfReal from TColStd; |
49 | S : Shape from GeomAbs); |
50 | ---Purpose: Stores in <T> the parameters bounding the intervals |
51 | -- of continuity <S>. |
52 | ---C++: inline |
53 | |
54 | |
55 | IsClosed(myclass; C : Curve2d from Adaptor2d) returns Boolean |
56 | ---C++: inline |
57 | ; |
58 | |
59 | IsPeriodic(myclass; C : Curve2d from Adaptor2d) returns Boolean |
60 | ---C++: inline |
61 | ; |
62 | |
63 | Period(myclass; C : Curve2d from Adaptor2d) returns Real |
64 | ---C++: inline |
65 | ; |
66 | |
67 | Value(myclass; C : Curve2d from Adaptor2d; U : Real) returns Pnt2d from gp |
68 | --- Purpose : Computes the point of parameter U on the curve. |
69 | ---C++: inline |
70 | ; |
71 | |
72 | D0 (myclass; C : Curve2d from Adaptor2d; U : Real; P : out Pnt2d from gp) |
73 | --- Purpose : Computes the point of parameter U on the curve. |
74 | ---C++: inline |
75 | ; |
76 | |
77 | D1 (myclass; C : Curve2d from Adaptor2d; U : Real; P : out Pnt2d from gp ; V : out Vec2d from gp) |
78 | --- Purpose : Computes the point of parameter U on the curve with its |
79 | -- first derivative. |
80 | ---C++: inline |
81 | ; |
82 | |
83 | D2 (myclass; C : Curve2d from Adaptor2d; U : Real; P : out Pnt2d from gp; V1, V2 : out Vec2d from gp) |
84 | --- Purpose : |
85 | -- Returns the point P of parameter U, the first and second |
86 | -- derivatives V1 and V2. |
87 | ---C++: inline |
88 | ; |
89 | |
90 | D3 (myclass; C : Curve2d from Adaptor2d; U : Real; P : out Pnt2d from gp; V1, V2, V3 : out Vec2d from gp) |
91 | --- Purpose : |
92 | -- Returns the point P of parameter U, the first, the second |
93 | -- and the third derivative. |
94 | ---C++: inline |
95 | ; |
96 | |
97 | DN (myclass; C : Curve2d from Adaptor2d; U : Real; N : Integer) returns Vec2d from gp |
98 | --- Purpose : |
99 | -- The returned vector gives the value of the derivative for the |
100 | -- order of derivation N. |
101 | ---C++: inline |
102 | ; |
103 | |
104 | Resolution(myclass; C : Curve2d from Adaptor2d ; R3d : Real) returns Real |
105 | ---Purpose : Returns the parametric resolution corresponding |
106 | -- to the real space resolution <R3d>. |
107 | ---C++: inline |
108 | ; |
109 | |
110 | GetType(myclass; C : Curve2d from Adaptor2d) returns CurveType from GeomAbs |
111 | ---Purpose: Returns the type of the curve in the current |
112 | -- interval : Line, Circle, Ellipse, Hyperbola, |
113 | -- Parabola, BezierCurve, BSplineCurve, OtherCurve. |
114 | ---C++: inline |
115 | ; |
116 | |
117 | |
118 | Line(myclass; C : Curve2d from Adaptor2d) returns Lin2d from gp |
119 | ---C++: inline |
120 | ; |
121 | |
122 | Circle(myclass; C : Curve2d from Adaptor2d) returns Circ2d from gp |
123 | ---C++: inline |
124 | ; |
125 | |
126 | Ellipse(myclass; C : Curve2d from Adaptor2d) returns Elips2d from gp |
127 | ---C++: inline |
128 | ; |
129 | |
130 | Hyperbola(myclass; C : Curve2d from Adaptor2d) returns Hypr2d from gp |
131 | ---C++: inline |
132 | ; |
133 | |
134 | Parabola(myclass; C : Curve2d from Adaptor2d) returns Parab2d from gp |
135 | ---C++: inline |
136 | ; |
137 | |
138 | Degree(myclass; C : Curve2d from Adaptor2d) returns Integer |
139 | ---C++: inline |
140 | ; |
141 | |
142 | IsRational(myclass; C : Curve2d from Adaptor2d) returns Boolean |
143 | ---C++: inline |
144 | ; |
145 | |
146 | NbPoles(myclass; C : Curve2d from Adaptor2d) returns Integer |
147 | ---C++: inline |
148 | ; |
149 | |
150 | NbKnots(myclass; C : Curve2d from Adaptor2d) returns Integer |
151 | ---C++: inline |
152 | ; |
153 | |
154 | Bezier(myclass; C : Curve2d from Adaptor2d) returns BezierCurve from Geom2d |
155 | ---C++: inline |
156 | ; |
157 | |
158 | BSpline(myclass; C : Curve2d from Adaptor2d) returns BSplineCurve from Geom2d |
159 | ---C++: inline |
160 | ; |
161 | |
162 | |
163 | end Curve2dTool; |