7fd59977 |
1 | -- File: Extrema_CurveTool.cdl |
2 | -- Created: Tue Jul 18 13:00:23 1995 |
3 | -- Author: Modelistation |
4 | -- <model@metrox> |
5 | ---Copyright: Matra Datavision 1995 |
6 | |
7 | |
8 | class CurveTool from Extrema |
9 | |
10 | uses Pnt from gp, |
11 | Vec from gp, |
12 | Circ from gp, |
13 | Elips from gp, |
14 | Hypr from gp, |
15 | Parab from gp, |
16 | Lin from gp, |
17 | Array1OfReal from TColStd, |
18 | BezierCurve from Geom, |
19 | BSplineCurve from Geom, |
20 | CurveType from GeomAbs, |
21 | Shape from GeomAbs, |
22 | Curve from Adaptor3d |
23 | |
24 | is |
25 | |
26 | |
27 | FirstParameter(myclass; C : Curve from Adaptor3d) |
28 | returns Real from Standard; |
29 | ---C++: inline |
30 | |
31 | LastParameter(myclass; C : Curve from Adaptor3d) |
32 | returns Real from Standard; |
33 | ---C++: inline |
34 | |
35 | Continuity(myclass; C: Curve from Adaptor3d) returns Shape from GeomAbs; |
36 | ---C++: inline |
37 | |
38 | NbIntervals(myclass; C: in out Curve from Adaptor3d; S : Shape from GeomAbs) returns Integer; |
39 | ---Purpose: Returns the number of intervals for continuity |
40 | -- <S>. May be one if Continuity(me) >= <S> |
41 | ---C++: inline |
42 | |
43 | |
44 | Intervals(myclass; C: in out Curve from Adaptor3d; T : in out Array1OfReal from TColStd; |
45 | S : Shape from GeomAbs); |
46 | ---Purpose: Stores in <T> the parameters bounding the intervals |
47 | -- of continuity <S>. |
48 | -- |
49 | -- The array must provide enough room to accomodate |
50 | -- for the parameters. i.e. T.Length() > NbIntervals() |
51 | ---C++: inline |
52 | |
53 | IsPeriodic(myclass;C: Curve from Adaptor3d) returns Boolean; |
54 | |
55 | Period(myclass; C: Curve from Adaptor3d) returns Real; |
56 | ---C++: inline |
57 | |
58 | |
59 | Resolution(myclass; C: Curve from Adaptor3d; R3d: Real) returns Real; |
60 | ---C++: inline |
61 | |
62 | |
63 | GetType(myclass;C: Curve from Adaptor3d) returns CurveType from GeomAbs; |
64 | ---C++: inline |
65 | |
66 | |
67 | Value(myclass; C : Curve from Adaptor3d; |
68 | U : Real from Standard) |
69 | returns Pnt from gp; |
70 | ---C++: inline |
71 | |
72 | D1 (myclass; C : Curve from Adaptor3d; |
73 | U : Real from Standard; |
74 | P : out Pnt from gp; |
75 | V : out Vec from gp); |
76 | ---C++: inline |
77 | |
78 | D2 (myclass; C : Curve from Adaptor3d; |
79 | U : Real from Standard; |
80 | P : out Pnt from gp; |
81 | V1, V2 : out Vec from gp); |
82 | ---C++: inline |
83 | |
84 | Line(myclass; C : Curve from Adaptor3d) returns Lin from gp; |
85 | ---C++: inline |
86 | |
87 | Circle(myclass; C : Curve from Adaptor3d) returns Circ from gp; |
88 | ---C++: inline |
89 | |
90 | Ellipse(myclass; C : Curve from Adaptor3d) returns Elips from gp; |
91 | ---C++: inline |
92 | |
93 | Hyperbola(myclass; C : Curve from Adaptor3d) returns Hypr from gp; |
94 | ---C++: inline |
95 | |
96 | Parabola(myclass; C : Curve from Adaptor3d) returns Parab from gp; |
97 | ---C++: inline |
98 | |
99 | Degree(myclass; C : Curve from Adaptor3d) returns Integer; |
100 | ---C++: inline |
101 | |
102 | IsRational(myclass; C : Curve from Adaptor3d) returns Boolean; |
103 | ---C++: inline |
104 | |
105 | NbPoles(myclass; C : Curve from Adaptor3d) returns Integer; |
106 | ---C++: inline |
107 | |
108 | NbKnots(myclass; C : Curve from Adaptor3d) returns Integer; |
109 | ---C++: inline |
110 | |
111 | Bezier(myclass; C : Curve from Adaptor3d) returns BezierCurve from Geom; |
112 | ---C++: inline |
113 | |
114 | BSpline(myclass; C : Curve from Adaptor3d) returns BSplineCurve from Geom; |
115 | ---C++: inline |
116 | |
117 | |
118 | end CurveTool; |