0024428: Implementation of LGPL license
[occt.git] / src / Adaptor2d / Adaptor2d_Line2d.cdl
1 -- Created on: 1995-05-02
2 -- Created by: Modelistation
3 -- Copyright (c) 1995-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
8 -- This library is free software; you can redistribute it and / or modify it
9 -- under the terms of the GNU Lesser General Public 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.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 class Line2d from Adaptor2d inherits Curve2d from Adaptor2d
18
19 uses 
20      Array1OfReal from TColStd,
21      Pnt2d        from gp,
22      Dir2d        from gp,
23      Vec2d        from gp,
24      Lin2d        from gp,
25      Ax2d         from gp,
26      Circ2d       from gp,
27      Elips2d      from gp,
28      Hypr2d       from gp,
29      Parab2d      from gp,
30      Shape        from GeomAbs,
31      CurveType    from GeomAbs,
32      BezierCurve     from Geom2d,
33      BSplineCurve    from Geom2d,
34      HCurve2d        from Adaptor2d
35
36 raises
37     
38     OutOfRange          from Standard,
39     NoSuchObject        from Standard,
40     DomainError         from Standard
41     
42 is
43
44     Create returns  Line2d from Adaptor2d;
45
46     Create(P: Pnt2d from gp; 
47            D: Dir2d from gp;
48            UFirst,ULast: Real from Standard)
49     returns  Line2d from Adaptor2d;
50
51     Load(me : in out; L : Lin2d from gp)
52     is static;
53
54     Load(me : in out; L : Lin2d from gp;
55          UFirst,ULast: Real from Standard)
56     is static;
57
58     FirstParameter(me)
59         returns Real from Standard
60         is redefined static;
61
62     LastParameter(me)
63         returns Real from Standard
64         is redefined static;
65     
66     Continuity(me)
67         returns Shape from GeomAbs
68         is redefined static;
69     
70     NbIntervals(me; S : Shape from GeomAbs) returns Integer
71         ---Purpose: If necessary,  breaks the  curve in  intervals  of
72         --          continuity  <S>.    And  returns   the number   of
73         --          intervals.
74     is redefined static;
75     
76     Intervals(me; T : in out Array1OfReal from TColStd; 
77                   S : Shape from GeomAbs)
78         ---Purpose: Stores in <T> the  parameters bounding the intervals
79         --          of continuity <S>.
80         --          
81         --          The array must provide  enough room to  accomodate
82         --          for the parameters. i.e. T.Length() > NbIntervals()
83     raises
84         OutOfRange from Standard 
85     is redefined static;
86     
87     Trim(me; First, Last, Tol : Real) returns HCurve2d from Adaptor2d
88         ---Purpose: Returns    a  curve equivalent   of  <me>  between
89         --          parameters <First>  and <Last>. <Tol>  is used  to
90         --          test for 3d points confusion.
91     raises
92         OutOfRange from Standard
93         ---Purpose: If <First> >= <Last> 
94     is redefined static;
95
96     IsClosed(me)
97         returns Boolean from Standard
98         is redefined static;
99      
100     IsPeriodic(me)
101         returns Boolean from Standard
102         is redefined static;
103
104     Period(me) returns Real
105     raises
106         DomainError from Standard -- if the curve is not periodic
107     is redefined static;
108      
109     Value(me; X: Real from Standard)
110         returns Pnt2d from gp
111         is redefined static;
112
113     D0(me; X: Real from Standard; P: out Pnt2d from gp)
114         is redefined static;
115
116     D1(me; X: Real from Standard;
117                     P: out Pnt2d from gp; V: out Vec2d from gp)
118         is redefined static;
119
120     D2(me; X: Real from Standard;
121                     P: out Pnt2d from gp; V1,V2: out Vec2d from gp)
122         is redefined static;
123
124     D3(me; X: Real from Standard;
125                     P: out Pnt2d from gp; V1,V2,V3: out Vec2d from gp)
126         is redefined static;
127
128     DN (me; U : Real; N : Integer)
129         returns Vec2d from gp
130         is redefined static;
131
132
133     Resolution(me; R3d : Real)
134         returns Real from Standard
135         is redefined static;
136
137         
138     GetType(me)
139         returns CurveType from GeomAbs
140         is redefined static;
141
142
143      Line(me)
144         returns Lin2d from gp
145         is redefined static;
146
147      Circle(me) returns Circ2d from gp
148      raises 
149         NoSuchObject from Standard
150      is redefined static;
151      
152      Ellipse(me) returns Elips2d from gp
153      raises 
154         NoSuchObject from Standard
155      is redefined static;
156      
157      Hyperbola(me) returns  Hypr2d from gp
158      raises 
159         NoSuchObject from Standard
160      is redefined static;
161      
162      Parabola(me) returns Parab2d from gp
163      raises 
164         NoSuchObject from Standard
165      is redefined static;
166      
167      
168      Degree(me) returns Integer
169      raises 
170         NoSuchObject from Standard
171      is redefined static;
172      
173      IsRational(me) returns Boolean
174      raises 
175         NoSuchObject from Standard
176      is redefined static;
177      
178      NbPoles(me) returns Integer
179      raises 
180         NoSuchObject from Standard
181      is redefined static;
182
183   
184      NbKnots(me) returns Integer
185      raises 
186         NoSuchObject from Standard
187      is redefined static;     
188           
189
190      
191      Bezier(me) returns BezierCurve from Geom2d
192      raises 
193         NoSuchObject from Standard
194      is redefined static;
195     
196      BSpline(me) returns BSplineCurve from Geom2d
197      raises 
198         NoSuchObject from Standard
199      is redefined static;
200
201 fields
202
203     myUfirst : Real from Standard;
204     myUlast  : Real from Standard;
205     myAx2d   : Ax2d from gp;
206
207 end Line2d;