7fd59977 |
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; |