QwAnalysis
Uv2xy Class Reference

Converts between (u,v) and (x,y) coordinates. More...

#include <uv2xy.h>

Public Member Functions

 Uv2xy (EQwRegionID region)
 Create a transformation helper by region. More...
 
 Uv2xy (const double angleUdeg)
 Create a transformation helper from one angle. More...
 
 Uv2xy (const double angleUdeg, const double angleVdeg)
 Create a transformation helper from two angles. More...
 
void SetWireSpacing (const double spacing)
 Set the wire spacing (perpendicular distance between wires) More...
 
void SetOffset (const double offsetX, const double offsetY)
 Set the offset (origin of UV frame in XY coordinates) More...
 
void SetAngleUVinXY (const double angleUrad, const double angleVrad)
 Set the angles of the U and V axis in the X and Y frame. More...
 
void SetOriginUVinXY (const double originX, const double originY)
 Set the origin of the UV frame in the XY frame. More...
 
void SetOriginXYinUV (const double originU, const double originV)
 Set the origin of the XY frame in the UV frame. More...
 
void ShiftOriginUVinXY (const double shiftX, const double shiftY)
 Shift origin of the UV frame by XY coordinates. More...
 
void ShiftOriginXYinUV (const double shiftU, const double shiftV)
 Shift origin of the XY frame by UV coordinates. More...
 
void PrintUV ()
 Print UV transformation matrix. More...
 
void PrintXY ()
 Print XY transformation matrix. More...
 
void Print ()
 Print UV and XY transformation matrices. More...
 
double uv2x (double u, double v)
 Transform from [u,v] to x. More...
 
double uv2y (double u, double v)
 Transform from [u,v] to y. More...
 
double uv2mx (double u, double v)
 Transform from [u,v] to mx. More...
 
double uv2my (double u, double v)
 Transform from [u,v] to my. More...
 
double xy2u (double x, double y)
 Transform from [x,y] to u. More...
 
double xy2v (double x, double y)
 Transform from [x,y] to v. More...
 
double xy2mu (double x, double y)
 Transform from [x,y] to mu. More...
 
double xy2mv (double x, double y)
 Transform from [x,y] to mv. More...
 

Private Member Functions

void InitializeRotationMatrices ()
 Initialize the rotation matrixes based on the stored angles. More...
 

Private Attributes

double fUV [2][2]
 Transformation matrix UV from [u,v] to [x,y],. More...
 
double fXY [2][2]
 which satisifies $ [x,y] = UV * [u,v] $ More...
 
double fOffset [2]
 which satisifies $ [u,v] = XY * [x,y] $ More...
 
double fWireSpacing
 Wirespacing in the u/v direction. More...
 
double fAngleUrad
 Angle of the U direction in radians. More...
 
double fAngleVrad
 Angle of the V direction in radians. More...
 
double fOriginXYinUV [2]
 Origin of the XY system in UV coordinates. More...
 
double fOriginUVinXY [2]
 Origin of the UV system in XY coordinates. More...
 

Friends

class QwTrackingTreeCombine
 Friend class because of heavy use of private attributes. More...
 

Detailed Description

Converts between (u,v) and (x,y) coordinates.

This class is to be used to convert the un-orthogonal(word?) u and v coordinates of the Region 2 and 3 drift chamber wire planes into x and y coordinates.

The transformation formulas with identical origins are

\[ x = u \cdot \cos \theta_u + v \cdot \cos \theta_v, \qquad y = u \cdot \sin \theta_u + v \cdot \sin \theta_v, \]

\[ u = x \cdot \cos \theta_u + y \cdot \sin \theta_u, \qquad v = x \cdot \cos \theta_v + y \cdot \sin \theta_v, \]

with $ \theta_u $ the angle of the u wires and $ \theta_v $ the angle of the v wires with respect to the x axis. When $ \theta_u $ and $ \theta_v $ are not orthogonal, the transformation matrices are not normalized.

It is important to realize that the angle of the U wires is not equal to the angle of the U axis! If U wires are strung at constant values of the U coordinate (i.e. with u = 1 wire, u = 2 wire, u = 3 wire, etc), the U wires are orthogonal to the U axis.

The origins are not identical and an offset can be included.

Definition at line 52 of file uv2xy.h.

Constructor & Destructor Documentation

Uv2xy::Uv2xy ( EQwRegionID  region)

Create a transformation helper by region.

Uv2xy::Uv2xy ( const double  angleU)

Create a transformation helper from one angle.

