ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkDetDescr
TrkGeometrySurfaces
TrkGeometrySurfaces
SubtractedCylinderSurface.icc
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
namespace Trk {
6
inline bool
7
SubtractedCylinderSurface::insideBounds(const Amg::Vector2D& locpos,
8
double tol1,
9
double tol2) const
10
{
11
// no subtracted volume exists
12
if (!m_subtrVol.get())
13
return (this->bounds().inside(locpos, tol1, tol2));
14
// subtracted volume exists, needs to be checked
15
double rCyl = bounds().r();
16
double phiPos = locpos[Trk::locRPhi] / rCyl;
17
const Amg::Vector3D gp(rCyl * cos(phiPos), rCyl * sin(phiPos), locpos[Trk::locZ]);
18
19
bool inside_shared(this->bounds().inside(locpos, tol1, tol2) &&
20
m_subtrVol.get()->inside(gp, 0.));
21
bool inside(this->bounds().inside(locpos, tol1, tol2) &&
22
!m_subtrVol.get()->inside(gp, 0.));
23
24
if (m_shared){
25
return inside_shared;
26
}
27
return inside;
28
}
29
30
inline bool
31
SubtractedCylinderSurface::shared() const
32
{
33
return m_shared;
34
}
35
36
inline const AreaExcluder*
37
SubtractedCylinderSurface::subtractedVolume() const
38
{
39
return m_subtrVol.get();
40
}
41
}
Generated on
for ATLAS Offline Software by
1.17.0