Integration of OCCT 6.5.0 from SVN
[occt.git] / src / BRepPrimAPI / BRepPrimAPI_MakeBox.cdl
1 -- File:        BRepPrimAPI_MakeBox.cdl
2 -- Created:     Wed Jul 21 16:07:07 1993
3 -- Author:      Remi LEQUETTE
4 --              <rle@nonox>
5 ---Copyright:    Matra Datavision 1993
6
7
8 class MakeBox from BRepPrimAPI  inherits MakeShape from BRepBuilderAPI
9
10         ---Purpose: Describes functions to build parallelepiped boxes.
11         -- A MakeBox object provides a framework for:
12         -- -   defining the construction of a box,
13         -- -   implementing the construction algorithm, and
14         -- -   consulting the result.
15
16 uses
17     Ax2   from gp,
18     Pnt   from gp,
19     Face  from TopoDS,  
20     Shell from TopoDS,
21     Solid from TopoDS,
22     Wedge from BRepPrim
23
24 raises
25     DomainError from Standard,
26     OutOfRange  from Standard,
27     NotDone     from StdFail
28
29 is
30
31     Create(dx, dy, dz : Real)
32     returns MakeBox from BRepPrimAPI
33         ---Purpose: Make a box with a corner at 0,0,0 and the other dx,dy,dz
34         ---Level: Public
35     raises
36         DomainError from Standard; -- if dx,dy,dz <= Precision::Confusion()
37
38     Create(P : Pnt from gp; dx, dy, dz : Real)
39     returns MakeBox from BRepPrimAPI
40         ---Purpose: Make a box with a corner at P and size dx, dy, dz.
41         ---Level: Public
42     raises
43         DomainError from Standard; -- if dx,dy,dz <= Precision::Confusion()
44
45
46     Create(P1,P2 : Pnt from gp)
47     returns MakeBox from BRepPrimAPI
48         ---Purpose: Make a box with corners P1,P2.
49         ---Level: Public
50     raises
51         DomainError from Standard; -- if dx,dy,dz <= Precision::Confusion()
52
53
54     Create(Axes : Ax2 from gp; dx, dy, dz : Real)
55     returns MakeBox from BRepPrimAPI
56         ---Purpose: Ax2 is the left corner and the axis.
57         ---Level: Public
58     raises
59         DomainError from Standard; -- if dx,dy,dz <= Precision::Confusion()
60
61         ---Purpose: Constructs a box such that its sides are parallel to the axes of
62         -- -   the global coordinate system, or
63         -- -   the local coordinate system Axis. and
64         -- -   with a corner at (0, 0, 0) and of size (dx, dy, dz), or
65         -- -   with a corner at point P and of size (dx, dy, dz), or
66         -- -   with corners at points P1 and P2.
67         -- Exceptions
68         -- Standard_DomainError if: dx, dy, dz are less than or equal to
69         --   Precision::Confusion(), or
70         -- -   the vector joining the points P1 and P2 has a
71         --   component projected onto the global coordinate
72         --   system less than or equal to Precision::Confusion().
73         --   In these cases, the box would be flat.   
74
75     Wedge(me : in out) returns Wedge from BRepPrim
76         ---Purpose: Returns the internal algorithm.
77         --          
78         ---C++: return &
79         ---Level: Public
80     is static;
81     
82
83     ----------------------------------------
84     --  Results
85     ----------------------------------------
86
87     Build(me : in out)
88         ---Purpose: Stores the solid in myShape.
89         ---Level: Public
90     is redefined;
91
92
93     Shell(me : in out) returns Shell from TopoDS
94         ---C++: return const &
95         ---C++: alias "Standard_EXPORT operator TopoDS_Shell();"
96         ---Purpose: Returns the constructed box as a shell.
97     is static;
98
99     Solid(me : in out) returns Solid from TopoDS
100         ---C++: return const &
101         ---C++: alias "Standard_EXPORT operator TopoDS_Solid();" 
102         ---Purpose: Returns the constructed box as a solid.
103     is static; 
104
105
106     BottomFace (me : in out) returns Face from TopoDS;
107         ---Purpose : Returns ZMin face
108         ---C++: return const &
109
110
111     BackFace (me : in out) returns Face from TopoDS;
112         ---Purpose : Returns XMin face
113         ---C++: return const &
114
115
116     FrontFace (me : in out) returns Face from TopoDS;
117         ---Purpose : Returns XMax face
118         ---C++: return const &
119
120
121     LeftFace (me : in out) returns Face from TopoDS;
122         ---Purpose : Returns YMin face
123         ---C++: return const &
124
125
126     RightFace (me : in out) returns Face from TopoDS;
127         ---Purpose : Returns YMax face
128         ---C++: return const &
129
130
131     TopFace (me : in out) returns Face from TopoDS;
132         ---Purpose : Returns ZMax face
133         ---C++: return const &
134
135
136 fields
137
138     myWedge : Wedge from BRepPrim;
139
140 end MakeBox;