Go to the documentation of this file.
12 unsigned ncorners = vec.
size();
22 for (
unsigned ic = 0; ic < 8; ++ic) {
44 else if (x < 0 && y > 0)
46 else if (
x > 0 &&
y < 0)
48 else if (
x < 0 &&
y < 0)
54 else if (x < 0 && y > 0)
56 else if (
x > 0 &&
y < 0)
58 else if (
x < 0 &&
y < 0)
62 for (
unsigned ic = 0; ic < 4; ++ic) {
63 unsigned i1 = (unsigned)((zsign * ic +
offset) % 4);
75 for (
unsigned ic = 0; ic < 8; ++ic) {
88 for (
unsigned il = 0; il < 4; ++il) {
94 for (
unsigned i = 0;
i < 4; ++
i) {
102 for (
unsigned i = 0;
i < 6; ++
i) {
125 if (corners.size() == 4) {
141 if (corners.size() == 4) {
158 if (corners.size() == 4 &&
i < 4
U)
240 for (
unsigned ic = 0; ic < 8; ++ic)
245 std::cout <<
" Normales sortantes " << std::endl;
246 for (
unsigned id = 0;
id < 6; ++
id)
void setCorners(const CaloCellGeometry::CornersVec &vec, const GlobalPoint &pos)
void computeBasicProperties()
CaloDirection
Codes the local directions in the cell lattice.
XYZVector fifthedgedirection_
XYZVector lateraldirection_[4]
ROOT::Math::Plane3D::Point Point
void getBackSide(XYZPoint &a, XYZPoint &b, XYZPoint &c, XYZPoint &d) const
Coordinates of the back side.
XYZVector firstedgedirection_
void getLateralSide(unsigned i, XYZPoint &a, XYZPoint &b, XYZPoint &c, XYZPoint &d) const
Coordinates of the i=th lateral side.
void getSide(const CaloDirection &side, XYZPoint &a, XYZPoint &b, XYZPoint &c, XYZPoint &d) const
generic access
void getFrontSide(XYZPoint &a, XYZPoint &b, XYZPoint &c, XYZPoint &d) const
coordinates of the front side
XYZVector exitingNormal_[6]
static CaloDirection Side(unsigned i)
unsigned int -> Side conversion
BaseCrystal()
Empty constructor.
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Structure Point Contains parameters of Gaussian fits to DMRs.
void getLateralEdges(unsigned i, XYZPoint &, XYZPoint &) const
get the lateral edges
ROOT::Math::Plane3D Plane3D
constexpr uint32_t rawId() const
get the raw id
void getDrawingCoordinates(std::vector< float > &x, std::vector< float > &y, std::vector< float > &z) const
for debugging.