1 -- Created on: 1993-10-12
2 -- Created by: Remi LEQUETTE
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
23 -- Modified by skv - Fri Mar 4 15:50:09 2005
24 -- Add methods for supporting history.
26 class MakeRevol from BRepPrimAPI inherits MakeSweep from BRepPrimAPI
28 ---Purpose: Class to make revolved sweep topologies.
30 -- a revolved sweep is defined by :
32 -- * A basis topology which is swept.
34 -- The basis topology must not contain solids
35 -- (neither composite solids.).
37 -- The basis topology may be copied or shared in
40 -- * A rotation axis and angle :
42 -- - The axis is an Ax1 from gp.
44 -- - The angle is in [0, 2*Pi].
46 -- - The angle default value is 2*Pi.
49 -- The result is a topology with a higher dimension :
55 -- - Shell -> CompSolid.
57 -- Sweeping a Compound sweeps the elements of the
58 -- compound and creates a compound with the
65 ListOfShape from TopTools,
71 Create (S : Shape from TopoDS;
73 D : Real from Standard;
74 Copy : Boolean from Standard = Standard_False)
75 ---Purpose: Builds the Revol of base S, axis A and angle D. If C
76 -- is true, S is copied.
78 returns MakeRevol from BRepPrimAPI;
81 Create (S : Shape from TopoDS;
83 Copy : Boolean from Standard = Standard_False)
84 ---Purpose: Builds the Revol of base S, axis A and angle 2*Pi. If
85 -- C is true, S is copied.
87 returns MakeRevol from BRepPrimAPI;
90 Revol(me) returns Revol from BRepSweep
91 ---Purpose: Returns the internal sweeping algorithm.
93 ---C++: return const &
100 ---Purpose: Builds the resulting shape (redefined from MakeShape).
104 FirstShape (me : in out)
105 ---Purpose: Returns the first shape of the revol (coinciding with
106 -- the generating shape).
107 returns Shape from TopoDS;
110 LastShape (me : in out)
111 ---Purpose: Returns the TopoDS Shape of the end of the revol.
112 returns Shape from TopoDS;
115 Generated (me: in out; S : Shape from TopoDS)
116 ---C++: return const &
118 returns ListOfShape from TopTools
121 -- Modified by skv - Fri Mar 4 15:50:09 2005 Begin
122 -- Add methods for supporting history.
124 FirstShape (me : in out; theShape : Shape from TopoDS)
125 ---Purpose: Returns the TopoDS Shape of the beginning of the revolution,
126 -- generated with theShape (subShape of the generating shape).
127 returns Shape from TopoDS
131 LastShape (me : in out; theShape : Shape from TopoDS)
132 ---Purpose: Returns the TopoDS Shape of the end of the revolution,
133 -- generated with theShape (subShape of the generating shape).
134 returns Shape from TopoDS
139 ---Purpose: Check if there are degenerated edges in the result.
141 returns Boolean from Standard
146 ---C++: return const &
148 returns ListOfShape from TopTools
151 -- Modified by skv - Fri Mar 4 15:50:09 2005 End
156 myRevol : Revol from BRepSweep;
157 myDegenerated: ListOfShape from TopTools; -- skv