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