0022792: Globally defined symbol PI conflicts with VTK definition (Intel compiler)
[occt.git] / src / GC / GC_MakeCircle.cxx
1 // File:        GC_MakeCircle.cxx
2 // Created:     Fri Oct  2 16:32:04 1992
3 // Author:      Remi GILET
4 //              <reg@topsn3>
5
6 #include <GC_MakeCircle.ixx>
7 #include <gce_MakeCirc.hxx>
8 #include <StdFail_NotDone.hxx>
9
10 GC_MakeCircle::GC_MakeCircle(const gp_Circ& C)
11 {
12   TheError = gce_Done;
13   TheCircle = new Geom_Circle(C);
14 }
15
16 GC_MakeCircle::GC_MakeCircle(const gp_Ax2&       A2    ,
17                                const Standard_Real Radius)
18 {
19   if (Radius < 0.) { TheError = gce_NegativeRadius; }
20   else {
21     TheError = gce_Done;
22     TheCircle = new Geom_Circle(gp_Circ(A2,Radius));
23   }
24 }
25
26 GC_MakeCircle::GC_MakeCircle(const gp_Circ& Circ  ,
27                                const gp_Pnt&  Point ) 
28 {
29   gp_Circ C = gce_MakeCirc(Circ,Point);
30   TheCircle = new Geom_Circle(C);
31   TheError = gce_Done;
32 }
33
34 GC_MakeCircle::GC_MakeCircle(const gp_Circ& Circ ,
35                                const Standard_Real     Dist ) 
36 {
37   gce_MakeCirc C = gce_MakeCirc(Circ,Dist);
38   TheError = C.Status();
39   if (TheError == gce_Done) {
40     TheCircle = new Geom_Circle(C.Value());
41   }
42 }
43
44 GC_MakeCircle::GC_MakeCircle(const gp_Pnt& P1 ,
45                                const gp_Pnt& P2 ,
46                                const gp_Pnt& P3 ) 
47 {
48   gce_MakeCirc C = gce_MakeCirc(P1,P2,P3);
49   TheError = C.Status();
50   if (TheError == gce_Done) {
51     TheCircle = new Geom_Circle(C.Value());
52   }
53 }
54
55 GC_MakeCircle::GC_MakeCircle(const gp_Pnt& Point  ,
56                                const gp_Dir& Norm   ,
57                                const Standard_Real    Radius ) 
58 {
59   gce_MakeCirc C = gce_MakeCirc(Point,Norm,Radius);
60   TheError = C.Status();
61   if (TheError == gce_Done) {
62     TheCircle = new Geom_Circle(C.Value());
63   }
64 }
65
66 GC_MakeCircle::GC_MakeCircle(const gp_Pnt&        Point  ,
67                                const gp_Pnt&        PtAxis ,
68                                const Standard_Real  Radius ) 
69 {
70   gce_MakeCirc C = gce_MakeCirc(Point,PtAxis,Radius);
71   TheError = C.Status();
72   if (TheError == gce_Done) {
73     TheCircle = new Geom_Circle(C.Value());
74   }
75 }
76
77 GC_MakeCircle::GC_MakeCircle(const gp_Ax1& Axis   ,
78                                const Standard_Real    Radius ) 
79 {
80   gce_MakeCirc C = gce_MakeCirc(Axis,Radius);
81   TheError = C.Status();
82   if (TheError == gce_Done) {
83     TheCircle = new Geom_Circle(C.Value());
84   }
85 }
86
87 const Handle(Geom_Circle)& GC_MakeCircle::Value() const
88
89   StdFail_NotDone_Raise_if(!TheError == gce_Done,"");
90   return TheCircle;
91 }
92
93 const Handle(Geom_Circle)& GC_MakeCircle::Operator() const 
94 {
95   return Value();
96 }
97
98 GC_MakeCircle::operator Handle(Geom_Circle) () const
99 {
100   return Value();
101 }
102