0024830: Remove redundant keyword 'mutable' in CDL declarations
[occt.git] / src / IGESToBRep / IGESToBRep_BasicCurve.cdl
1 -- Created on: 1994-03-14
2 -- Created by: s:       Christophe GUYOT & Frederic UNTEREINER
3 -- Copyright (c) 1994-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 BasicCurve  from IGESToBRep inherits CurveAndSurface from IGESToBRep
18
19     ---Purpose : Provides methods to transfer basic geometric curves entities 
20     --           from IGES to CASCADE.
21     --           These can be :
22     --           * Circular arc
23     --           * Conic arc
24     --           * Spline curve
25     --           * BSpline curve
26     --           * Line
27     --           * Copious data
28     --           * Point
29     --           * Transformation matrix
30
31 uses   
32
33     CurveAndSurface      from IGESToBRep,
34     IGESEntity           from IGESData,
35     BSplineCurve         from IGESGeom,
36     CircularArc          from IGESGeom,
37     ConicArc             from IGESGeom,
38     CopiousData          from IGESGeom,
39     Line                 from IGESGeom,
40     Point                from IGESGeom,
41     SplineCurve          from IGESGeom,
42     TransformationMatrix from IGESGeom,
43     Curve                from Geom,
44     BezierCurve          from Geom,
45     BSplineCurve         from Geom,
46     TrimmedCurve         from Geom,
47     CartesianPoint       from Geom,
48     Transformation       from Geom,
49     Curve                from Geom2d,
50     BezierCurve          from Geom2d,
51     BSplineCurve         from Geom2d,
52     TrimmedCurve         from Geom2d,
53     CartesianPoint       from Geom2d
54
55
56 is
57
58     Create returns BasicCurve;
59     ---Purpose : Creates  a tool BasicCurve  ready  to  run, with
60     --         epsilons  set  to  1.E-04,  TheModeTopo  to  True,  the
61     --         optimization of  the continuity to False.
62
63     Create(CS : CurveAndSurface from IGESToBRep)  returns BasicCurve;
64     ---Purpose : Creates a tool BasicCurve ready to run and sets its
65     --         fields as CS's.
66
67     Create(eps        : Real;
68            epsGeom    : Real;
69            epsCoeff   : Real;
70            mode       : Boolean; 
71            modeapprox : Boolean; 
72            optimized  : Boolean)  returns BasicCurve;
73     ---Purpose : Creates a tool BasicCurve ready to run.
74
75     TransferBasicCurve     (me    : in out; 
76                             start : IGESEntity from IGESData)
77         returns Curve from Geom;
78     ---Purpose :  Transfert  a  IGESEntity which  answer True  to  the
79     --         member : IGESToBRep::IsBasicCurve(IGESEntity).  If this
80     --         Entity could not be converted, this member returns a NullEntity.
81             
82            
83     Transfer2dBasicCurve   (me    : in out; 
84                             start : IGESEntity from IGESData) 
85         returns Curve from Geom2d;
86     ---Purpose :  Transfert  a  IGESEntity which  answer True  to  the
87     --         member : IGESToBRep::IsBasicCurve(IGESEntity).
88     --         The IGESEntity must be a curve UV and its associed TRSF must
89     --         be planar .If this Entity could not be converted, this member 
90     --         returns a NullEntity.
91         
92     TransferBSplineCurve   (me    : in out;
93                             start : BSplineCurve from IGESGeom)
94         returns Curve from Geom;
95         
96     Transfer2dBSplineCurve (me    : in out; 
97                             start : BSplineCurve from IGESGeom)
98         returns Curve from Geom2d;
99         
100     TransferCircularArc    (me    : in out; 
101                             start : CircularArc from IGESGeom)
102         returns Curve from Geom;
103         
104     Transfer2dCircularArc  (me    : in out; 
105                             start : CircularArc from IGESGeom)
106         returns Curve from Geom2d;
107         
108     TransferConicArc       (me    : in out; 
109                             start : ConicArc from IGESGeom)
110         returns Curve from Geom;
111         
112     Transfer2dConicArc     (me    : in out; 
113                             start : ConicArc from IGESGeom)
114         returns Curve from Geom2d;
115
116     TransferCopiousData    (me    : in out; 
117                             start : CopiousData from IGESGeom)
118         returns BSplineCurve from Geom;
119         
120     Transfer2dCopiousData  (me    : in out; 
121                             start : CopiousData from IGESGeom)
122         returns BSplineCurve from Geom2d;
123
124     TransferLine           (me    : in out; 
125                             start : Line from IGESGeom)
126         returns Curve from Geom;
127         
128     Transfer2dLine         (me    : in out; 
129                             start : Line from IGESGeom)
130         returns Curve from Geom2d;
131
132     TransferSplineCurve    (me    : in out; 
133                             start : SplineCurve from IGESGeom)
134         returns BSplineCurve from Geom;
135         
136     Transfer2dSplineCurve  (me    : in out; 
137                             start : SplineCurve from IGESGeom)
138         returns BSplineCurve from Geom2d;
139
140     TransferTransformation (me    : in out;
141                             start : TransformationMatrix from IGESGeom)
142         returns Transformation from Geom;
143         
144         
145 end BasicCurve;