|
ATLAS Offline Software
|
Go to the documentation of this file.
9 #ifndef TRKVOLUMES_TRAPEZOIDVOLUMESBOUNDS_H
10 #define TRKVOLUMES_TRAPEZOIDVOLUMESBOUNDS_H
22 class RectangleBounds;
23 class TrapezoidBounds;
93 bool forceInside = false)
const override;
114 MsgStream&
dump(MsgStream& sl)
const override final;
117 std::ostream&
dump(std::ostream& sl)
const override final;
175 #endif // TRKVOLUMES_TRAPEZOIDVOLUMESBOUNDS_H
double maxHalflengthX() const
This method returns the maximal halflength in local x.
double minHalflengthX() const
This method returns the minimal halflength in local x.
double m_alpha
opening angle alpha (in point A)
RectangleBounds * faceBetaRectangleBounds() const
This method returns the associated RecantleBounds of the face PlaneSurface attached to beta (positive...
SixObjectsAccessor m_objectAccessor
There's only one single object Acessor for the moment has to be implemented if Cuboids are used more ...
RectangleBounds * faceAlphaRectangleBounds() const
This method returns the associated RecantleBounds of the face PlaneSurface attached to alpha (negativ...
TrapezoidVolumeBounds * clone() const override final
Virtual constructor.
bool const RAWDATA *ch2 const
RectangleBounds * faceZXRectangleBoundsBottom() const
This method returns the associated RecantleBounds of the face PlaneSurface parallel to local zx plane...
double halflengthY() const
This method returns the halflength in local y.
double m_beta
opening angle beta (in point B)
virtual ~TrapezoidVolumeBounds()
Destructor.
Eigen::Affine3d Transform3D
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
TrapezoidVolumeBounds()
Default Constructor.
double m_halfY
halflength in y
double m_minHalfX
minimal halflength in x
Ensure that the ATLAS eigen extensions are properly loaded.
Definition of ATLAS Math & Geometry primitives (Amg)
bool inside(const Amg::Vector3D &, double tol=0.) const override final
This method checks if position in the 3D volume frame is inside the cylinder.
RectangleBounds * faceZXRectangleBoundsTop() const
This method returns the associated RecantleBounds of the face PlaneSurface parallel to local zx plane...
TrapezoidBounds * faceXYTrapezoidBounds() const
This method returns the associated TrapezoidBounds of the face PlaneSurface parallel to local xy plan...
std::array< ObjectAccessor::value_type, 6 > SixObjectsAccessor
Eigen::Matrix< double, 3, 1 > Vector3D
double alpha() const
This method returns the opening angle in point A (negative local x)
double m_maxHalfX
maximal halflength in x
TrapezoidVolumeBounds & operator=(const TrapezoidVolumeBounds &bobo)
Assignment operator.
double beta() const
This method returns the opening angle in point B (negative local x)
const std::vector< const Trk::Surface * > * decomposeToSurfaces(const Amg::Transform3D &transform) override final
Method to decompose the Bounds into Surfaces.
MsgStream & dump(MsgStream &sl) const override final
Output Method for MsgStream.
double halflengthZ() const
This method returns the halflength in local z.
double m_halfZ
halflength in z
ObjectAccessor boundarySurfaceAccessor(const Amg::Vector3D &gp, const Amg::Vector3D &dir, bool forceInside=false) const override
Provide accessor for BoundarySurfaces.