41 #include "RtypesCore.h"
86 void set(
const TVector3& o,
90 void setO(
const TVector3& o);
91 void setO(
double,
double,
double);
92 void setU(
const TVector3& u);
93 void setU(
double,
double,
double);
94 void setV(
const TVector3& v);
95 void setV(
double,
double,
double);
96 void setUV(
const TVector3& u,
const TVector3& v);
97 void setON(
const TVector3& o,
const TVector3& n);
108 void setNormal(
const double& theta,
const double& phi);
110 TVector2
project(
const TVector3&
x)
const;
114 TVector3
toLab(
const TVector2&
x)
const;
116 TVector3
dist(
const TVector3& point)
const;
125 void getGraphics(
double mesh,
double length, TPolyMarker3D **pl, TPolyLine3D **plLine,TPolyLine3D **u, TPolyLine3D **v, TPolyLine3D **n=NULL);
134 double distance(
double,
double,
double)
const;
170 {
throw std::logic_error(std::string(__func__) +
"::Print(Option_t*) not available"); }
void set(const TVector3 &o, const TVector3 &u, const TVector3 &v)
void setON(const TVector3 &o, const TVector3 &n)
void setU(const TVector3 &u)
GFDetPlane & operator=(const genf::GFDetPlane &)
bool operator!=(const genf::GFDetPlane &, const genf::GFDetPlane &)
process_name opflash particleana ie x
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.
virtual bool inActive(const double &u, const double &v) const =0
TVector3 dist(const TVector3 &point) const
void setO(const TVector3 &o)
void setUV(const TVector3 &u, const TVector3 &v)
void Print(std::ostream &out=std::cout) const
virtual void Print(Option_t *) const
TVector2 project(const TVector3 &x) const
projecting a direction onto the plane:
friend bool operator!=(const GFDetPlane &, const GFDetPlane &)
returns NOT ==
TVector3 getNormal() const
void setFinitePlane(genf::GFAbsFinitePlane *finite)
void setV(const TVector3 &v)
double distance(TVector3 &) const
bool operator==(const genf::GFDetPlane &, const genf::GFDetPlane &)
bool inActive(double u, double v) const
inActive methods refer to finite plane. C.f. GFAbsFinitePlane
genf::GFAbsFinitePlane * fFinitePlane
TVector3 toLab(const TVector2 &x) const
transform from plane coordinates to lab system
TVector2 LabToPlane(const TVector3 &x) const
transform from Lab system into plane
TVector2 straightLineToPlane(const TVector3 &point, const TVector3 &dir) const
gives u,v coordinates of the intersection point of a straight line with plane
void setNormal(TVector3 n)
bool inActive(const TVector3 &point, const TVector3 &dir) const
intersect in the active area? C.f. GFAbsFinitePlane
friend bool operator==(const GFDetPlane &, const GFDetPlane &)
bool inActive(const TVector2 &v) const
inActive methods refer to finite plane. C.f. GFAbsFinitePlane
BEGIN_PROLOG could also be cout
GFDetPlane(genf::GFAbsFinitePlane *finite=NULL)