|
| enum | BoundValues : unsigned int {
eMinR = 0
, eMaxR = 1
, eHalfLengthZ = 2
, eHalfPhiSector = 3
,
eAveragePhi = 4
, eBevelMinZ = 5
, eBevelMaxZ = 6
, eSize
} |
| | for streaming and access More...
|
| enum class | Face : unsigned int {
PositiveDisc = BoundarySurfaceFace::positiveFaceXY
, NegativeDisc = BoundarySurfaceFace::negativeFaceXY
, OuterCylinder = BoundarySurfaceFace::tubeOuterCover
, InnerCylinder = BoundarySurfaceFace::tubeInnerCover
,
NegativePhiPlane = BoundarySurfaceFace::tubeSectorNegativePhi
, PositivePhiPlane = BoundarySurfaceFace::tubeSectorPositivePhi
} |
| | Enum describing the possible faces of a cylinder volume. More...
|
| enum class | BoundsType {
eCone
, eCuboid
, eCutoutCylinder
, eCylinder
,
eGenericCuboid
, eTrapezoid
, eDiamond
, eOther
} |
| | This is nested to the VolumeBounds, as also SurfaceBounds will have Bounds Type. More...
|
|
| | CylinderVolumeBounds ()=delete |
| | CylinderVolumeBounds (const CylinderBounds &cBounds, double thickness) |
| | Constructor - extruded from cylinder bounds and thickness.
|
| | CylinderVolumeBounds (const CylinderVolumeBounds &cylbo) |
| | Copy Constructor.
|
| | CylinderVolumeBounds (const RadialBounds &rBounds, double thickness) |
| | Constructor - extruded from radial bounds and thickness.
|
| | CylinderVolumeBounds (const std::array< double, eSize > &values) |
| | Constructor - from a fixed size array.
|
| | CylinderVolumeBounds (double rmin, double rmax, double halfz, double halfphi=std::numbers::pi, double avgphi=0., double bevelMinZ=0., double bevelMaxZ=0.) |
| | Constructor.
|
| | ~CylinderVolumeBounds () override=default |
| Volume::BoundingBox | boundingBox (const Transform3 *trf=nullptr, const Vector3 &envelope={0, 0, 0}, const Volume *entity=nullptr) const final |
| | Construct bounding box for this shape.
|
| std::vector< AxisDirection > | canonicalAxes () const override |
| | Get the canonical binning directions, i.e.
|
| double | get (BoundValues bValue) const |
| | Access to the bound values.
|
| bool | inside (const Vector3 &pos, double tol=0.) const override |
| | This method checks if position in the 3D volume frame is inside the cylinder.
|
| CylinderVolumeBounds & | operator= (const CylinderVolumeBounds &cylbo)=default |
| | Assignment operator.
|
| std::vector< OrientedSurface > | orientedSurfaces (const Transform3 &transform=Transform3::Identity()) const override |
| | Oriented surfaces, i.e.
|
| double | referenceBorder (AxisDirection aDir) const override |
| | Binning borders in double.
|
| Vector3 | referenceOffset (AxisDirection aDir) const override |
| | Binning offset - overloaded for some R-binning types.
|
| void | set (BoundValues bValue, double value) |
| | Set a bound value.
|
| void | set (std::initializer_list< std::pair< BoundValues, double > > keyValues) |
| | Set a range of bound values.
|
| std::ostream & | toStream (std::ostream &os) const override |
| | Output Method for std::ostream.
|
| VolumeBounds::BoundsType | type () const final |
| | Return the bounds type - for persistency optimization.
|
| std::vector< double > | values () const final |
| | Return the bound values as dynamically sized vector.
|
| | VolumeBounds ()=default |
| virtual | ~VolumeBounds ()=default |
[0] and [1] at positive \( \phi \)
Bounds for a cylindrical Volume, the orientedSurfaces(..) method creates a vector of up to 6 surfaces:
case A) 3 Surfaces (full cylindrical tube): BoundarySurfaceFace [index]:
- negativeFaceXY [0] : Acts::DiscSurface with \( r_{inner}=0 \), parallel to \( xy \) plane at negative \( z\)
- positiveFaceXY [1] : Acts::DiscSurface with \( r_{inner}=0 \), parallel to \( xy \) plane at positive \( z\)
- cylinderCover [2] : Acts::CylinderSurface confining the Acts::Volume
case B) 4 Surfaces (tube with inner and outer radius): BoundarySurfaceFace [index]:
- negativeFaceXY [0] : Acts::DiscSurface with \( r_{inner}>0 \), parallel to \( xy \) plane at negative \( z\)
- positiveFaceXY [1] : Acts::DiscSurface with \( r_{inner}>0 \), parallel to \( xy \) plane at positive \( z\)
- tubeOuterCover [2] : Acts::CylinderSurface with \( r = r_{outer} \)
- tubeInnerCover [3] : Acts::CylinderSurface with \( r = r_{inner} \)
case C) 6 Surfaces (sectoral tube with inner and outer radius): BoundarySurfaceFace [index]:
- negativeFaceXY [0] : Acts::DiscSurface with \( r_{inner}>0\) and \( \phi < \pi \), parallel to \( xy \) plane at negative \(z\)
- positiveFaceXY [1] : Acts::DiscSurface with \( r_{inner}>0 \) and \( \phi < \pi \), parallel to \( xy \) plane at positive \(z\)
- tubeSectorOuterCover [2] : Acts::CylinderSurface with \( r = r_{outer}\)
- tubeSectorInnerCover [3] : Acts::CylinderSurface with \( r = r_{inner} \)
- tubeSectorNegativePhi [4] : Rectangular Acts::PlaneSurface attached to [0] and [1] at negative \( \phi \)
- tubeSectorNegativePhi [5] :