Struct PlanarSurfaceMask¶
Defined in File PlanarSurfaceMask.hpp
Struct Documentation¶
-
struct
ActsFatras
::
PlanarSurfaceMask
¶ A brief struct that allows to apply a surface bound mask.
Public Functions
-
Acts::Result<Segment2D>
annulusMask
(const Acts::AnnulusBounds &aBounds, const Segment2D &segment, bool firstInside) const¶ Apply the mask of an annulus disk.
- Return
a result wrapping a segment
- Parameters
aBounds
: The annulus disc for the maskingsegment
: The track segment (on surface)firstInside
: The indicator if the first is inside
-
Acts::Result<Segment2D>
apply
(const Acts::Surface &surface, const Segment2D &segment) const¶ Apply the mask on the segment.
If the semgent is full inside the surface, return unchanged
Otherwise mask/clip the segment to fit into the bounds
- Note
Only PlaneSurface/DiscSurface are supported
- Note
If both end points of the segment are inside, the segment is not clipped/masked, even if it would cross a surface boundary. Examples for those would be non-covex polygons or segments on a radial bound, where the radial boundary is crossed. Such segments do not occur in Digitization, as the hit has to be inside the surface bounds to start with.
- Return
a result wrapping a segment
- Parameters
surface
: The surface in questionsegment
: The track segment (on surface)
-
Acts::Result<Segment2D>
polygonMask
(const std::vector<Acts::Vector2> &vertices, const Segment2D &segment, bool firstInside) const¶ Apply the mask of a polygon.
- Return
a result wrapping a segment
- Parameters
vertices
: The vertices of the polygonsegment
: The track segment (on surface)firstInside
: The indicator if the first is inside
-
Acts::Result<Segment2D>
radialMask
(const Acts::RadialBounds &rBounds, const Segment2D &segment, const Segment2D &polarSegment, bool firstInside) const¶ Apply the mask of a Radial disk.
- Return
a result wrapping a segment
- Parameters
rBounds
: The radial disc for the maskingsegment
: The track segment (on surface)polarSegment
: The track segmetn (on surface, in polar)firstInside
: The indicator if the first is inside
Public Members
-
Acts::detail::IntersectionHelper2D
intersector
¶
-
Acts::Result<Segment2D>