2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
6 inline RotatedTrapezoidBounds*
7 RotatedTrapezoidBounds::clone() const
9 return new RotatedTrapezoidBounds(*this);
13 RotatedTrapezoidBounds::halflengthX() const
15 return m_boundValues[RotatedTrapezoidBounds::bv_halfX];
19 RotatedTrapezoidBounds::minHalflengthY() const
21 return m_boundValues[RotatedTrapezoidBounds::bv_minHalfY];
25 RotatedTrapezoidBounds::maxHalflengthY() const
27 return m_boundValues[RotatedTrapezoidBounds::bv_maxHalfY];
31 RotatedTrapezoidBounds::r() const
33 return sqrt(m_boundValues[RotatedTrapezoidBounds::bv_halfX] *
34 m_boundValues[RotatedTrapezoidBounds::bv_halfX] +
35 m_boundValues[RotatedTrapezoidBounds::bv_maxHalfY] *
36 m_boundValues[RotatedTrapezoidBounds::bv_maxHalfY]);
40 RotatedTrapezoidBounds::insideLoc1(const Amg::Vector2D& pos,
43 const Amg::Vector2D locpo = m_rotMat * pos;
44 return (std::abs(locpo[locX]) <
45 m_boundValues[RotatedTrapezoidBounds::bv_halfX] + tol1);
49 RotatedTrapezoidBounds::insideLoc2(const Amg::Vector2D& pos,
52 const Amg::Vector2D locpo = m_rotMat * pos;
53 return (std::abs(locpo[locY]) <
54 m_boundValues[RotatedTrapezoidBounds::bv_maxHalfY] + tol2);