0024784: Move documentation in CDL files to proper location
[occt.git] / src / GC / GC_MakeArcOfEllipse.cdl
1 -- Created on: 1992-09-28
2 -- Created by: Remi GILET
3 -- Copyright (c) 1992-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 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.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 class MakeArcOfEllipse from GC inherits Root from GC
18         
19         ---Purpose: Implements construction algorithms for an arc
20         -- of ellipse in 3D space. The result is a Geom_TrimmedCurve curve.
21         -- A MakeArcOfEllipse object provides a framework for:
22         -- -   defining the construction of the arc of ellipse,
23         -- -   implementing the construction algorithm, and
24         -- -   consulting the results. In particular, the
25         --   Value function returns the constructed arc of ellipse.
26         
27 uses Pnt         from gp,
28      Elips       from gp,
29      Dir         from gp,
30      Ax1         from gp,
31      Real        from Standard,
32      TrimmedCurve from Geom
33
34 raises NotDone from StdFail
35
36 is
37
38 Create(Elips          : Elips   from gp       ;
39        Alpha1, Alpha2 : Real    from Standard ;
40        Sense          : Boolean from Standard ) returns MakeArcOfEllipse;
41         ---Purpose: Constructs an arc of Ellipse (TrimmedCurve from Geom) from 
42         --          a Ellipse between two parameters Alpha1 and Alpha2.
43
44 Create(Elips : Elips   from gp       ;
45        P     : Pnt     from gp       ;
46        Alpha : Real    from Standard ;
47        Sense : Boolean from Standard ) returns MakeArcOfEllipse;
48         ---Purpose: Constructs an arc of Ellipse (TrimmedCurve from Geom) from 
49         --          a Ellipse between point <P> and the angle Alpha 
50         --          given in radians.
51
52 Create(Elips : Elips   from gp ;
53        P1    : Pnt     from gp ;
54        P2    : Pnt     from gp ;
55        Sense : Boolean from Standard ) returns MakeArcOfEllipse;
56         ---Purpose: Constructs an arc of Ellipse (TrimmedCurve from Geom) from 
57         --          a Ellipse between two points P1 and P2.
58         -- The orientation of the arc of ellipse is:
59         -- -   the sense of Elips if Sense is true, or
60         -- -   the opposite sense if Sense is false.
61         -- Notes:
62         -- -   Alpha1, Alpha2 and Alpha are angle values, given in radians.
63         -- -   IsDone always returns true.
64         
65 Value(me) returns TrimmedCurve from Geom
66     raises NotDone
67     is static;
68         ---C++: return const&
69         ---Purpose: Returns the constructed arc of ellipse.
70
71 Operator(me) returns TrimmedCurve from Geom
72     is static;
73         ---C++: return const&
74         ---C++: alias "Standard_EXPORT operator Handle_Geom_TrimmedCurve() const;"
75
76 fields
77
78     TheArc : TrimmedCurve from Geom;
79     --The solution from Geom.
80     
81 end MakeArcOfEllipse;