0024624: Lost word in license statement in source files
[occt.git] / src / BRepBuilderAPI / BRepBuilderAPI_MakeEdge2d.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 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 #include <BRepBuilderAPI_MakeEdge2d.ixx>
18
19
20 //=======================================================================
21 //function : BRepBuilderAPI_MakeEdge2d
22 //purpose  : 
23 //=======================================================================
24
25 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const TopoDS_Vertex& V1, 
26                                        const TopoDS_Vertex& V2)
27 : myMakeEdge2d(V1,V2)
28 {
29   if ( myMakeEdge2d.IsDone()) {
30     Done();
31     myShape = myMakeEdge2d.Shape();
32   }
33 }
34
35 //=======================================================================
36 //function : BRepBuilderAPI_MakeEdge2d
37 //purpose  : 
38 //=======================================================================
39
40 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Pnt2d& P1, 
41                                        const gp_Pnt2d& P2)
42 : myMakeEdge2d(P1,P2)
43 {
44   if ( myMakeEdge2d.IsDone()) {
45     Done();
46     myShape = myMakeEdge2d.Shape();
47   }
48 }
49
50
51 //=======================================================================
52 //function : BRepBuilderAPI_MakeEdge2d
53 //purpose  : 
54 //=======================================================================
55
56 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Lin2d& L)
57 : myMakeEdge2d(L)
58 {
59   if ( myMakeEdge2d.IsDone()) {
60     Done();
61     myShape = myMakeEdge2d.Shape();
62   }
63 }
64
65 //=======================================================================
66 //function : BRepBuilderAPI_MakeEdge2d
67 //purpose  : 
68 //=======================================================================
69
70 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Lin2d& L, 
71                                        const Standard_Real p1, 
72                                        const Standard_Real p2)
73 : myMakeEdge2d(L,p1,p2)
74 {
75   if ( myMakeEdge2d.IsDone()) {
76     Done();
77     myShape = myMakeEdge2d.Shape();
78   }
79 }
80
81 //=======================================================================
82 //function : BRepBuilderAPI_MakeEdge2d
83 //purpose  : 
84 //=======================================================================
85
86 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Lin2d& L, 
87                                        const gp_Pnt2d& P1, 
88                                        const gp_Pnt2d& P2)
89 : myMakeEdge2d(L,P1,P2)
90 {
91   if ( myMakeEdge2d.IsDone()) {
92     Done();
93     myShape = myMakeEdge2d.Shape();
94   }
95 }
96
97 //=======================================================================
98 //function : BRepBuilderAPI_MakeEdge2d
99 //purpose  : 
100 //=======================================================================
101
102 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Lin2d& L, 
103                                        const TopoDS_Vertex& V1, 
104                                        const TopoDS_Vertex& V2)
105 : myMakeEdge2d(L,V1,V2)
106 {
107   if ( myMakeEdge2d.IsDone()) {
108     Done();
109     myShape = myMakeEdge2d.Shape();
110   }
111 }
112
113 //=======================================================================
114 //function : BRepBuilderAPI_MakeEdge2d
115 //purpose  : 
116 //=======================================================================
117
118 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Circ2d& C) 
119 : myMakeEdge2d(C)
120 {
121   if ( myMakeEdge2d.IsDone()) {
122     Done();
123     myShape = myMakeEdge2d.Shape();
124   }
125 }
126
127 //=======================================================================
128 //function : BRepBuilderAPI_MakeEdge2d
129 //purpose  : 
130 //=======================================================================
131
132 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Circ2d& C,
133                                        const Standard_Real p1,
134                                        const Standard_Real p2)
135 :myMakeEdge2d(C,p1,p2)
136 {
137   if ( myMakeEdge2d.IsDone()) {
138     Done();
139     myShape = myMakeEdge2d.Shape();
140   }
141 }
142
143 //=======================================================================
144 //function : BRepBuilderAPI_MakeEdge2d
145 //purpose  : 
146 //=======================================================================
147
148 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Circ2d& C,
149                                        const gp_Pnt2d& P1,
150                                        const gp_Pnt2d& P2)
151 : myMakeEdge2d(C,P1,P2)
152 {
153   if ( myMakeEdge2d.IsDone()) {
154     Done();
155     myShape = myMakeEdge2d.Shape();
156   }
157 }
158
159 //=======================================================================
160 //function : BRepBuilderAPI_MakeEdge2d
161 //purpose  : 
162 //=======================================================================
163
164 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Circ2d& C,
165                                        const TopoDS_Vertex& V1,
166                                        const TopoDS_Vertex& V2)
167 : myMakeEdge2d(C,V1,V2)
168 {
169   if ( myMakeEdge2d.IsDone()) {
170     Done();
171     myShape = myMakeEdge2d.Shape();
172   }
173 }
174
175 //=======================================================================
176 //function : BRepBuilderAPI_MakeEdge2d
177 //purpose  : 
178 //=======================================================================
179
180 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Elips2d& E) 
181 : myMakeEdge2d(E)
182 {
183   if ( myMakeEdge2d.IsDone()) {
184     Done();
185     myShape = myMakeEdge2d.Shape();
186   }
187 }
188
189 //=======================================================================
190 //function : BRepBuilderAPI_MakeEdge2d
191 //purpose  : 
192 //=======================================================================
193
194 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Elips2d& E,
195                                        const Standard_Real p1,
196                                        const Standard_Real p2)
197 : myMakeEdge2d(E,p1,p2)
198 {
199   if ( myMakeEdge2d.IsDone()) {
200     Done();
201     myShape = myMakeEdge2d.Shape();
202   }
203 }
204
205 //=======================================================================
206 //function : BRepBuilderAPI_MakeEdge2d
207 //purpose  : 
208 //=======================================================================
209
210 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Elips2d& E,
211                                        const gp_Pnt2d& P1,
212                                        const gp_Pnt2d& P2)
213 : myMakeEdge2d(E,P1,P2)
214 {
215   if ( myMakeEdge2d.IsDone()) {
216     Done();
217     myShape = myMakeEdge2d.Shape();
218   }
219 }
220
221 //=======================================================================
222 //function : BRepBuilderAPI_MakeEdge2d
223 //purpose  : 
224 //=======================================================================
225
226 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Elips2d& E,
227                                        const TopoDS_Vertex& V1,
228                                        const TopoDS_Vertex& V2)
229 : myMakeEdge2d(E,V1,V2)
230 {
231   if ( myMakeEdge2d.IsDone()) {
232     Done();
233     myShape = myMakeEdge2d.Shape();
234   }
235 }
236
237 //=======================================================================
238 //function : BRepBuilderAPI_MakeEdge2d
239 //purpose  : 
240 //=======================================================================
241
242 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Hypr2d& H)
243 : myMakeEdge2d(H)
244 {
245   if ( myMakeEdge2d.IsDone()) {
246     Done();
247     myShape = myMakeEdge2d.Shape();
248   }
249 }
250
251 //=======================================================================
252 //function : BRepBuilderAPI_MakeEdge2d
253 //purpose  : 
254 //=======================================================================
255
256 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Hypr2d& H,
257                                        const Standard_Real p1,
258                                        const Standard_Real p2)
259 : myMakeEdge2d(H,p1,p2)
260 {
261   if ( myMakeEdge2d.IsDone()) {
262     Done();
263     myShape = myMakeEdge2d.Shape();
264   }
265 }
266
267 //=======================================================================
268 //function : BRepBuilderAPI_MakeEdge2d
269 //purpose  : 
270 //=======================================================================
271
272 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Hypr2d& H,
273                                        const gp_Pnt2d& P1,
274                                        const gp_Pnt2d& P2)
275 : myMakeEdge2d(H,P1,P2)
276 {
277   if ( myMakeEdge2d.IsDone()) {
278     Done();
279     myShape = myMakeEdge2d.Shape();
280   }
281 }
282
283 //=======================================================================
284 //function : BRepBuilderAPI_MakeEdge2d
285 //purpose  : 
286 //=======================================================================
287
288 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Hypr2d& H,
289                                        const TopoDS_Vertex& V1,
290                                        const TopoDS_Vertex& V2)
291 : myMakeEdge2d(H,V1,V2)
292 {
293   if ( myMakeEdge2d.IsDone()) {
294     Done();
295     myShape = myMakeEdge2d.Shape();
296   }
297 }
298
299 //=======================================================================
300 //function : BRepBuilderAPI_MakeEdge2d
301 //purpose  : 
302 //=======================================================================
303
304 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Parab2d& P)
305 : myMakeEdge2d(P)
306 {
307   if ( myMakeEdge2d.IsDone()) {
308     Done();
309     myShape = myMakeEdge2d.Shape();
310   }
311 }
312
313 //=======================================================================
314 //function : BRepBuilderAPI_MakeEdge2d
315 //purpose  : 
316 //=======================================================================
317
318 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Parab2d& P,
319                                        const Standard_Real p1,
320                                        const Standard_Real p2)
321 : myMakeEdge2d(P,p1,p2)
322 {
323   if ( myMakeEdge2d.IsDone()) {
324     Done();
325     myShape = myMakeEdge2d.Shape();
326   }
327 }
328
329 //=======================================================================
330 //function : BRepBuilderAPI_MakeEdge2d
331 //purpose  : 
332 //=======================================================================
333
334 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Parab2d& P,
335                                        const gp_Pnt2d& P1,
336                                        const gp_Pnt2d& P2)
337 : myMakeEdge2d(P,P1,P2)
338 {
339   if ( myMakeEdge2d.IsDone()) {
340     Done();
341     myShape = myMakeEdge2d.Shape();
342   }
343 }
344
345 //=======================================================================
346 //function : BRepBuilderAPI_MakeEdge2d
347 //purpose  : 
348 //=======================================================================
349
350 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const gp_Parab2d& P,
351                                        const TopoDS_Vertex& V1,
352                                        const TopoDS_Vertex& V2)
353 : myMakeEdge2d(P,V1,V2)
354 {
355   if ( myMakeEdge2d.IsDone()) {
356     Done();
357     myShape = myMakeEdge2d.Shape();
358   }
359 }
360
361 //=======================================================================
362 //function : BRepBuilderAPI_MakeEdge2d
363 //purpose  : 
364 //=======================================================================
365
366 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const Handle(Geom2d_Curve)& L)
367 : myMakeEdge2d(L)
368 {
369   if ( myMakeEdge2d.IsDone()) {
370     Done();
371     myShape = myMakeEdge2d.Shape();
372   }
373 }
374
375 //=======================================================================
376 //function : BRepBuilderAPI_MakeEdge2d
377 //purpose  : 
378 //=======================================================================
379
380 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const Handle(Geom2d_Curve)& L,
381                                        const Standard_Real p1,
382                                        const Standard_Real p2)
383 : myMakeEdge2d(L,p1,p2)
384 {
385   if ( myMakeEdge2d.IsDone()) {
386     Done();
387     myShape = myMakeEdge2d.Shape();
388   }
389 }
390
391 //=======================================================================
392 //function : BRepBuilderAPI_MakeEdge2d
393 //purpose  : 
394 //=======================================================================
395
396 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const Handle(Geom2d_Curve)& L,
397                                        const gp_Pnt2d& P1,
398                                        const gp_Pnt2d& P2)
399 : myMakeEdge2d(L,P1,P2)
400 {
401   if ( myMakeEdge2d.IsDone()) {
402     Done();
403     myShape = myMakeEdge2d.Shape();
404   }
405 }
406
407 //=======================================================================
408 //function : BRepBuilderAPI_MakeEdge2d
409 //purpose  : 
410 //=======================================================================
411
412 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const Handle(Geom2d_Curve)& L,
413                                        const TopoDS_Vertex& V1,
414                                        const TopoDS_Vertex& V2)
415 : myMakeEdge2d(L,V1,V2)
416 {
417   if ( myMakeEdge2d.IsDone()) {
418     Done();
419     myShape = myMakeEdge2d.Shape();
420   }
421 }
422
423 //=======================================================================
424 //function : BRepBuilderAPI_MakeEdge2d
425 //purpose  : 
426 //=======================================================================
427
428 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const Handle(Geom2d_Curve)& L,
429                                        const gp_Pnt2d& P1,
430                                        const gp_Pnt2d& P2,
431                                        const Standard_Real p1,
432                                        const Standard_Real p2)
433 : myMakeEdge2d(L,P1,P2,p1,p2)
434 {
435   if ( myMakeEdge2d.IsDone()) {
436     Done();
437     myShape = myMakeEdge2d.Shape();
438   }
439 }
440
441 //=======================================================================
442 //function : BRepBuilderAPI_MakeEdge2d
443 //purpose  : 
444 //=======================================================================
445
446 BRepBuilderAPI_MakeEdge2d::BRepBuilderAPI_MakeEdge2d(const Handle(Geom2d_Curve)& L,
447                                        const TopoDS_Vertex& V1,
448                                        const TopoDS_Vertex& V2,
449                                        const Standard_Real p1,
450                                        const Standard_Real p2)
451 : myMakeEdge2d(L,V1,V2,p1,p2)
452 {
453   if ( myMakeEdge2d.IsDone()) {
454     Done();
455     myShape = myMakeEdge2d.Shape();
456   }
457 }
458
459 //=======================================================================
460 //function : Init
461 //purpose  : 
462 //=======================================================================
463
464 void  BRepBuilderAPI_MakeEdge2d::Init(const Handle(Geom2d_Curve)& C)
465 {
466   myMakeEdge2d.Init(C);
467   if ( myMakeEdge2d.IsDone()) {
468     Done();
469     myShape = myMakeEdge2d.Shape();
470   }
471 }
472
473 //=======================================================================
474 //function : Init
475 //purpose  : 
476 //=======================================================================
477
478 void  BRepBuilderAPI_MakeEdge2d::Init(const Handle(Geom2d_Curve)& C,
479                                const Standard_Real p1,
480                                const Standard_Real p2)
481 {
482   myMakeEdge2d.Init(C,p1,p2);
483   if ( myMakeEdge2d.IsDone()) {
484     Done();
485     myShape = myMakeEdge2d.Shape();
486   }
487 }
488
489 //=======================================================================
490 //function : Init
491 //purpose  : 
492 //=======================================================================
493
494 void  BRepBuilderAPI_MakeEdge2d::Init(const Handle(Geom2d_Curve)& C,
495                                const gp_Pnt2d& P1,
496                                const gp_Pnt2d& P2)
497 {
498   myMakeEdge2d.Init(C,P1,P2);
499   if ( myMakeEdge2d.IsDone()) {
500     Done();
501     myShape = myMakeEdge2d.Shape();
502   }
503 }
504
505 //=======================================================================
506 //function : Init
507 //purpose  : 
508 //=======================================================================
509
510 void  BRepBuilderAPI_MakeEdge2d::Init(const Handle(Geom2d_Curve)& C,
511                                const TopoDS_Vertex& V1,
512                                const TopoDS_Vertex& V2)
513 {
514   myMakeEdge2d.Init(C,V1,V2);
515   if ( myMakeEdge2d.IsDone()) {
516     Done();
517     myShape = myMakeEdge2d.Shape();
518   }
519 }
520
521
522 //=======================================================================
523 //function : Init
524 //purpose  : 
525 //=======================================================================
526
527 void  BRepBuilderAPI_MakeEdge2d::Init(const Handle(Geom2d_Curve)& C,
528                                const gp_Pnt2d& P1,
529                                const gp_Pnt2d& P2,
530                                const Standard_Real p1,
531                                const Standard_Real p2)
532 {
533   myMakeEdge2d.Init(C,P1,P2,p1,p2);
534   if ( myMakeEdge2d.IsDone()) {
535     Done();
536     myShape = myMakeEdge2d.Shape();
537   }
538 }
539
540
541 //=======================================================================
542 //function : Init
543 //purpose  : 
544 //=======================================================================
545
546 void  BRepBuilderAPI_MakeEdge2d::Init(const Handle(Geom2d_Curve)& CC,
547                                const TopoDS_Vertex& VV1,
548                                const TopoDS_Vertex& VV2,
549                                const Standard_Real pp1,
550                                const Standard_Real pp2)
551 {
552   myMakeEdge2d.Init(CC,VV1,VV2,pp1,pp2);
553   if ( myMakeEdge2d.IsDone()) {
554     Done();
555     myShape = myMakeEdge2d.Shape();
556   }
557 }
558
559 //=======================================================================
560 //function : IsDone
561 //purpose  : 
562 //=======================================================================
563
564 Standard_Boolean BRepBuilderAPI_MakeEdge2d::IsDone() const
565 {
566   return myMakeEdge2d.IsDone();
567 }
568
569
570 //=======================================================================
571 //function : Error
572 //purpose  : 
573 //=======================================================================
574
575 BRepBuilderAPI_EdgeError BRepBuilderAPI_MakeEdge2d::Error() const
576 {
577   switch ( myMakeEdge2d.Error()) {
578
579   case BRepLib_EdgeDone:
580     return BRepBuilderAPI_EdgeDone;
581
582   case BRepLib_PointProjectionFailed:
583     return BRepBuilderAPI_PointProjectionFailed;
584
585   case BRepLib_ParameterOutOfRange:
586     return BRepBuilderAPI_ParameterOutOfRange;
587
588   case BRepLib_DifferentPointsOnClosedCurve:
589     return BRepBuilderAPI_DifferentPointsOnClosedCurve;
590
591   case BRepLib_PointWithInfiniteParameter:
592     return BRepBuilderAPI_PointWithInfiniteParameter;
593
594   case BRepLib_DifferentsPointAndParameter:
595     return BRepBuilderAPI_DifferentsPointAndParameter;
596
597   case BRepLib_LineThroughIdenticPoints:
598     return BRepBuilderAPI_LineThroughIdenticPoints;
599
600   }
601
602   // portage WNT
603   return BRepBuilderAPI_EdgeDone;
604 }
605
606 //=======================================================================
607 //function : Edge
608 //purpose  : 
609 //=======================================================================
610
611 const TopoDS_Edge&  BRepBuilderAPI_MakeEdge2d::Edge()const 
612 {
613   return myMakeEdge2d.Edge();
614 }
615
616
617 //=======================================================================
618 //function : Vertex1
619 //purpose  : 
620 //=======================================================================
621
622 const TopoDS_Vertex&  BRepBuilderAPI_MakeEdge2d::Vertex1()const 
623 {
624   return myMakeEdge2d.Vertex1();
625 }
626
627
628 //=======================================================================
629 //function : Vertex2
630 //purpose  : 
631 //=======================================================================
632
633 const TopoDS_Vertex&  BRepBuilderAPI_MakeEdge2d::Vertex2()const 
634 {
635   return myMakeEdge2d.Vertex2();
636 }
637
638
639
640 //=======================================================================
641 //function : operator
642 //purpose  : 
643 //=======================================================================
644
645 BRepBuilderAPI_MakeEdge2d::operator TopoDS_Edge() const
646 {
647   return Edge();
648 }