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