Create a coordinate transformation helper object based on a single angle

Parameters
angleUAngle (in radians) of the U axis

Definition at line 33 of file uv2xy.cc.

References InitializeRotationMatrices(), Qw::pi, SetAngleUVinXY(), SetOffset(), SetOriginUVinXY(), and SetWireSpacing().

34 {
35  // Reset wire spacing
36  SetWireSpacing(0.0);
37 
38  // No offset of the origins
39  SetOffset(0.0, 0.0);
40  SetOriginUVinXY(0.0, 0.0);
41 
42  // Convert angles to radians and create the transformation matrices
43  double angleV = Qw::pi - angleU;
44  // Ensure correct handedness
45  if (fmod(angleV,2.0*Qw::pi) - fmod(angleU,2.0*Qw::pi) < 0.0) angleV += Qw::pi;
46  // Set the angles
47  SetAngleUVinXY(angleU, angleV);
49 }
static const double pi
Angles: base unit is radian.
Definition: QwUnits.h:102
void SetOriginUVinXY(const double originX, const double originY)
Set the origin of the UV frame in the XY frame.
Definition: uv2xy.h:81
void SetWireSpacing(const double spacing)
Set the wire spacing (perpendicular distance between wires)
Definition: uv2xy.h:65
void SetOffset(const double offsetX, const double offsetY)
Set the offset (origin of UV frame in XY coordinates)
Definition: uv2xy.h:70
void SetAngleUVinXY(const double angleUrad, const double angleVrad)
Set the angles of the U and V axis in the X and Y frame.
Definition: uv2xy.cc:74
void InitializeRotationMatrices()
Initialize the rotation matrixes based on the stored angles.
Definition: uv2xy.cc:95

+ Here is the call graph for this function:

Uv2xy::Uv2xy ( const double  angleUrad,
const double  angleVrad 
)

Create a transformation helper from two angles.

Create a coordinate transformation helper object based on two angles.

Parameters
angleUradAngle (in radians) of the U axis
angleVradAngle (in radians) of the V axis

Definition at line 58 of file uv2xy.cc.

References InitializeRotationMatrices(), SetAngleUVinXY(), SetOffset(), SetOriginUVinXY(), and SetWireSpacing().

59 {
60  // Reset wire spacing
61  SetWireSpacing(0.0);
62 
63  // No offset of the origins
64  SetOffset(0.0, 0.0);
65  SetOriginUVinXY(0.0, 0.0);
66 
67  // Convert angles to radians and create the transformation matrices
68  SetAngleUVinXY(angleUrad, angleVrad);
70 }
void SetOriginUVinXY(const double originX, const double originY)
Set the origin of the UV frame in the XY frame.
Definition: uv2xy.h:81
void SetWireSpacing(const double spacing)
Set the wire spacing (perpendicular distance between wires)
Definition: uv2xy.h:65
void SetOffset(const double offsetX, const double offsetY)
Set the offset (origin of UV frame in XY coordinates)
Definition: uv2xy.h:70
void SetAngleUVinXY(const double angleUrad, const double angleVrad)
Set the angles of the U and V axis in the X and Y frame.
Definition: uv2xy.cc:74
void InitializeRotationMatrices()
Initialize the rotation matrixes based on the stored angles.
Definition: uv2xy.cc:95

+ Here is the call graph for this function:

Member Function Documentation

void Uv2xy::InitializeRotationMatrices ( )
private

Initialize the rotation matrixes based on the stored angles.

Initialize the rotation matrices UV and XY based on the stored angles for the U and V axes.

Definition at line 95 of file uv2xy.cc.

References QwLog::endl(), fAngleUrad, fAngleVrad, fUV, fXY, and QwVerbose.

Referenced by Uv2xy().

