1 // Created on: 1993-07-23
2 // Created by: Remi LEQUETTE
3 // Copyright (c) 1993-1999 Matra Datavision
4 // Copyright (c) 1999-2014 OPEN CASCADE SAS
5 //
6 // This file is part of Open CASCADE Technology software library.
7 //
8 // This library is free software; you can redistribute it and/or modify it under
9 // the terms of the GNU Lesser General Public License version 2.1 as published
10 // by the Free Software Foundation, with special exception defined in the file
11 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 // distribution for complete text of the license and disclaimer of any warranty.
13 //
14 // Alternatively, this file may be used under the terms of Open CASCADE
15 // commercial license or contractual agreement.
16 
17 
18 #include <BRepBuilderAPI_MakeEdge.hxx>
19 #include <Geom2d_Curve.hxx>
20 #include <Geom_Curve.hxx>
21 #include <Geom_Surface.hxx>
22 #include <gp_Circ.hxx>
23 #include <gp_Elips.hxx>
24 #include <gp_Hypr.hxx>
25 #include <gp_Lin.hxx>
26 #include <gp_Parab.hxx>
27 #include <gp_Pnt.hxx>
28 #include <StdFail_NotDone.hxx>
29 #include <TopoDS_Edge.hxx>
30 #include <TopoDS_Vertex.hxx>
31 
32 //=======================================================================
33 //function : BRepBuilderAPI_MakeEdge
34 //purpose  :
35 //=======================================================================
BRepBuilderAPI_MakeEdge()36 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge()
37 {}
38 
39 //=======================================================================
40 //function : BRepBuilderAPI_MakeEdge
41 //purpose  :
42 //=======================================================================
43 
BRepBuilderAPI_MakeEdge(const TopoDS_Vertex & V1,const TopoDS_Vertex & V2)44 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const TopoDS_Vertex& V1,
45 				   const TopoDS_Vertex& V2)
46 : myMakeEdge(V1,V2)
47 {
48   if ( myMakeEdge.IsDone()) {
49     Done();
50     myShape = myMakeEdge.Shape();
51   }
52 }
53 
54 
55 //=======================================================================
56 //function : BRepBuilderAPI_MakeEdge
57 //purpose  :
58 //=======================================================================
59 
BRepBuilderAPI_MakeEdge(const gp_Pnt & P1,const gp_Pnt & P2)60 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Pnt& P1,
61 				   const gp_Pnt& P2)
62 : myMakeEdge(P1,P2)
63 {
64   if ( myMakeEdge.IsDone()) {
65     Done();
66     myShape = myMakeEdge.Shape();
67   }
68 }
69 
70 
71 //=======================================================================
72 //function : BRepBuilderAPI_MakeEdge
73 //purpose  :
74 //=======================================================================
75 
BRepBuilderAPI_MakeEdge(const gp_Lin & L)76 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Lin& L)
77 : myMakeEdge(L)
78 {
79   if ( myMakeEdge.IsDone()) {
80     Done();
81     myShape = myMakeEdge.Shape();
82   }
83 }
84 
85 
86 //=======================================================================
87 //function : BRepBuilderAPI_MakeEdge
88 //purpose  :
89 //=======================================================================
90 
BRepBuilderAPI_MakeEdge(const gp_Lin & L,const Standard_Real p1,const Standard_Real p2)91 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Lin& L,
92 				   const Standard_Real p1,
93 				   const Standard_Real p2)
94 : myMakeEdge(L,p1,p2)
95 {
96   if ( myMakeEdge.IsDone()) {
97     Done();
98     myShape = myMakeEdge.Shape();
99   }
100 }
101 
102 
103 //=======================================================================
104 //function : BRepBuilderAPI_MakeEdge
105 //purpose  :
106 //=======================================================================
107 
BRepBuilderAPI_MakeEdge(const gp_Lin & L,const gp_Pnt & P1,const gp_Pnt & P2)108 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Lin& L,
109 				   const gp_Pnt& P1,
110 				   const gp_Pnt& P2)
111 : myMakeEdge(L,P1,P2)
112 {
113   if ( myMakeEdge.IsDone()) {
114     Done();
115     myShape = myMakeEdge.Shape();
116   }
117 }
118 
119 
120 //=======================================================================
121 //function : BRepBuilderAPI_MakeEdge
122 //purpose  :
123 //=======================================================================
124 
BRepBuilderAPI_MakeEdge(const gp_Lin & L,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2)125 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Lin& L,
126 				   const TopoDS_Vertex& V1,
127 				   const TopoDS_Vertex& V2)
128 : myMakeEdge(L,V1,V2)
129 {
130   if ( myMakeEdge.IsDone()) {
131     Done();
132     myShape = myMakeEdge.Shape();
133   }
134 }
135 
136 
137 //=======================================================================
138 //function : BRepBuilderAPI_MakeEdge
139 //purpose  :
140 //=======================================================================
141 
BRepBuilderAPI_MakeEdge(const gp_Circ & C)142 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Circ& C)
143 : myMakeEdge(C)
144 {
145   if ( myMakeEdge.IsDone()) {
146     Done();
147     myShape = myMakeEdge.Shape();
148   }
149 }
150 
151 
152 //=======================================================================
153 //function : BRepBuilderAPI_MakeEdge
154 //purpose  :
155 //=======================================================================
156 
BRepBuilderAPI_MakeEdge(const gp_Circ & C,const Standard_Real p1,const Standard_Real p2)157 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Circ& C,
158 				   const Standard_Real p1,
159 				   const Standard_Real p2)
160 : myMakeEdge(C,p1,p2)
161 {
162   if ( myMakeEdge.IsDone()) {
163     Done();
164     myShape = myMakeEdge.Shape();
165   }
166 }
167 
168 
169 //=======================================================================
170 //function : BRepBuilderAPI_MakeEdge
171 //purpose  :
172 //=======================================================================
173 
BRepBuilderAPI_MakeEdge(const gp_Circ & C,const gp_Pnt & P1,const gp_Pnt & P2)174 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Circ& C ,
175 				   const gp_Pnt&  P1,
176 				   const gp_Pnt&  P2 )
177 : myMakeEdge(C,P1,P2)
178 {
179   if ( myMakeEdge.IsDone()) {
180     Done();
181     myShape = myMakeEdge.Shape();
182   }
183 }
184 
185 
186 //=======================================================================
187 //function : BRepBuilderAPI_MakeEdge
188 //purpose  :
189 //=======================================================================
190 
BRepBuilderAPI_MakeEdge(const gp_Circ & C,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2)191 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Circ& C,
192 				   const TopoDS_Vertex& V1,
193 				   const TopoDS_Vertex& V2)
194 : myMakeEdge(C,V1,V2)
195 {
196   if ( myMakeEdge.IsDone()) {
197     Done();
198     myShape = myMakeEdge.Shape();
199   }
200 }
201 
202 
203 //=======================================================================
204 //function : BRepBuilderAPI_MakeEdge
205 //purpose  :
206 //=======================================================================
207 
BRepBuilderAPI_MakeEdge(const gp_Elips & E)208 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Elips& E)
209 :myMakeEdge(E)
210 {
211   if ( myMakeEdge.IsDone()) {
212     Done();
213     myShape = myMakeEdge.Shape();
214   }
215 }
216 
217 
218 //=======================================================================
219 //function : BRepBuilderAPI_MakeEdge
220 //purpose  :
221 //=======================================================================
222 
BRepBuilderAPI_MakeEdge(const gp_Elips & E,const Standard_Real p1,const Standard_Real p2)223 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Elips& E,
224 				   const Standard_Real p1,
225 				   const Standard_Real p2)
226 : myMakeEdge(E,p1,p2)
227 {
228   if ( myMakeEdge.IsDone()) {
229     Done();
230     myShape = myMakeEdge.Shape();
231   }
232 }
233 
234 
235 //=======================================================================
236 //function : BRepBuilderAPI_MakeEdge
237 //purpose  :
238 //=======================================================================
239 
BRepBuilderAPI_MakeEdge(const gp_Elips & E,const gp_Pnt & P1,const gp_Pnt & P2)240 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Elips& E,
241 				   const gp_Pnt& P1,
242 				   const gp_Pnt& P2)
243 : myMakeEdge(E,P1,P2)
244 {
245   if ( myMakeEdge.IsDone()) {
246     Done();
247     myShape = myMakeEdge.Shape();
248   }
249 }
250 
251 
252 //=======================================================================
253 //function : BRepBuilderAPI_MakeEdge
254 //purpose  :
255 //=======================================================================
256 
BRepBuilderAPI_MakeEdge(const gp_Elips & E,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2)257 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Elips& E,
258 				   const TopoDS_Vertex& V1,
259 				   const TopoDS_Vertex& V2)
260 : myMakeEdge(E,V1,V2)
261 {
262   if ( myMakeEdge.IsDone()) {
263     Done();
264     myShape = myMakeEdge.Shape();
265   }
266 }
267 
268 
269 //=======================================================================
270 //function : BRepBuilderAPI_MakeEdge
271 //purpose  :
272 //=======================================================================
273 
BRepBuilderAPI_MakeEdge(const gp_Hypr & H)274 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Hypr& H)
275 : myMakeEdge(H)
276 {
277   if ( myMakeEdge.IsDone()) {
278     Done();
279     myShape = myMakeEdge.Shape();
280   }
281 }
282 
283 
284 //=======================================================================
285 //function : BRepBuilderAPI_MakeEdge
286 //purpose  :
287 //=======================================================================
288 
BRepBuilderAPI_MakeEdge(const gp_Hypr & H,const Standard_Real p1,const Standard_Real p2)289 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Hypr& H,
290 				   const Standard_Real p1,
291 				   const Standard_Real p2)
292 : myMakeEdge(H,p1,p2)
293 {
294   if ( myMakeEdge.IsDone()) {
295     Done();
296     myShape = myMakeEdge.Shape();
297   }
298 }
299 
300 
301 //=======================================================================
302 //function : BRepBuilderAPI_MakeEdge
303 //purpose  :
304 //=======================================================================
305 
BRepBuilderAPI_MakeEdge(const gp_Hypr & H,const gp_Pnt & P1,const gp_Pnt & P2)306 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Hypr& H,
307 				   const gp_Pnt& P1,
308 				   const gp_Pnt& P2)
309 : myMakeEdge(H,P1,P2)
310 {
311   if ( myMakeEdge.IsDone()) {
312     Done();
313     myShape = myMakeEdge.Shape();
314   }
315 }
316 
317 
318 //=======================================================================
319 //function : BRepBuilderAPI_MakeEdge
320 //purpose  :
321 //=======================================================================
322 
BRepBuilderAPI_MakeEdge(const gp_Hypr & H,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2)323 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Hypr& H,
324 				   const TopoDS_Vertex& V1,
325 				   const TopoDS_Vertex& V2)
326 : myMakeEdge(H,V1,V2)
327 {
328   if ( myMakeEdge.IsDone()) {
329     Done();
330     myShape = myMakeEdge.Shape();
331   }
332 }
333 
334 
335 //=======================================================================
336 //function : BRepBuilderAPI_MakeEdge
337 //purpose  :
338 //=======================================================================
339 
BRepBuilderAPI_MakeEdge(const gp_Parab & P)340 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Parab& P)
341 : myMakeEdge(P)
342 {
343   if ( myMakeEdge.IsDone()) {
344     Done();
345     myShape = myMakeEdge.Shape();
346   }
347 }
348 
349 
350 //=======================================================================
351 //function : BRepBuilderAPI_MakeEdge
352 //purpose  :
353 //=======================================================================
354 
BRepBuilderAPI_MakeEdge(const gp_Parab & P,const Standard_Real p1,const Standard_Real p2)355 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Parab& P,
356 				   const Standard_Real p1,
357 				   const Standard_Real p2)
358 : myMakeEdge(P,p1,p2)
359 {
360   if ( myMakeEdge.IsDone()) {
361     Done();
362     myShape = myMakeEdge.Shape();
363   }
364 }
365 
366 
367 //=======================================================================
368 //function : BRepBuilderAPI_MakeEdge
369 //purpose  :
370 //=======================================================================
371 
BRepBuilderAPI_MakeEdge(const gp_Parab & P,const gp_Pnt & P1,const gp_Pnt & P2)372 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Parab& P,
373 				   const gp_Pnt& P1,
374 				   const gp_Pnt& P2)
375 : myMakeEdge(P,P1,P2)
376 {
377   if ( myMakeEdge.IsDone()) {
378     Done();
379     myShape = myMakeEdge.Shape();
380   }
381 }
382 
383 
384 //=======================================================================
385 //function : BRepBuilderAPI_MakeEdge
386 //purpose  :
387 //=======================================================================
388 
BRepBuilderAPI_MakeEdge(const gp_Parab & P,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2)389 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const gp_Parab& P,
390 				   const TopoDS_Vertex& V1,
391 				   const TopoDS_Vertex& V2)
392 : myMakeEdge(P,V1,V2)
393 {
394   if ( myMakeEdge.IsDone()) {
395     Done();
396     myShape = myMakeEdge.Shape();
397   }
398 }
399 
400 
401 //=======================================================================
402 //function : BRepBuilderAPI_MakeEdge
403 //purpose  :
404 //=======================================================================
405 
BRepBuilderAPI_MakeEdge(const Handle (Geom_Curve)& L)406 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom_Curve)& L)
407 : myMakeEdge(L)
408 {
409   if ( myMakeEdge.IsDone()) {
410     Done();
411     myShape = myMakeEdge.Shape();
412   }
413 }
414 
415 
416 //=======================================================================
417 //function : BRepBuilderAPI_MakeEdge
418 //purpose  :
419 //=======================================================================
420 
BRepBuilderAPI_MakeEdge(const Handle (Geom_Curve)& L,const Standard_Real p1,const Standard_Real p2)421 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom_Curve)& L,
422 				   const Standard_Real p1,
423 				   const Standard_Real p2)
424 : myMakeEdge(L,p1,p2)
425 {
426   if ( myMakeEdge.IsDone()) {
427     Done();
428     myShape = myMakeEdge.Shape();
429   }
430 }
431 
432 
433 //=======================================================================
434 //function : BRepBuilderAPI_MakeEdge
435 //purpose  :
436 //=======================================================================
437 
BRepBuilderAPI_MakeEdge(const Handle (Geom_Curve)& L,const gp_Pnt & P1,const gp_Pnt & P2)438 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom_Curve)& L,
439 				   const gp_Pnt& P1,
440 				   const gp_Pnt& P2)
441 : myMakeEdge(L,P1,P2)
442 {
443   if ( myMakeEdge.IsDone()) {
444     Done();
445     myShape = myMakeEdge.Shape();
446   }
447 }
448 
449 //=======================================================================
450 //function : BRepBuilderAPI_MakeEdge
451 //purpose  :
452 //=======================================================================
453 
BRepBuilderAPI_MakeEdge(const Handle (Geom_Curve)& L,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2)454 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom_Curve)& L,
455 				   const TopoDS_Vertex& V1,
456 				   const TopoDS_Vertex& V2)
457 : myMakeEdge(L,V1,V2)
458 {
459   if ( myMakeEdge.IsDone()) {
460     Done();
461     myShape = myMakeEdge.Shape();
462   }
463 }
464 
465 
466 //=======================================================================
467 //function : BRepBuilderAPI_MakeEdge
468 //purpose  :
469 //=======================================================================
470 
BRepBuilderAPI_MakeEdge(const Handle (Geom_Curve)& L,const gp_Pnt & P1,const gp_Pnt & P2,const Standard_Real p1,const Standard_Real p2)471 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom_Curve)& L,
472 				   const gp_Pnt& P1,
473 				   const gp_Pnt& P2,
474 				   const Standard_Real p1,
475 				   const Standard_Real p2)
476 : myMakeEdge(L,P1,P2,p1,p2)
477 {
478   if ( myMakeEdge.IsDone()) {
479     Done();
480     myShape = myMakeEdge.Shape();
481   }
482 }
483 
484 
485 //=======================================================================
486 //function : BRepBuilderAPI_MakeEdge
487 //purpose  :
488 //=======================================================================
489 
BRepBuilderAPI_MakeEdge(const Handle (Geom_Curve)& L,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2,const Standard_Real p1,const Standard_Real p2)490 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom_Curve)& L,
491 				   const TopoDS_Vertex& V1,
492 				   const TopoDS_Vertex& V2,
493 				   const Standard_Real p1,
494 				   const Standard_Real p2)
495 : myMakeEdge(L,V1,V2,p1,p2)
496 {
497   if ( myMakeEdge.IsDone()) {
498     Done();
499     myShape = myMakeEdge.Shape();
500   }
501 }
502 
503 
504 //=======================================================================
505 //function : BRepBuilderAPI_MakeEdge
506 //purpose  :
507 //=======================================================================
508 
BRepBuilderAPI_MakeEdge(const Handle (Geom2d_Curve)& L,const Handle (Geom_Surface)& S)509 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom2d_Curve)& L,
510 				   const Handle(Geom_Surface)& S)
511 : myMakeEdge(L,S)
512 {
513   if ( myMakeEdge.IsDone()) {
514     Done();
515     myShape = myMakeEdge.Shape();
516   }
517 }
518 
519 
520 //=======================================================================
521 //function : BRepBuilderAPI_MakeEdge
522 //purpose  :
523 //=======================================================================
524 
BRepBuilderAPI_MakeEdge(const Handle (Geom2d_Curve)& L,const Handle (Geom_Surface)& S,const Standard_Real p1,const Standard_Real p2)525 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom2d_Curve)& L,
526 				   const Handle(Geom_Surface)& S,
527 				   const Standard_Real p1,
528 				   const Standard_Real p2)
529 : myMakeEdge(L,S,p1,p2)
530 {
531   if ( myMakeEdge.IsDone()) {
532     Done();
533     myShape = myMakeEdge.Shape();
534   }
535 }
536 
537 
538 //=======================================================================
539 //function : BRepBuilderAPI_MakeEdge
540 //purpose  :
541 //=======================================================================
542 
BRepBuilderAPI_MakeEdge(const Handle (Geom2d_Curve)& L,const Handle (Geom_Surface)& S,const gp_Pnt & P1,const gp_Pnt & P2)543 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom2d_Curve)& L,
544 				   const Handle(Geom_Surface)& S,
545 				   const gp_Pnt& P1,
546 				   const gp_Pnt& P2)
547 : myMakeEdge(L,S,P1,P2)
548 {
549   if ( myMakeEdge.IsDone()) {
550     Done();
551     myShape = myMakeEdge.Shape();
552   }
553 }
554 
555 //=======================================================================
556 //function : BRepBuilderAPI_MakeEdge
557 //purpose  :
558 //=======================================================================
559 
BRepBuilderAPI_MakeEdge(const Handle (Geom2d_Curve)& L,const Handle (Geom_Surface)& S,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2)560 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom2d_Curve)& L,
561 				   const Handle(Geom_Surface)& S,
562 				   const TopoDS_Vertex& V1,
563 				   const TopoDS_Vertex& V2)
564 : myMakeEdge(L,S,V1,V2)
565 {
566   if ( myMakeEdge.IsDone()) {
567     Done();
568     myShape = myMakeEdge.Shape();
569   }
570 }
571 
572 
573 //=======================================================================
574 //function : BRepBuilderAPI_MakeEdge
575 //purpose  :
576 //=======================================================================
577 
BRepBuilderAPI_MakeEdge(const Handle (Geom2d_Curve)& L,const Handle (Geom_Surface)& S,const gp_Pnt & P1,const gp_Pnt & P2,const Standard_Real p1,const Standard_Real p2)578 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom2d_Curve)& L,
579 				   const Handle(Geom_Surface)& S,
580 				   const gp_Pnt& P1,
581 				   const gp_Pnt& P2,
582 				   const Standard_Real p1,
583 				   const Standard_Real p2)
584 : myMakeEdge(L,S,P1,P2,p1,p2)
585 {
586   if ( myMakeEdge.IsDone()) {
587     Done();
588     myShape = myMakeEdge.Shape();
589   }
590 }
591 
592 
593 //=======================================================================
594 //function : BRepBuilderAPI_MakeEdge
595 //purpose  :
596 //=======================================================================
597 
BRepBuilderAPI_MakeEdge(const Handle (Geom2d_Curve)& L,const Handle (Geom_Surface)& S,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2,const Standard_Real p1,const Standard_Real p2)598 BRepBuilderAPI_MakeEdge::BRepBuilderAPI_MakeEdge(const Handle(Geom2d_Curve)& L,
599 				   const Handle(Geom_Surface)& S,
600 				   const TopoDS_Vertex& V1,
601 				   const TopoDS_Vertex& V2,
602 				   const Standard_Real p1,
603 				   const Standard_Real p2)
604 : myMakeEdge(L,S,V1,V2,p1,p2)
605 {
606   if ( myMakeEdge.IsDone()) {
607     Done();
608     myShape = myMakeEdge.Shape();
609   }
610 }
611 
612 
613 //=======================================================================
614 //function : Init
615 //purpose  :
616 //=======================================================================
617 
Init(const Handle (Geom_Curve)& C)618 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom_Curve)& C)
619 {
620   myMakeEdge.Init(C);
621   if ( myMakeEdge.IsDone()) {
622     Done();
623     myShape = myMakeEdge.Shape();
624   }
625 }
626 
627 
628 //=======================================================================
629 //function : Init
630 //purpose  :
631 //=======================================================================
632 
Init(const Handle (Geom_Curve)& C,const Standard_Real p1,const Standard_Real p2)633 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom_Curve)& C,
634 			     const Standard_Real p1,
635 			     const Standard_Real p2)
636 {
637   myMakeEdge.Init(C,p1,p2);
638   if ( myMakeEdge.IsDone()) {
639     Done();
640     myShape = myMakeEdge.Shape();
641   }
642 }
643 
644 
645 //=======================================================================
646 //function : Init
647 //purpose  :
648 //=======================================================================
649 
Init(const Handle (Geom_Curve)& C,const gp_Pnt & P1,const gp_Pnt & P2)650 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom_Curve)& C,
651 			     const gp_Pnt& P1,
652 			     const gp_Pnt& P2)
653 {
654   myMakeEdge.Init(C,P1,P2);
655   if ( myMakeEdge.IsDone()) {
656     Done();
657     myShape = myMakeEdge.Shape();
658   }
659 }
660 
661 
662 //=======================================================================
663 //function : Init
664 //purpose  :
665 //=======================================================================
666 
Init(const Handle (Geom_Curve)& C,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2)667 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom_Curve)& C,
668 			     const TopoDS_Vertex& V1,
669 			     const TopoDS_Vertex& V2)
670 {
671   myMakeEdge.Init(C,V1,V2);
672   if ( myMakeEdge.IsDone()) {
673     Done();
674     myShape = myMakeEdge.Shape();
675   }
676 }
677 
678 
679 //=======================================================================
680 //function : Init
681 //purpose  :
682 //=======================================================================
683 
Init(const Handle (Geom_Curve)& C,const gp_Pnt & P1,const gp_Pnt & P2,const Standard_Real p1,const Standard_Real p2)684 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom_Curve)& C,
685 			     const gp_Pnt& P1,
686 			     const gp_Pnt& P2,
687 			     const Standard_Real p1,
688 			     const Standard_Real p2)
689 {
690   myMakeEdge.Init(C,P1,P2,p1,p2);
691   if ( myMakeEdge.IsDone()) {
692     Done();
693     myShape = myMakeEdge.Shape();
694   }
695 }
696 
697 
698 //=======================================================================
699 //function : Init
700 //purpose  :
701 //=======================================================================
702 
Init(const Handle (Geom_Curve)& CC,const TopoDS_Vertex & VV1,const TopoDS_Vertex & VV2,const Standard_Real pp1,const Standard_Real pp2)703 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom_Curve)& CC,
704 			     const TopoDS_Vertex& VV1,
705 			     const TopoDS_Vertex& VV2,
706 			     const Standard_Real pp1,
707 			     const Standard_Real pp2)
708 {
709   myMakeEdge.Init(CC,VV1,VV2,pp1,pp2);
710   if ( myMakeEdge.IsDone()) {
711     Done();
712     myShape = myMakeEdge.Shape();
713   }
714 }
715 
716 //=======================================================================
717 //function : Init
718 //purpose  :
719 //=======================================================================
720 
Init(const Handle (Geom2d_Curve)& C,const Handle (Geom_Surface)& S)721 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom2d_Curve)& C,
722 			     const Handle(Geom_Surface)& S)
723 {
724   myMakeEdge.Init(C,S);
725   if ( myMakeEdge.IsDone()) {
726     Done();
727     myShape = myMakeEdge.Shape();
728   }
729 }
730 
731 
732 //=======================================================================
733 //function : Init
734 //purpose  :
735 //=======================================================================
736 
Init(const Handle (Geom2d_Curve)& C,const Handle (Geom_Surface)& S,const Standard_Real p1,const Standard_Real p2)737 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom2d_Curve)& C,
738 			     const Handle(Geom_Surface)& S,
739 			     const Standard_Real p1,
740 			     const Standard_Real p2)
741 {
742   myMakeEdge.Init(C,S,p1,p2);
743   if ( myMakeEdge.IsDone()) {
744     Done();
745     myShape = myMakeEdge.Shape();
746   }
747 }
748 
749 
750 //=======================================================================
751 //function : Init
752 //purpose  :
753 //=======================================================================
754 
Init(const Handle (Geom2d_Curve)& C,const Handle (Geom_Surface)& S,const gp_Pnt & P1,const gp_Pnt & P2)755 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom2d_Curve)& C,
756 			     const Handle(Geom_Surface)& S,
757 			     const gp_Pnt& P1,
758 			     const gp_Pnt& P2)
759 {
760   myMakeEdge.Init(C,S,P1,P2);
761   if ( myMakeEdge.IsDone()) {
762     Done();
763     myShape = myMakeEdge.Shape();
764   }
765 }
766 
767 
768 //=======================================================================
769 //function : Init
770 //purpose  :
771 //=======================================================================
772 
Init(const Handle (Geom2d_Curve)& C,const Handle (Geom_Surface)& S,const TopoDS_Vertex & V1,const TopoDS_Vertex & V2)773 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom2d_Curve)& C,
774 			     const Handle(Geom_Surface)& S,
775 			     const TopoDS_Vertex& V1,
776 			     const TopoDS_Vertex& V2)
777 {
778   myMakeEdge.Init(C,S,V1,V2);
779   if ( myMakeEdge.IsDone()) {
780     Done();
781     myShape = myMakeEdge.Shape();
782   }
783 }
784 
785 
786 //=======================================================================
787 //function : Init
788 //purpose  :
789 //=======================================================================
790 
Init(const Handle (Geom2d_Curve)& C,const Handle (Geom_Surface)& S,const gp_Pnt & P1,const gp_Pnt & P2,const Standard_Real p1,const Standard_Real p2)791 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom2d_Curve)& C,
792 			     const Handle(Geom_Surface)& S,
793 			     const gp_Pnt& P1,
794 			     const gp_Pnt& P2,
795 			     const Standard_Real p1,
796 			     const Standard_Real p2)
797 {
798   myMakeEdge.Init(C,S,P1,P2,p1,p2);
799   if ( myMakeEdge.IsDone()) {
800     Done();
801     myShape = myMakeEdge.Shape();
802   }
803 }
804 
805 
806 //=======================================================================
807 //function : Init
808 //purpose  :
809 //=======================================================================
810 
Init(const Handle (Geom2d_Curve)& CC,const Handle (Geom_Surface)& S,const TopoDS_Vertex & VV1,const TopoDS_Vertex & VV2,const Standard_Real pp1,const Standard_Real pp2)811 void  BRepBuilderAPI_MakeEdge::Init(const Handle(Geom2d_Curve)& CC,
812 			     const Handle(Geom_Surface)& S,
813 			     const TopoDS_Vertex& VV1,
814 			     const TopoDS_Vertex& VV2,
815 			     const Standard_Real pp1,
816 			     const Standard_Real pp2)
817 {
818   myMakeEdge.Init(CC,S,VV1,VV2,pp1,pp2);
819   if ( myMakeEdge.IsDone()) {
820     Done();
821     myShape = myMakeEdge.Shape();
822   }
823 }
824 
825 
826 //=======================================================================
827 //function : IsDone
828 //purpose  :
829 //=======================================================================
830 
IsDone() const831 Standard_Boolean BRepBuilderAPI_MakeEdge::IsDone() const
832 {
833   return myMakeEdge.IsDone();
834 }
835 
836 
837 //=======================================================================
838 //function : Error
839 //purpose  :
840 //=======================================================================
841 
Error() const842 BRepBuilderAPI_EdgeError BRepBuilderAPI_MakeEdge::Error() const
843 {
844   switch ( myMakeEdge.Error()) {
845 
846   case BRepLib_EdgeDone:
847     return BRepBuilderAPI_EdgeDone;
848 
849   case BRepLib_PointProjectionFailed:
850     return BRepBuilderAPI_PointProjectionFailed;
851 
852   case BRepLib_ParameterOutOfRange:
853     return BRepBuilderAPI_ParameterOutOfRange;
854 
855   case BRepLib_DifferentPointsOnClosedCurve:
856     return BRepBuilderAPI_DifferentPointsOnClosedCurve;
857 
858   case BRepLib_PointWithInfiniteParameter:
859     return BRepBuilderAPI_PointWithInfiniteParameter;
860 
861   case BRepLib_DifferentsPointAndParameter:
862     return BRepBuilderAPI_DifferentsPointAndParameter;
863 
864   case BRepLib_LineThroughIdenticPoints:
865     return BRepBuilderAPI_LineThroughIdenticPoints;
866 
867   }
868 
869   // portage WNT
870   return BRepBuilderAPI_EdgeDone;
871 }
872 
873 //=======================================================================
874 //function : Edge
875 //purpose  :
876 //=======================================================================
877 
Edge()878 const TopoDS_Edge&  BRepBuilderAPI_MakeEdge::Edge()
879 {
880   return myMakeEdge.Edge();
881 }
882 
883 
884 //=======================================================================
885 //function : Vertex1
886 //purpose  :
887 //=======================================================================
888 
Vertex1() const889 const TopoDS_Vertex&  BRepBuilderAPI_MakeEdge::Vertex1()const
890 {
891   return myMakeEdge.Vertex1();
892 }
893 
894 
895 //=======================================================================
896 //function : Vertex2
897 //purpose  :
898 //=======================================================================
899 
Vertex2() const900 const TopoDS_Vertex&  BRepBuilderAPI_MakeEdge::Vertex2()const
901 {
902   return myMakeEdge.Vertex2();
903 }
904 
905 
906 
907 //=======================================================================
908 //function : operator
909 //purpose  :
910 //=======================================================================
911 
operator TopoDS_Edge()912 BRepBuilderAPI_MakeEdge::operator TopoDS_Edge()
913 {
914   return Edge();
915 }
916