16#include "GaudiKernel/MsgStream.h"
17#include "GaudiKernel/SystemOfUnits.h"
63std::vector<std::unique_ptr<Trk::Surface>>
68 auto retsf = std::vector<std::unique_ptr<Trk::Surface>>() ;
73 retsf.push_back(std::make_unique<Trk::PlaneSurface>(
80 retsf.push_back(std::make_unique<Trk::PlaneSurface>(
88 retsf.push_back(std::make_unique<Trk::PlaneSurface>(
97 retsf.push_back(std::make_unique<Trk::PlaneSurface>(
106 retsf.push_back(std::make_unique<Trk::PlaneSurface>(
115 retsf.push_back(std::make_unique<Trk::PlaneSurface>(
126std::shared_ptr<Trk::RectangleBounds>
132std::shared_ptr<Trk::RectangleBounds>
138std::shared_ptr<Trk::RectangleBounds>
150 std::stringstream temp_sl;
151 temp_sl << std::setiosflags(std::ios::fixed);
152 temp_sl << std::setprecision(7);
153 temp_sl <<
"Trk::CuboidVolumeBounds: (halfX, halfY, halfZ) = ";
162 std::stringstream temp_sl;
163 temp_sl << std::setiosflags(std::ios::fixed);
164 temp_sl << std::setprecision(7);
165 temp_sl <<
"Trk::CuboidVolumeBounds: (halfX, halfY, halfZ) = ";
Bounds for a cubical Volume, the decomposeToSurfaces method creates a vector of 6 surfaces:
SixObjectsAccessor m_objectAccessor
There's only one single object Acessor for the moment has to be implemented if Cuboids are used more ...
CuboidVolumeBounds()
Default Constructor.
double halflengthX() const
This method returns the halflength in local x.
virtual std::vector< std::unique_ptr< Trk::Surface > > decomposeToSurfaces(const Amg::Transform3D &transform) override final
Method to decompose the Bounds into boundarySurfaces.
std::shared_ptr< RectangleBounds > faceZXRectangleBounds() const
This method returns the associated RecantleBounds of the face PlaneSurface parallel to local zx plane...
CuboidVolumeBounds & operator=(const CuboidVolumeBounds &bobo)
Assignment operator.
MsgStream & dump(MsgStream &sl) const override final
Output Method for MsgStream.
virtual ~CuboidVolumeBounds()
Destructor.
std::shared_ptr< RectangleBounds > faceYZRectangleBounds() const
This method returns the associated RecantleBounds of the face PlaneSurface parallel to local yz plane...
double halflengthY() const
This method returns the halflength in local y.
std::shared_ptr< RectangleBounds > faceXYRectangleBounds() const
This method returns the associated RecantleBounds of the face PlaneSurface parallel to local xy plane...
double halflengthZ() const
This method returns the halflength in local z.
VolumeBounds()
Default Constructor.
Eigen::AngleAxisd AngleAxis3D
Eigen::Affine3d Transform3D
Eigen::Matrix< double, 3, 1 > Vector3D
Eigen::Translation< double, 3 > Translation3D