#include <GFDetPlane.h>
Public Member Functions | |
GFDetPlane (genf::GFAbsFinitePlane *finite=NULL) | |
GFDetPlane (const TVector3 &o, const TVector3 &u, const TVector3 &v, genf::GFAbsFinitePlane *finite=NULL) | |
GFDetPlane (const TVector3 &o, const TVector3 &n, genf::GFAbsFinitePlane *finite=NULL) | |
virtual | ~GFDetPlane () |
GFDetPlane (const genf::GFDetPlane &) | |
GFDetPlane & | operator= (const genf::GFDetPlane &) |
TVector3 | getO () const |
TVector3 | getU () const |
TVector3 | getV () const |
void | set (const TVector3 &o, const TVector3 &u, const TVector3 &v) |
void | setO (const TVector3 &o) |
void | setO (double, double, double) |
void | setU (const TVector3 &u) |
void | setU (double, double, double) |
void | setV (const TVector3 &v) |
void | setV (double, double, double) |
void | setUV (const TVector3 &u, const TVector3 &v) |
void | setON (const TVector3 &o, const TVector3 &n) |
void | setFinitePlane (genf::GFAbsFinitePlane *finite) |
TVector3 | getNormal () const |
void | setNormal (TVector3 n) |
void | setNormal (double, double, double) |
void | setNormal (const double &theta, const double &phi) |
TVector2 | project (const TVector3 &x) const |
projecting a direction onto the plane: More... | |
TVector2 | LabToPlane (const TVector3 &x) const |
transform from Lab system into plane More... | |
TVector3 | toLab (const TVector2 &x) const |
transform from plane coordinates to lab system More... | |
TVector3 | dist (const TVector3 &point) const |
TVector2 | straightLineToPlane (const TVector3 &point, const TVector3 &dir) const |
gives u,v coordinates of the intersection point of a straight line with plane More... | |
void | Print (std::ostream &out=std::cout) const |
void | getGraphics (double mesh, double length, TPolyMarker3D **pl, TPolyLine3D **plLine, TPolyLine3D **u, TPolyLine3D **v, TPolyLine3D **n=NULL) |
for poor attempts of making an event display. There is a lot of room for improvements. More... | |
double | distance (TVector3 &) const |
double | distance (double, double, double) const |
bool | inActive (const TVector3 &point, const TVector3 &dir) const |
intersect in the active area? C.f. GFAbsFinitePlane More... | |
bool | inActive (double u, double v) const |
inActive methods refer to finite plane. C.f. GFAbsFinitePlane More... | |
bool | inActive (const TVector2 &v) const |
inActive methods refer to finite plane. C.f. GFAbsFinitePlane More... | |
void | sane () |
Public Attributes | |
TVector3 | fO |
TVector3 | fU |
TVector3 | fV |
genf::GFAbsFinitePlane * | fFinitePlane |
Private Member Functions | |
virtual void | Print (Option_t *) const |
Friends | |
bool | operator== (const GFDetPlane &, const GFDetPlane &) |
bool | operator!= (const GFDetPlane &, const GFDetPlane &) |
returns NOT == More... | |
Definition at line 65 of file GFDetPlane.h.
genf::GFDetPlane::GFDetPlane | ( | genf::GFAbsFinitePlane * | finite = NULL | ) |
Definition at line 44 of file GFDetPlane.cxx.
genf::GFDetPlane::GFDetPlane | ( | const TVector3 & | o, |
const TVector3 & | u, | ||
const TVector3 & | v, | ||
genf::GFAbsFinitePlane * | finite = NULL |
||
) |
Definition at line 36 of file GFDetPlane.cxx.
genf::GFDetPlane::GFDetPlane | ( | const TVector3 & | o, |
const TVector3 & | n, | ||
genf::GFAbsFinitePlane * | finite = NULL |
||
) |
Definition at line 54 of file GFDetPlane.cxx.
|
virtual |
Definition at line 61 of file GFDetPlane.cxx.
genf::GFDetPlane::GFDetPlane | ( | const genf::GFDetPlane & | rhs | ) |
Definition at line 65 of file GFDetPlane.cxx.
TVector3 genf::GFDetPlane::dist | ( | const TVector3 & | point | ) | const |
Definition at line 214 of file GFDetPlane.cxx.
double genf::GFDetPlane::distance | ( | TVector3 & | v | ) | const |
Definition at line 354 of file GFDetPlane.cxx.
double genf::GFDetPlane::distance | ( | double | x, |
double | y, | ||
double | z | ||
) | const |
Definition at line 360 of file GFDetPlane.cxx.
void genf::GFDetPlane::getGraphics | ( | double | mesh, |
double | length, | ||
TPolyMarker3D ** | pl, | ||
TPolyLine3D ** | plLine, | ||
TPolyLine3D ** | u, | ||
TPolyLine3D ** | v, | ||
TPolyLine3D ** | n = NULL |
||
) |
for poor attempts of making an event display. There is a lot of room for improvements.
Definition at line 294 of file GFDetPlane.cxx.
TVector3 genf::GFDetPlane::getNormal | ( | ) | const |
Definition at line 145 of file GFDetPlane.cxx.
|
inline |
Definition at line 81 of file GFDetPlane.h.
|
inline |
Definition at line 82 of file GFDetPlane.h.
|
inline |
Definition at line 83 of file GFDetPlane.h.
|
inline |
intersect in the active area? C.f. GFAbsFinitePlane
Definition at line 138 of file GFDetPlane.h.
|
inline |
inActive methods refer to finite plane. C.f. GFAbsFinitePlane
Definition at line 143 of file GFDetPlane.h.
|
inline |
inActive methods refer to finite plane. C.f. GFAbsFinitePlane
Definition at line 149 of file GFDetPlane.h.
TVector2 genf::GFDetPlane::LabToPlane | ( | const TVector3 & | x | ) | const |
transform from Lab system into plane
Definition at line 196 of file GFDetPlane.cxx.
genf::GFDetPlane & genf::GFDetPlane::operator= | ( | const genf::GFDetPlane & | rhs | ) |
Definition at line 72 of file GFDetPlane.cxx.
void genf::GFDetPlane::Print | ( | std::ostream & | out = std::cout | ) | const |
Definition at line 247 of file GFDetPlane.cxx.
|
inlineprivatevirtual |
Definition at line 169 of file GFDetPlane.h.
TVector2 genf::GFDetPlane::project | ( | const TVector3 & | x | ) | const |
void genf::GFDetPlane::sane | ( | ) |
Definition at line 224 of file GFDetPlane.cxx.
void genf::GFDetPlane::set | ( | const TVector3 & | o, |
const TVector3 & | u, | ||
const TVector3 & | v | ||
) |
Definition at line 90 of file GFDetPlane.cxx.
|
inline |
Optionally, set the finite plane definition. This is most important for avoiding fake intersection points in fitting of loopers. This should be implemented for silicon detectors most importantly.
Definition at line 102 of file GFDetPlane.h.
void genf::GFDetPlane::setNormal | ( | TVector3 | n | ) |
Definition at line 163 of file GFDetPlane.cxx.
void genf::GFDetPlane::setNormal | ( | double | X, |
double | Y, | ||
double | Z | ||
) |
Definition at line 158 of file GFDetPlane.cxx.
void genf::GFDetPlane::setNormal | ( | const double & | theta, |
const double & | phi | ||
) |
Definition at line 182 of file GFDetPlane.cxx.
void genf::GFDetPlane::setO | ( | const TVector3 & | o | ) |
Definition at line 99 of file GFDetPlane.cxx.
void genf::GFDetPlane::setO | ( | double | X, |
double | Y, | ||
double | Z | ||
) |
Definition at line 105 of file GFDetPlane.cxx.
void genf::GFDetPlane::setON | ( | const TVector3 & | o, |
const TVector3 & | n | ||
) |
Definition at line 152 of file GFDetPlane.cxx.
void genf::GFDetPlane::setU | ( | const TVector3 & | u | ) |
Definition at line 112 of file GFDetPlane.cxx.
void genf::GFDetPlane::setU | ( | double | X, |
double | Y, | ||
double | Z | ||
) |
Definition at line 118 of file GFDetPlane.cxx.
void genf::GFDetPlane::setUV | ( | const TVector3 & | u, |
const TVector3 & | v | ||
) |
Definition at line 137 of file GFDetPlane.cxx.
void genf::GFDetPlane::setV | ( | const TVector3 & | v | ) |
Definition at line 125 of file GFDetPlane.cxx.
void genf::GFDetPlane::setV | ( | double | X, |
double | Y, | ||
double | Z | ||
) |
Definition at line 131 of file GFDetPlane.cxx.
TVector2 genf::GFDetPlane::straightLineToPlane | ( | const TVector3 & | point, |
const TVector3 & | dir | ||
) | const |
gives u,v coordinates of the intersection point of a straight line with plane
Definition at line 368 of file GFDetPlane.cxx.
TVector3 genf::GFDetPlane::toLab | ( | const TVector2 & | x | ) | const |
|
friend |
returns NOT ==
|
friend |
this operator is called very often in Kalman filtering. It checks equality of planes by comparing the 9 double values that define them.
genf::GFAbsFinitePlane* genf::GFDetPlane::fFinitePlane |
Definition at line 162 of file GFDetPlane.h.
TVector3 genf::GFDetPlane::fO |
Definition at line 157 of file GFDetPlane.h.
TVector3 genf::GFDetPlane::fU |
Definition at line 159 of file GFDetPlane.h.
TVector3 genf::GFDetPlane::fV |
Definition at line 160 of file GFDetPlane.h.