Integration of OCCT 6.5.0 from SVN
[occt.git] / src / BRepFeat / BRepFeat_MakeRevol.cdl
1 -- File:        BRepFeat_MakeRevol.cdl
2 -- Created:     Tue Feb 13 14:24:53 1996
3 -- Author:      Jacques GOUSSARD
4 --              <jag@bravox>
5 ---Copyright:    Matra Datavision 1996
6
7
8 class MakeRevol from BRepFeat inherits Form from BRepFeat
9
10         ---Purpose: Describes functions to build revolved shells from basis shapes.
11
12 uses Shape                     from TopoDS,
13      Face                      from TopoDS,
14      Edge                      from TopoDS,
15      DataMapOfShapeListOfShape from TopTools,
16      Ax1                       from gp,
17      DataMapOfShapeShape       from TopTools,
18      SequenceOfCurve           from TColGeom,
19      Curve                     from Geom,
20      SequenceOfCurve           from TColGeom,
21      StatusError               from BRepFeat
22      
23     raises ConstructionError from Standard
24
25 is
26
27
28     Create
29
30         returns MakeRevol from BRepFeat;
31         ---Purpose: initializes the revolved shell class.
32         ---C++: inline
33
34
35     Create(Sbase     : Shape   from TopoDS;
36            Pbase     : Shape   from TopoDS;
37            Skface    : Face    from TopoDS;
38            Axis      : Ax1     from gp;
39            Fuse      : Integer from Standard;
40            Modify    : Boolean from Standard)
41     
42         ---Purpose: a face Pbase is selected in the
43         --   shape Sbase to serve as the basis for the
44         --   revolved shell. The revolution will be defined
45         --   by the axis Axis and Fuse offers a choice between:
46         --   -   removing matter with a Boolean cut using the setting 0
47         --   -   adding matter with Boolean fusion using the setting 1.
48         --     The sketch face Skface serves to determine
49         -- the type of operation. If it is inside the basis
50         -- shape, a local operation such as glueing can be performed.
51         ---C++: inline
52                 returns MakeRevol from BRepFeat;
53
54
55     Init(me: in out; Sbase     : Shape   from TopoDS;
56                      Pbase     : Shape   from TopoDS;
57                      Skface    : Face    from TopoDS;
58                      Axis      : Ax1     from gp;
59                      Fuse      : Integer from Standard;
60                      Modify    : Boolean from Standard)
61     
62         is static;
63
64
65     Add(me: in out; E: Edge from TopoDS; OnFace: Face from TopoDS)
66
67         ---Purpose: Indicates that the edge <E> will slide on the face
68         -- <OnFace>. Raises ConstructionError if the  face does not belong to the
69         -- basis shape, or the edge to the prismed shape.
70         raises ConstructionError from Standard
71         
72         is static;
73
74
75     Perform(me: in out; Angle: Real from Standard)
76     
77         is static;
78
79
80     Perform(me: in out; Until: Shape from TopoDS)
81     
82         is static;
83
84
85     Perform(me: in out; From : Shape from TopoDS;
86                         Until: Shape from TopoDS)
87     
88         is static;
89         ---Purpose: Reconstructs the feature topologically.
90
91     PerformThruAll(me: in out)
92     
93         is static;
94         ---Purpose: Builds an infinite shell. The infinite descendants
95         -- will not be kept in the result.
96
97     PerformUntilAngle(me: in out; Until :  Shape from TopoDS;
98                         Angle :  Real  from Standard)
99     
100         is static;
101         ---Purpose: Assigns both a limiting shape, Until from
102         -- TopoDS_Shape, and an angle, Angle at
103         -- which to stop generation of the revolved shell feature.
104     Curves(me: in out; S : in out SequenceOfCurve from TColGeom);
105     
106
107     BarycCurve(me: in out)    
108         returns Curve from Geom;
109
110
111 fields
112
113     myPbase  : Shape                     from TopoDS;
114     mySlface : DataMapOfShapeListOfShape from TopTools;
115     myAxis   : Ax1                       from gp;
116     myCurves : SequenceOfCurve           from TColGeom;
117     myBCurve : Curve                     from Geom;
118     myStatusError : StatusError          from BRepFeat;
119
120 end MakeRevol;