0022627: Change OCCT memory management defaults
[occt.git] / src / BRepPrimAPI / BRepPrimAPI_MakePrism.cdl
1 -- File:        BRepPrimAPI_MakePrism.cdl
2 -- Created:     Tue Oct 12 11:26:48 1993
3 -- Author:      Remi LEQUETTE
4 --              <rle@phylox>
5 ---Copyright:    Matra Datavision 1993
6
7  
8 -- Modified by skv - Fri Mar  4 15:50:09 2005
9 -- Add methods for supporting history.
10
11 class MakePrism from BRepPrimAPI inherits MakeSweep from BRepPrimAPI
12
13         ---Purpose: Describes functions to build linear swept topologies, called prisms.
14         -- A prism is defined by:
15         -- -   a basis shape, which is swept, and
16         -- -   a sweeping direction, which is:
17         --   -   a vector for finite prisms, or
18         --   -   a direction for infinite or semi-infinite prisms.
19         -- The basis shape must not contain any solids.
20         -- The profile generates objects according to the following rules:
21         -- -   Vertices generate Edges
22         -- -   Edges generate Faces.
23         -- -   Wires generate Shells.
24         -- -   Faces generate Solids.
25         -- -   Shells generate Composite Solids
26         -- A MakePrism object provides a framework for:
27         -- -   defining the construction of a prism,
28         -- -   implementing the construction algorithm, and
29         -- -   consulting the result.
30                   
31
32 uses
33     Prism      from BRepSweep,
34     Shape      from TopoDS,
35     ListOfShape from TopTools,
36     Edge       from TopoDS,
37     Vec        from gp,
38     Dir        from gp
39
40 is
41
42
43     Create (S    : Shape from TopoDS;
44             V    : Vec from gp;
45             Copy : Boolean from Standard = Standard_False;
46             Canonize: Boolean from Standard = Standard_True)
47         ---Purpose: Builds the prism of base S and vector V. If C is true,
48         --          S is copied. If Canonize is true then generated surfaces
49         --          are attempted to be canonized in simple types
50         ---Level: Public
51     returns MakePrism from BRepPrimAPI;
52
53
54     Create (S         : Shape from TopoDS;
55             D         : Dir from gp;
56             Inf       : Boolean from Standard = Standard_True;
57             Copy      : Boolean from Standard = Standard_False;
58             Canonize  : Boolean from Standard = Standard_True)
59         ---Purpose: Builds a semi-infinite or an infinite prism of base S.
60         --          If Inf is true the prism  is infinite, if Inf is false
61         --          the prism is semi-infinite (in the direction D).  If C
62         --          is true S is copied (for semi-infinite prisms).
63         --          If Canonize is true then generated surfaces
64         --          are attempted to be canonized in simple types
65         ---Level: Public
66     returns MakePrism from BRepPrimAPI;
67
68
69     Prism(me) returns Prism from BRepSweep
70         ---Purpose: Returns the internal sweeping algorithm.
71         --          
72         ---C++: return const &
73         ---Level: Advanced
74     is static;
75     
76
77     Build(me : in out)
78         ---Purpose: Builds the resulting shape (redefined from MakeShape).
79         ---Level: Public  
80     is redefined;
81     
82
83     FirstShape (me : in out)
84     ---Purpose: Returns the  TopoDS  Shape of the bottom of the prism.
85     returns Shape from TopoDS;
86
87
88     LastShape (me : in out)
89         ---Purpose: Returns the TopoDS Shape of the top of the prism.
90         -- In the case of a finite prism, FirstShape returns the
91         -- basis of the prism, in other words, S if Copy is false;
92         -- otherwise, the copy of S belonging to the prism.
93         -- LastShape returns the copy of S translated by V at the
94         -- time of construction.
95     returns Shape from TopoDS;
96
97
98     Generated (me: in out; S : Shape from TopoDS)
99         ---Purpose: Returns ListOfShape from TopTools.
100         ---C++: return const &  
101     returns ListOfShape from TopTools
102     is redefined;
103  
104 -- Modified by skv - Fri Mar  4 15:50:09 2005 Begin
105 -- Add methods for supporting history. 
106
107     FirstShape (me : in out; theShape : Shape from TopoDS)
108             ---Purpose: Returns the TopoDS Shape of the bottom  of the  prism.
109             --          generated  with  theShape (subShape of the  generating shape).
110     returns Shape from TopoDS
111     is static;
112
113
114     LastShape (me : in out; theShape : Shape from TopoDS)
115     ---Purpose: Returns the  TopoDS  Shape of the top  of  the  prism.
116     --          generated  with  theShape (subShape of the  generating shape).
117     returns Shape from TopoDS
118     is static;
119  
120
121 -- Modified by skv - Fri Mar  4 15:50:09 2005 End
122
123
124 fields
125
126     myPrism : Prism from BRepSweep;
127
128 end MakePrism;