96 {
97  // Angle for u wires (in radians)
98  double cu = cos(fAngleUrad);
99  double su = sin(fAngleUrad);
100 
101  // Angle for v wires (in radians)
102  double cv = cos(fAngleVrad);
103  double sv = sin(fAngleVrad);
104 
105  // [x,y] to [u,v] transformation
106  fXY[0][0] = cu;
107  fXY[0][1] = su;
108  fXY[1][0] = cv;
109  fXY[1][1] = sv;
110 
111  // [u,v] to [x,y] transformation (inverse)
112  double det = (fXY[0][0] * fXY[1][1] - fXY[0][1] * fXY[1][0]);
113  if (fabs(det) > 0.0) {
114  fUV[0][0] = fXY[1][1] / det;
115  fUV[0][1] = -fXY[0][1] / det;
116  fUV[1][0] = -fXY[1][0] / det;
117  fUV[1][1] = fXY[0][0] / det;
118  }
119  // Note: det should be +1 or -1
120  if (det < 0.0) {
121  QwVerbose << "uv2xy transformation from right- to left-handed system." << QwLog::endl;
122  }
123 }
double fAngleUrad
Angle of the U direction in radians.
Definition: uv2xy.h:154
double fUV[2][2]
Transformation matrix UV from [u,v] to [x,y],.
Definition: uv2xy.h:146
#define QwVerbose
Predefined log drain for verbose messages.
Definition: QwLog.h:55
double fAngleVrad
Angle of the V direction in radians.
Definition: uv2xy.h:155
static std::ostream & endl(std::ostream &)
End of the line.
Definition: QwLog.cc:299
double fXY[2][2]
which satisifies
Definition: uv2xy.h:148

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void Uv2xy::Print ( )
inline

Print UV and XY transformation matrices.

Definition at line 120 of file uv2xy.h.

References fOffset, PrintUV(), and PrintXY().

120  {
121  PrintUV();
122  PrintXY();
123  std::cout << "Offset = [" << fOffset[0] << ", " << fOffset[1] << "]" << std::endl;
124  };
void PrintUV()
Print UV transformation matrix.
Definition: uv2xy.h:110
double fOffset[2]
which satisifies
Definition: uv2xy.h:151
void PrintXY()
Print XY transformation matrix.
Definition: uv2xy.h:115

+ Here is the call graph for this function:

void Uv2xy::PrintUV ( )
inline

Print UV transformation matrix.

Definition at line 110 of file uv2xy.h.

References fUV.

Referenced by Print().

110  {
111  std::cout << "UV = [" << fUV[0][0] << ", " << fUV[0][1] << "; ";
112  std::cout << fUV[1][0] << ", " << fUV[1][1] << "]" << std::endl;
113  };
double fUV[2][2]
Transformation matrix UV from [u,v] to [x,y],.
Definition: uv2xy.h:146

+ Here is the caller graph for this function:

void Uv2xy::PrintXY ( )
inline

Print XY transformation matrix.

Definition at line 115 of file uv2xy.h.

References fXY.

Referenced by Print().

115  {
116  std::cout << "XY = [" << fXY[0][0] << ", " << fXY[0][1] << "; ";
117  std::cout << fXY[1][0] << ", " << fXY[1][1] << "]" << std::endl;
118  };
double fXY[2][2]
which satisifies
Definition: uv2xy.h:148

+ Here is the caller graph for this function:

void Uv2xy::SetAngleUVinXY ( const double  angleUrad,
const double  angleVrad 
)

Set the angles of the U and V axis in the X and Y frame.

Definition at line 74 of file uv2xy.cc.

References Qw::deg, QwLog::endl(), fAngleUrad, fAngleVrad, Qw::pi, and QwWarning.

Referenced by Uv2xy().

75 {
76  // Check whether U and V angle are sufficiently different
77  if (fabs(angleUrad - angleVrad) < 1.0 * Qw::deg) {
78  QwWarning << "uv2xy transformation cannot be created with angles "
79  << angleUrad/Qw::deg << " deg and "
80  << angleVrad/Qw::deg << " deg." << QwLog::endl;
81  QwWarning << "uv2xy transformation will not transform anything." << QwLog::endl;
82  fAngleUrad = 0.0;
83  fAngleVrad = Qw::pi/2;
84  } else {
85  fAngleUrad = angleUrad;
86  fAngleVrad = angleVrad;
87  }
88 }
static const double pi
Angles: base unit is radian.
Definition: QwUnits.h:102
double fAngleUrad
Angle of the U direction in radians.
Definition: uv2xy.h:154
static const double deg
Definition: QwUnits.h:106
double fAngleVrad
Angle of the V direction in radians.
Definition: uv2xy.h:155
static std::ostream & endl(std::ostream &)
End of the line.
Definition: QwLog.cc:299
#define QwWarning
Predefined log drain for warnings.
Definition: QwLog.h:45

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void Uv2xy::SetOffset ( const double  offsetX,
const double  offsetY 
)
inline

Set the offset (origin of UV frame in XY coordinates)

Definition at line 70 of file uv2xy.h.

References QwLog::endl(), fOffset, and QwVerbose.

Referenced by Uv2xy().

