0024734: Convertation of the generic classes to the non-generic. Part 4
[occt.git] / src / BRepPrimAPI / BRepPrimAPI_MakeRevol.cdl
1 -- Created on: 1993-10-12
2 -- Created by: Remi LEQUETTE
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 -- Modified by skv - Fri Mar  4 15:50:09 2005
18 -- Add methods for supporting history.
19
20 class MakeRevol from BRepPrimAPI inherits MakeSweep from BRepPrimAPI
21
22         ---Purpose: Class to make revolved sweep topologies.
23         --          
24         --          a revolved sweep is defined by :
25         --          
26         --          * A basis topology which is swept.
27         --          
28         --            The   basis topology  must   not  contain solids
29         --            (neither composite solids.).
30         --            
31         --            The basis topology  may be copied  or  shared in
32         --            the result.
33         --            
34         --          * A rotation axis and angle :
35         --          
36         --            - The axis is an Ax1 from gp.
37         --            
38         --            - The angle is in [0, 2*Pi].
39         --            
40         --            - The angle default value is 2*Pi.
41         --          
42         --          
43         --          The result is a topology with a higher dimension :
44         --          
45         --            - Vertex -> Edge.
46         --            - Edge   -> Face.
47         --            - Wire   -> Shell.
48         --            - Face   -> Solid.
49         --            - Shell  -> CompSolid.
50         --            
51         --            Sweeping a Compound sweeps  the elements  of the
52         --            compound  and creates    a  compound with    the
53         --            results. 
54         --           
55
56 uses
57     Revol      from BRepSweep,
58     Shape      from TopoDS,
59     ListOfShape from TopTools,
60     Edge       from TopoDS,
61     Ax1        from gp
62
63 is
64
65     Create (S    : Shape   from TopoDS;
66             A    : Ax1     from gp;
67             D    : Real    from Standard;
68             Copy : Boolean from Standard = Standard_False)
69         ---Purpose: Builds the Revol of base S, axis  A and angle  D. If C
70         --          is true, S is copied.
71         ---Level: Public
72     returns MakeRevol from BRepPrimAPI;
73
74
75     Create (S    : Shape   from TopoDS;
76             A    : Ax1     from gp;
77             Copy : Boolean from Standard = Standard_False)
78         ---Purpose: Builds the Revol of base S, axis  A and angle 2*Pi. If
79         --          C is true, S is copied.
80         ---Level: Public
81     returns MakeRevol from BRepPrimAPI;
82
83
84     Revol(me) returns Revol from BRepSweep
85         ---Purpose: Returns the internal sweeping algorithm.
86         --          
87         ---C++: return const &
88         ---Level: Public
89     is static;
90
91     
92     Build(me : in out)
93     is redefined;
94         ---Purpose: Builds the resulting shape (redefined from MakeShape).
95         ---Level: Public    
96
97
98     FirstShape (me : in out)
99         ---Purpose: Returns the first shape of the revol  (coinciding with
100         --          the generating shape).
101     returns Shape from TopoDS;
102
103
104     LastShape (me : in out)
105         ---Purpose: Returns the TopoDS Shape of the end of the revol.
106     returns Shape from TopoDS;
107
108
109     Generated (me: in out; S : Shape from TopoDS)
110         ---C++: return const & 
111         ---Level: Public
112     returns ListOfShape from TopTools
113     is redefined;
114
115 -- Modified by skv - Fri Mar  4 15:50:09 2005 Begin
116 -- Add methods for supporting history. 
117
118     FirstShape (me : in out; theShape : Shape from TopoDS)
119         ---Purpose: Returns the TopoDS Shape of the beginning of the revolution,
120         --          generated with theShape  (subShape of the generating shape).
121     returns Shape from TopoDS
122     is static;
123
124
125     LastShape (me : in out; theShape : Shape from TopoDS)
126         ---Purpose: Returns the TopoDS Shape of the end of the revolution,
127         --          generated with  theShape (subShape of the  generating shape).
128     returns Shape from TopoDS
129     is static;
130  
131
132     HasDegenerated(me) 
133         ---Purpose: Check if there are degenerated edges in the result.
134         ---Level: Public
135     returns Boolean from Standard 
136     is static;
137  
138
139     Degenerated(me)
140         ---C++: return const & 
141         ---Level: Public
142     returns ListOfShape from TopTools
143     is static;
144  
145 -- Modified by skv - Fri Mar  4 15:50:09 2005 End
146
147  
148 fields
149
150     myRevol      :  Revol       from BRepSweep; 
151     myDegenerated:  ListOfShape from TopTools;   -- skv
152     
153
154 end MakeRevol;