0024830: Remove redundant keyword 'mutable' in CDL declarations
[occt.git] / src / IGESGeom / IGESGeom_SurfaceOfRevolution.cdl
1 -- Created on: 1993-01-09
2 -- Created by: CKY / Contract Toubro-Larsen ( Kiran )
3 -- Copyright (c) 1993-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 SurfaceOfRevolution from IGESGeom  inherits IGESEntity
18
19         ---Purpose: defines IGESSurfaceOfRevolution, Type <120> Form <0>
20         --          in package IGESGeom
21         --          A surface of revolution is defined by an axis of rotation
22         --          a generatrix, and start and terminate rotation angles. The
23         --          surface is created by rotating the generatrix about the axis
24         --          of rotation through the start and terminate rotation angles.
25
26 uses
27
28         Pnt         from gp,
29         Dir         from gp,
30         Vec         from gp,
31         Ax1         from gp,
32         Trsf        from gp,
33         Line        from IGESGeom
34
35 is
36
37         Create returns SurfaceOfRevolution;
38
39         -- Specific Methods pertaining to the class
40
41         Init (me          : mutable;
42               anAxis      : Line;
43               aGeneratrix : IGESEntity;
44               aStartAngle : Real;
45               anEndAngle  : Real);
46         ---Purpose : This method is used to set the fields of the class Line
47         --       - anAxis      : Axis of revolution
48         --       - aGeneratrix : The curve which is revolved about the axis
49         --       - aStartAngle : Start angle of the surface of revolution
50         --       - anEndAngle  : End angle of the surface of revolution
51
52         AxisOfRevolution (me) returns Line;
53         ---Purpose : returns the axis of revolution
54
55         Generatrix (me) returns IGESEntity;
56         ---Purpose : returns the curve which is revolved about the axis
57
58         StartAngle (me) returns Real;
59         ---Purpose : returns start angle of revolution
60
61         EndAngle (me) returns Real;
62         ---Purpose : returns end angle of revolution
63
64 fields
65
66 --
67 -- Class    : IGESGeom_SurfaceOfRevolution
68 --
69 -- Purpose  : Declaration of variables specific to the definition
70 --            of the Class SurfaceOfRevolution.
71 --
72 -- Reminder : A SurfaceOfRevolution instance is defined by :
73 --            An axis, a generatrix curve which is rotated about
74 --            the axis, the start and ending angles of rotation.
75
76         theLine       : Line;
77         theGeneratrix : IGESEntity;
78         theStartAngle : Real;
79         theEndAngle   : Real;
80
81 end SurfaceOfRevolution;