|
ATLAS Offline Software
|
Go to the documentation of this file.
16 #include "GaudiKernel/MsgStream.h"
22 : m_transform(nullptr)
31 , m_volumeBounds(volbounds)
42 , m_volumeBounds(vol.m_volumeBounds)
55 , m_volumeBounds(vol.m_volumeBounds)
67 ? std::make_unique<Amg::Transform3D>(*vol.
m_transform)
70 ? std::make_unique<const Amg::Vector3D>(*(vol.
m_center))
93 return (volumeBounds()).inside(gp, tol);
96 return (volumeBounds()).inside(posInVolFrame, tol);
103 bool forceInside)
const
107 volumeBounds().boundarySurfaceAccessor(gp,
dir, forceInside));
125 sl <<
"Trk::Volume with VolumeBounds :" << vol.
volumeBounds() << std::endl;
Volume & operator=(const Volume &vol)
Assignment operator.
Volume()
Default constructor.
bool inside(const Amg::Vector3D &gp, double tol=0.) const
Inside() method for checks.
CxxUtils::CachedUniquePtr< Amg::Vector3D > m_center
center position of the surface
CalibratedSpacePoint::Covariance_t inverse(const CalibratedSpacePoint::Covariance_t &mat)
Inverts the parsed matrix.
Eigen::Affine3d Transform3D
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
virtual Volume * clone() const
Pseudo-constructor.
ObjectAccessor boundarySurfaceAccessor(const Amg::Vector3D &gp, const Amg::Vector3D &mom, bool forceInside=false) const
Provide accessor for BoundarySurfaces.
Definition of ATLAS Math & Geometry primitives (Amg)
virtual ~Volume()
Destructor.
Eigen::Matrix< double, 3, 1 > Vector3D
MsgStream & operator<<(MsgStream &sl, const AlignModule &alignModule)
overload of << operator for MsgStream for debug output
const VolumeBounds & volumeBounds() const
returns the volumeBounds()
std::unique_ptr< Amg::Transform3D > m_transform
HepGeom::Transform3D.
SharedObject< VolumeBounds > m_volumeBounds
the volumeBounds