70  {
71  QwVerbose << "SetOffset is deprecated in uv2xy." << QwLog::endl;
72  fOffset[0] = offsetX;
73  fOffset[1] = offsetY;
74  };
double fOffset[2]
which satisifies
Definition: uv2xy.h:151
#define QwVerbose
Predefined log drain for verbose messages.
Definition: QwLog.h:55
static std::ostream & endl(std::ostream &)
End of the line.
Definition: QwLog.cc:299

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void Uv2xy::SetOriginUVinXY ( const double  originX,
const double  originY 
)
inline

Set the origin of the UV frame in the XY frame.

Definition at line 81 of file uv2xy.h.

References fOriginUVinXY, fOriginXYinUV, xy2u(), and xy2v().

Referenced by Uv2xy().

81  {
82  fOriginUVinXY[0] = originX;
83  fOriginUVinXY[1] = originY;
84  fOriginXYinUV[0] = xy2u (0.0, 0.0);
85  fOriginXYinUV[1] = xy2v (0.0, 0.0);
86  };
double xy2u(double x, double y)
Transform from [x,y] to u.
Definition: uv2xy.cc:149
double fOriginXYinUV[2]
Origin of the XY system in UV coordinates.
Definition: uv2xy.h:157
double xy2v(double x, double y)
Transform from [x,y] to v.
Definition: uv2xy.cc:155
double fOriginUVinXY[2]
Origin of the UV system in XY coordinates.
Definition: uv2xy.h:158

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void Uv2xy::SetOriginXYinUV ( const double  originU,
const double  originV 
)
inline

Set the origin of the XY frame in the UV frame.

Definition at line 88 of file uv2xy.h.

References fOriginUVinXY, fOriginXYinUV, uv2x(), and uv2y().

88  {
89  fOriginXYinUV[0] = originU;
90  fOriginXYinUV[1] = originV;
91  fOriginUVinXY[0] = uv2x (0.0, 0.0);
92  fOriginUVinXY[1] = uv2y (0.0, 0.0);
93  };
double fOriginXYinUV[2]
Origin of the XY system in UV coordinates.
Definition: uv2xy.h:157
double uv2x(double u, double v)
Transform from [u,v] to x.
Definition: uv2xy.cc:129
double uv2y(double u, double v)
Transform from [u,v] to y.
Definition: uv2xy.cc:134
double fOriginUVinXY[2]
Origin of the UV system in XY coordinates.
Definition: uv2xy.h:158

+ Here is the call graph for this function:

void Uv2xy::SetWireSpacing ( const double  spacing)
inline

Set the wire spacing (perpendicular distance between wires)

Definition at line 65 of file uv2xy.h.

References QwLog::endl(), fWireSpacing, and QwVerbose.

Referenced by Uv2xy().

65  {
66  QwVerbose << "SetWireSpacing is deprecated in uv2xy." << QwLog::endl;
67  fWireSpacing = spacing;
68  };
#define QwVerbose
Predefined log drain for verbose messages.
Definition: QwLog.h:55
static std::ostream & endl(std::ostream &)
End of the line.
Definition: QwLog.cc:299
double fWireSpacing
Wirespacing in the u/v direction.
Definition: uv2xy.h:152

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void Uv2xy::ShiftOriginUVinXY ( const double  shiftX,
const double  shiftY 
)
inline

Shift origin of the UV frame by XY coordinates.

Definition at line 95 of file uv2xy.h.

References fOriginUVinXY, fOriginXYinUV, xy2u(), and xy2v().

95  {
96  fOriginUVinXY[0] += shiftX;
97  fOriginUVinXY[1] += shiftY;
98  fOriginXYinUV[0] = xy2u (0.0, 0.0);
99  fOriginXYinUV[1] = xy2v (0.0, 0.0);
100  };
double xy2u(double x, double y)
Transform from [x,y] to u.
Definition: uv2xy.cc:149
double fOriginXYinUV[2]
Origin of the XY system in UV coordinates.
Definition: uv2xy.h:157
double xy2v(double x, double y)
Transform from [x,y] to v.
Definition: uv2xy.cc:155
double fOriginUVinXY[2]
Origin of the UV system in XY coordinates.
Definition: uv2xy.h:158

+ Here is the call graph for this function:

void Uv2xy::ShiftOriginXYinUV ( const double  shiftU,
const double  shiftV 
)
inline

Shift origin of the XY frame by UV coordinates.

Definition at line 102 of file uv2xy.h.

References fOriginUVinXY, fOriginXYinUV, uv2x(), and uv2y().

