Integration of OCCT 6.5.0 from SVN
[occt.git] / src / GC / GC_MakeMirror.cxx
1 // File:        GC_MakeMirror.cxx
2 // Created:     Fri Oct  2 16:36:54 1992
3 // Author:      Remi GILET
4 //              <reg@topsn3>
5
6 #include <GC_MakeMirror.ixx>
7 #include <GC_MakeMirror.hxx>
8 #include <gp_Ax3.hxx>
9 #include <StdFail_NotDone.hxx>
10
11 //=========================================================================
12 //   Creation d une symetrie de Geom par rapport a un point.              +
13 //=========================================================================
14
15 GC_MakeMirror::GC_MakeMirror(const gp_Pnt&  Point ) {
16   TheMirror = new Geom_Transformation();
17   TheMirror->SetMirror(Point);
18 }
19
20 //=========================================================================
21 //   Creation d une symetrie de Geom par rapport a une droite.            +
22 //=========================================================================
23
24 GC_MakeMirror::GC_MakeMirror(const gp_Ax1&  Axis ) {
25   TheMirror = new Geom_Transformation();
26   TheMirror->SetMirror(Axis);
27 }
28
29 //=========================================================================
30 //   Creation d une symetrie de Geom par rapport a une droite.            +
31 //=========================================================================
32
33 GC_MakeMirror::GC_MakeMirror(const gp_Lin&  Line ) {
34   TheMirror = new Geom_Transformation();
35   TheMirror->SetMirror(gp_Ax1(Line.Location(),Line.Direction()));
36 }
37
38 //=========================================================================
39 //   Creation d une symetrie 3d de Geom par rapport a une droite definie  +
40 //   par un point et une direction.                                       +
41 //=========================================================================
42
43 GC_MakeMirror::GC_MakeMirror(const gp_Pnt&  Point ,
44                                         const gp_Dir&  Direc ) {
45   TheMirror = new Geom_Transformation();
46   TheMirror->SetMirror(gp_Ax1(Point,Direc));
47 }
48
49 //=========================================================================
50 //   Creation d une symetrie 3d de Geom par rapport a un plan defini par  +
51 //   un Ax2 (Normale au plan et axe x du plan).                           +
52 //=========================================================================
53
54 GC_MakeMirror::GC_MakeMirror(const gp_Ax2&  Plane ) {
55   TheMirror = new Geom_Transformation();
56   TheMirror->SetMirror(Plane);
57 }
58
59 //=========================================================================
60 //   Creation d une symetrie 3d de gp par rapport a un plan Plane.        +
61 //=========================================================================
62
63 GC_MakeMirror::GC_MakeMirror(const gp_Pln&  Plane ) {
64   TheMirror = new Geom_Transformation();
65   TheMirror->SetMirror(Plane.Position().Ax2());
66 }
67
68 const Handle(Geom_Transformation)& GC_MakeMirror::Value() const
69
70   return TheMirror;
71 }
72
73 const Handle(Geom_Transformation)& GC_MakeMirror::Operator() const 
74 {
75   return TheMirror;
76 }
77
78 GC_MakeMirror::operator Handle(Geom_Transformation) () const
79 {
80   return TheMirror;
81 }
82