Integration of OCCT 6.5.0 from SVN
[occt.git] / src / BRepBuilderAPI / BRepBuilderAPI_MakeWire.cxx
1 // File:        BRepBuilderAPI_MakeWire.cxx
2 // Created:     Fri Jul 23 15:51:57 1993
3 // Author:      Remi LEQUETTE
4 //              <rle@nonox>
5
6
7 #include <BRepBuilderAPI_MakeWire.ixx>
8
9
10 //=======================================================================
11 //function : BRepBuilderAPI_MakeWire
12 //purpose  : 
13 //=======================================================================
14
15 BRepBuilderAPI_MakeWire::BRepBuilderAPI_MakeWire()
16 {
17 }
18
19
20 //=======================================================================
21 //function : BRepBuilderAPI_MakeWire
22 //purpose  : 
23 //=======================================================================
24
25 BRepBuilderAPI_MakeWire::BRepBuilderAPI_MakeWire(const TopoDS_Edge& E)
26 : myMakeWire(E)
27 {
28   if ( myMakeWire.IsDone()) {
29     Done();
30     myShape = myMakeWire.Wire();
31   }
32 }
33
34
35 //=======================================================================
36 //function : BRepBuilderAPI_MakeWire
37 //purpose  : 
38 //=======================================================================
39
40 BRepBuilderAPI_MakeWire::BRepBuilderAPI_MakeWire(const TopoDS_Edge& E1, 
41                                    const TopoDS_Edge& E2)
42 : myMakeWire(E1,E2)
43 {
44   if ( myMakeWire.IsDone()) {
45     Done();
46     myShape = myMakeWire.Wire();
47   }
48 }
49
50
51 //=======================================================================
52 //function : BRepBuilderAPI_MakeWire
53 //purpose  : 
54 //=======================================================================
55
56 BRepBuilderAPI_MakeWire::BRepBuilderAPI_MakeWire(const TopoDS_Edge& E1,
57                                    const TopoDS_Edge& E2, 
58                                    const TopoDS_Edge& E3)
59 : myMakeWire(E1,E2,E3)
60 {
61   if ( myMakeWire.IsDone()) {
62     Done();
63     myShape = myMakeWire.Wire();
64   }
65 }
66
67
68 //=======================================================================
69 //function : BRepBuilderAPI_MakeWire
70 //purpose  : 
71 //=======================================================================
72
73 BRepBuilderAPI_MakeWire::BRepBuilderAPI_MakeWire(const TopoDS_Edge& E1, 
74                                    const TopoDS_Edge& E2,
75                                    const TopoDS_Edge& E3, 
76                                    const TopoDS_Edge& E4)
77 : myMakeWire(E1,E2,E3,E4)
78 {
79   if ( myMakeWire.IsDone()) {
80     Done();
81     myShape = myMakeWire.Wire();
82   }
83 }
84
85
86 //=======================================================================
87 //function : BRepBuilderAPI_MakeWire
88 //purpose  : 
89 //=======================================================================
90
91 BRepBuilderAPI_MakeWire::BRepBuilderAPI_MakeWire(const TopoDS_Wire& W)
92 : myMakeWire(W)
93 {
94   if ( myMakeWire.IsDone()) {
95     Done();
96     myShape = myMakeWire.Wire();
97   }
98 }
99
100
101 //=======================================================================
102 //function : BRepBuilderAPI_MakeWire
103 //purpose  : 
104 //=======================================================================
105
106 BRepBuilderAPI_MakeWire::BRepBuilderAPI_MakeWire(const TopoDS_Wire& W, 
107                                    const TopoDS_Edge& E)
108 : myMakeWire(W,E)
109 {
110   if ( myMakeWire.IsDone()) {
111     Done();
112     myShape = myMakeWire.Wire();
113   }
114 }
115
116
117 //=======================================================================
118 //function : Add
119 //purpose  : 
120 //=======================================================================
121
122 void  BRepBuilderAPI_MakeWire::Add(const TopoDS_Wire& W)
123 {
124   myMakeWire.Add(W);
125   if ( myMakeWire.IsDone()) {
126     Done();
127     myShape = myMakeWire.Wire();
128   }
129 }
130
131 //=======================================================================
132 //function : Add
133 //purpose  : 
134 //=======================================================================
135
136 void  BRepBuilderAPI_MakeWire::Add(const TopoDS_Edge& E)
137 {
138   myMakeWire.Add(E);
139   if ( myMakeWire.IsDone()) {
140     Done();
141     myShape = myMakeWire.Wire();
142   }
143 }
144
145 //=======================================================================
146 //function : Add
147 //purpose  : 
148 //=======================================================================
149
150 void  BRepBuilderAPI_MakeWire::Add(const TopTools_ListOfShape& L)
151 {
152   myMakeWire.Add(L);
153   if ( myMakeWire.IsDone()) {
154     Done();
155     myShape = myMakeWire.Wire();
156   }
157 }
158
159
160 //=======================================================================
161 //function : Wire
162 //purpose  : 
163 //=======================================================================
164
165 const TopoDS_Wire&  BRepBuilderAPI_MakeWire::Wire()const 
166 {
167   return myMakeWire.Wire();
168 }
169
170
171 //=======================================================================
172 //function : Edge
173 //purpose  : 
174 //=======================================================================
175
176 const TopoDS_Edge&  BRepBuilderAPI_MakeWire::Edge()const 
177 {
178   return myMakeWire.Edge();
179 }
180
181
182 //=======================================================================
183 //function : Vertex
184 //purpose  : 
185 //=======================================================================
186
187 const TopoDS_Vertex&  BRepBuilderAPI_MakeWire::Vertex()const 
188 {
189   return myMakeWire.Vertex();
190 }
191
192
193 //=======================================================================
194 //function : operator
195 //purpose  : 
196 //=======================================================================
197
198 BRepBuilderAPI_MakeWire::operator TopoDS_Wire() const
199 {
200   return Wire();
201 }
202
203
204 //=======================================================================
205 //function : IsDone
206 //purpose  : 
207 //=======================================================================
208
209 Standard_Boolean BRepBuilderAPI_MakeWire::IsDone() const
210 {
211   return myMakeWire.IsDone();
212 }
213
214
215
216 //=======================================================================
217 //function : Error
218 //purpose  : 
219 //=======================================================================
220
221 BRepBuilderAPI_WireError BRepBuilderAPI_MakeWire::Error() const
222 {
223   switch ( myMakeWire.Error()) {
224
225   case BRepLib_WireDone: 
226     return BRepBuilderAPI_WireDone;
227
228   case BRepLib_EmptyWire:
229     return BRepBuilderAPI_EmptyWire;
230
231   case BRepLib_DisconnectedWire:
232     return BRepBuilderAPI_DisconnectedWire;
233
234   case BRepLib_NonManifoldWire:
235     return BRepBuilderAPI_NonManifoldWire;
236   }
237
238   // portage WNT
239   return BRepBuilderAPI_WireDone;
240 }