102  {
103  fOriginXYinUV[0] += shiftU;
104  fOriginXYinUV[1] += shiftV;
105  fOriginUVinXY[0] = uv2x (0.0, 0.0);
106  fOriginUVinXY[1] = uv2y (0.0, 0.0);
107  };
double fOriginXYinUV[2]
Origin of the XY system in UV coordinates.
Definition: uv2xy.h:157
double uv2x(double u, double v)
Transform from [u,v] to x.
Definition: uv2xy.cc:129
double uv2y(double u, double v)
Transform from [u,v] to y.
Definition: uv2xy.cc:134
double fOriginUVinXY[2]
Origin of the UV system in XY coordinates.
Definition: uv2xy.h:158

+ Here is the call graph for this function:

double Uv2xy::uv2mx ( double  u,
double  v 
)

Transform from [u,v] to mx.

Definition at line 139 of file uv2xy.cc.

References fUV.

140 {
141  return fUV[0][0] * u + fUV[0][1] * v;
142 }
double fUV[2][2]
Transformation matrix UV from [u,v] to [x,y],.
Definition: uv2xy.h:146
double Uv2xy::uv2my ( double  u,
double  v 
)

Transform from [u,v] to my.

Definition at line 143 of file uv2xy.cc.

References fUV.

144 {
145  return fUV[1][0] * u + fUV[1][1] * v;
146 }
double fUV[2][2]
Transformation matrix UV from [u,v] to [x,y],.
Definition: uv2xy.h:146
double Uv2xy::uv2x ( double  u,
double  v 
)

Transform from [u,v] to x.

Definition at line 129 of file uv2xy.cc.

References fOffset, fOriginXYinUV, fUV, fWireSpacing, and fXY.

Referenced by SetOriginXYinUV(), and ShiftOriginXYinUV().

130 {
131  return fUV[0][0] * (u + fOffset[0] * fXY[0][0] - fWireSpacing - fOriginXYinUV[0])
132  + fUV[0][1] * (v + fOffset[1] * fXY[1][0] - fWireSpacing - fOriginXYinUV[1]);
133 }
double fOffset[2]
which satisifies
Definition: uv2xy.h:151
double fUV[2][2]
Transformation matrix UV from [u,v] to [x,y],.
Definition: uv2xy.h:146
double fOriginXYinUV[2]
Origin of the XY system in UV coordinates.
Definition: uv2xy.h:157
double fWireSpacing
Wirespacing in the u/v direction.
Definition: uv2xy.h:152
double fXY[2][2]
which satisifies
Definition: uv2xy.h:148

+ Here is the caller graph for this function:

double Uv2xy::uv2y ( double  u,
double  v 
)

Transform from [u,v] to y.

Definition at line 134 of file uv2xy.cc.

References fOffset, fOriginXYinUV, fUV, fWireSpacing, and fXY.

Referenced by SetOriginXYinUV(), and ShiftOriginXYinUV().

135 {
136  return fUV[1][0] * (u + fOffset[0] * fXY[0][0] - fWireSpacing - fOriginXYinUV[0])
137  + fUV[1][1] * (v + fOffset[1] * fXY[1][0] - fWireSpacing - fOriginXYinUV[1]);
138 }
double fOffset[2]
which satisifies
Definition: uv2xy.h:151
double fUV[2][2]
Transformation matrix UV from [u,v] to [x,y],.
Definition: uv2xy.h:146
double fOriginXYinUV[2]
Origin of the XY system in UV coordinates.
Definition: uv2xy.h:157
double fWireSpacing
Wirespacing in the u/v direction.
Definition: uv2xy.h:152
double fXY[2][2]
which satisifies
Definition: uv2xy.h:148

+ Here is the caller graph for this function:

double Uv2xy::xy2mu ( double  x,
double  y 
)

Transform from [x,y] to mu.

Definition at line 161 of file uv2xy.cc.

References fXY.

162 {
163  return fXY[0][0] * x + fXY[0][1] * y;
164 }
double fXY[2][2]
which satisifies
Definition: uv2xy.h:148
double Uv2xy::xy2mv ( double  x,
double  y 
)

Transform from [x,y] to mv.

Definition at line 165 of file uv2xy.cc.

References fXY.

166 {
167  return fXY[1][0] * x + fXY[1][1] * y;
168 }
double fXY[2][2]
which satisifies
Definition: uv2xy.h:148
double Uv2xy::xy2u ( double  x,
double  y 
)

Transform from [x,y] to u.

