OCC22529 FitALL works incorrectly for small flat shapes
[occt.git] / src / Extrema / Extrema_Curve2dTool.cdl
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;