XYZTransform.cxx
Go to the documentation of this file.
1 
12 #include "XYZTransform.h"
13 
14 #include "UnaryTransform.h"
15 
16 using std::vector;
17 
18 namespace hippodraw {
19 
21  UnaryTransform * y,
22  UnaryTransform * z )
23 {
24  m_name = "XYZTransform";
25  m_x = x;
26  m_y = y;
27  m_z = z;
28 }
29 
31 {
32  delete m_x;
33  delete m_y;
34  delete m_z;
35 }
36 
38  : XYZTransformBase ( t )
39 {
40 #ifdef CLONE_DEFECT
41  m_x = dynamic_cast < UnaryTransform * > ( t.m_x->clone () );
42  m_y = dynamic_cast < UnaryTransform * > ( t.m_y->clone () );
43  m_z = dynamic_cast < UnaryTransform * > ( t.m_z->clone () );
44 #else
45  m_x = t.m_x->clone ();
46  m_y = t.m_y->clone ();
47  m_z = t.m_z->clone ();
48 #endif
49 }
50 
51 #ifdef CLONE_DEFECT
53 #else
55 #endif
56 {
57  return new XYZTransform ( *this );
58 }
59 
60 /* virtual */
61 void XYZTransform::transform ( double & x,
62  double & y,
63  double & z ) const
64 {
65  m_x->transform ( x );
66  m_y->transform ( y );
67  m_z->transform ( z );
68 }
69 
70 /* virtual */
71 void
73 transform ( std::vector< double > & x,
74  std::vector< double > & y,
75  std::vector< double > & z ) const
76 {
77  m_x->transform ( x );
78  m_y->transform ( y );
79  m_z->transform ( z );
80 }
81 
82 /* virtual */
83 void XYZTransform::validate ( Range & x, Range & y, Range & z ) const
84 {
85  m_x->validate ( x );
86  m_y->validate ( y );
87  m_z->validate ( z );
88 }
89 
90 /* virtual */
91 const Range & XYZTransform::limitX () const
92 {
93  return m_x->limits ();
94 }
95 
96 /* virtual */
97 const Range & XYZTransform::limitY () const
98 {
99  return m_y->limits ();
100 }
101 
102 /* virtual */
103 const Range & XYZTransform::limitZ () const
104 {
105  return m_z->limits ();
106 }
107 
109 {
110  return m_x;
111 }
112 
114 {
115  return m_y;
116 }
117 
119 {
120  return m_z;
121 }
122 
124 {
125  return m_z->isLinear();
126 }
127 
128 
129 } // namespace hippodraw
130 

Generated for HippoDraw Class Library by doxygen