Go to the documentation of this file. 1 #ifndef FastSimulation_CaloGeometryTools_CrystalPad
2 #define FastSimulation_CaloGeometryTools_CrystalPad
6 #include "CLHEP/Vector/TwoVector.h"
28 const std::vector<XYZPoint>& corners,
34 const std::vector<XYZPoint>& corners,
37 bool bothdirections =
false);
67 CLHEP::Hep2Vector&
edge(
unsigned iside,
int n);
101 static std::vector<CLHEP::Hep2Vector>
aVector;
104 std::vector<CLHEP::Hep2Vector>
dir_;
CaloDirection
Codes the local directions in the cell lattice.
std::vector< CLHEP::Hep2Vector > dir_
std::vector< double > vec1
bool operator<(const CrystalPad &quad) const
CrystalPad & operator=(const CrystalPad &rhs)
const std::vector< CLHEP::Hep2Vector > & getCorners() const
Check that the point (in the global frame) is inside the crystal.
std::ostream & operator<<(std::ostream &o, CrystalPad &quad)
void getDrawingCoordinates(std::vector< float > &x, std::vector< float > &y) const
for graphic debugging
ROOT::Math::Transform3DPJ Transform3D
ROOT::Math::Transform3DPJ::Point Point
math::XYZVector XYZVector
double survivalProbability_
const CLHEP::Hep2Vector & center() const
get the center
bool operator()(const CrystalPad &quad) const
CLHEP::Hep2Vector & edge(unsigned iside, int n)
access to the corners in direction iside; n=0,1
math::XYZVector XYZVector
ROOT::Math::Rotation3D rotation_
static std::vector< CLHEP::Hep2Vector > aVector
void extrems(double &xmin, double &xmax, double &ymin, double &ymax) const
xmin xmax, ymin ymax of the quad
double survivalProbability() const
access methods to the survivalProbability
XYZVectorD XYZVector
spatial vector with cartesian internal representation
void setSurvivalProbability(double val)
std::vector< CLHEP::Hep2Vector > corners_
unsigned getNumber() const
access to the number
CLHEP::Hep2Vector center_
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
bool inside(const CLHEP::Hep2Vector &point, bool debug=false) const
Check that the point (in the local frame) is inside the crystal.
bool operator==(const CrystalPad &quad) const
get the coordinates in the original frame
void resetCorners()
Rescale the Quad to allow for some inaccuracy ...