Definition at line 149 of file uv2xy.cc.

References fOffset, fOriginUVinXY, fWireSpacing, and fXY.

Referenced by QwTreeEventBuffer::CreateHitRegion2(), QwTreeEventBuffer::CreateHitRegion3(), SetOriginUVinXY(), and ShiftOriginUVinXY().

150 {
151  return fXY[0][0] * (x + fOffset[0] - fOriginUVinXY[0])
152  + fXY[0][1] * (y - fOriginUVinXY[1])
153  + fWireSpacing;
154 }
double fOffset[2]
which satisifies
Definition: uv2xy.h:151
double fWireSpacing
Wirespacing in the u/v direction.
Definition: uv2xy.h:152
double fXY[2][2]
which satisifies
Definition: uv2xy.h:148
double fOriginUVinXY[2]
Origin of the UV system in XY coordinates.
Definition: uv2xy.h:158

+ Here is the caller graph for this function:

double Uv2xy::xy2v ( double  x,
double  y 
)

Transform from [x,y] to v.

Definition at line 155 of file uv2xy.cc.

References fOffset, fOriginUVinXY, fWireSpacing, and fXY.

Referenced by QwTreeEventBuffer::CreateHitRegion2(), QwTreeEventBuffer::CreateHitRegion3(), SetOriginUVinXY(), and ShiftOriginUVinXY().

156 {
157  return fXY[1][0] * (x + fOffset[1] - fOriginUVinXY[0])
158  + fXY[1][1] * (y - fOriginUVinXY[1])
159  + fWireSpacing;
160 }
double fOffset[2]
which satisifies
Definition: uv2xy.h:151
double fWireSpacing
Wirespacing in the u/v direction.
Definition: uv2xy.h:152
double fXY[2][2]
which satisifies
Definition: uv2xy.h:148
double fOriginUVinXY[2]
Origin of the UV system in XY coordinates.
Definition: uv2xy.h:158

+ Here is the caller graph for this function:

Friends And Related Function Documentation

friend class QwTrackingTreeCombine
friend

Friend class because of heavy use of private attributes.

Definition at line 164 of file uv2xy.h.

Field Documentation

double Uv2xy::fAngleUrad
private

Angle of the U direction in radians.

Definition at line 154 of file uv2xy.h.

Referenced by InitializeRotationMatrices(), and SetAngleUVinXY().

double Uv2xy::fAngleVrad
private

Angle of the V direction in radians.

Definition at line 155 of file uv2xy.h.

Referenced by InitializeRotationMatrices(), and SetAngleUVinXY().

double Uv2xy::fOffset[2]
private

which satisifies $ [u,v] = XY * [x,y] $

Offset in [x,y] coordinates

Definition at line 151 of file uv2xy.h.

Referenced by Print(), SetOffset(), uv2x(), uv2y(), xy2u(), and xy2v().

double Uv2xy::fOriginUVinXY[2]
private

Origin of the UV system in XY coordinates.

Definition at line 158 of file uv2xy.h.

Referenced by SetOriginUVinXY(), SetOriginXYinUV(), ShiftOriginUVinXY(), ShiftOriginXYinUV(), xy2u(), and xy2v().

double Uv2xy::fOriginXYinUV[2]
private

Origin of the XY system in UV coordinates.

Definition at line 157 of file uv2xy.h.

Referenced by SetOriginUVinXY(), SetOriginXYinUV(), ShiftOriginUVinXY(), ShiftOriginXYinUV(), uv2x(), and uv2y().

double Uv2xy::fUV[2][2]
private

Transformation matrix UV from [u,v] to [x,y],.

Definition at line 146 of file uv2xy.h.

Referenced by InitializeRotationMatrices(), PrintUV(), uv2mx(), uv2my(), uv2x(), and uv2y().

double Uv2xy::fWireSpacing
private

Wirespacing in the u/v direction.

Definition at line 152 of file uv2xy.h.

Referenced by SetWireSpacing(), uv2x(), uv2y(), xy2u(), and xy2v().

double Uv2xy::fXY[2][2]
private

which satisifies $ [x,y] = UV * [u,v] $

Transformation matrix XY from [x,y] to [u,v],

Definition at line 148 of file uv2xy.h.

Referenced by InitializeRotationMatrices(), PrintXY(), QwTrackingTreeCombine::r3_PartialTrackFit(), uv2x(), uv2y(), xy2mu(), xy2mv(), xy2u(), and xy2v().


The documentation for this class was generated from the following files: