1 -- File: BRepPrimAPI_MakePrism.cdl
2 -- Created: Tue Oct 12 11:26:48 1993
3 -- Author: Remi LEQUETTE
5 ---Copyright: Matra Datavision 1993
8 -- Modified by skv - Fri Mar 4 15:50:09 2005
9 -- Add methods for supporting history.
11 class MakePrism from BRepPrimAPI inherits MakeSweep from BRepPrimAPI
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.
35 ListOfShape from TopTools,
43 Create (S : Shape from TopoDS;
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
51 returns MakePrism from BRepPrimAPI;
54 Create (S : Shape from TopoDS;
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
66 returns MakePrism from BRepPrimAPI;
69 Prism(me) returns Prism from BRepSweep
70 ---Purpose: Returns the internal sweeping algorithm.
72 ---C++: return const &
78 ---Purpose: Builds the resulting shape (redefined from MakeShape).
83 FirstShape (me : in out)
84 ---Purpose: Returns the TopoDS Shape of the bottom of the prism.
85 returns Shape from TopoDS;
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;
98 Generated (me: in out; S : Shape from TopoDS)
99 ---Purpose: Returns ListOfShape from TopTools.
100 ---C++: return const &
101 returns ListOfShape from TopTools
104 -- Modified by skv - Fri Mar 4 15:50:09 2005 Begin
105 -- Add methods for supporting history.
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
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
121 -- Modified by skv - Fri Mar 4 15:50:09 2005 End
126 myPrism : Prism from BRepSweep;