Class EllipseBounds¶
Defined in File EllipseBounds.hpp
Inheritance Relationships¶
Base Type¶
public Acts::PlanarBounds
(Class PlanarBounds)
Class Documentation¶
-
class
Acts
::
EllipseBounds
: public Acts::PlanarBounds¶ Class to describe the bounds for a planar ellispoid surface.
By providing an argument for hphisec, the bounds can be restricted to a phi-range around the center position.
Public Types
Public Functions
-
EllipseBounds
() = delete¶
-
EllipseBounds
(double innerRx, double innerRy, double outerRx, double outerRy, double halfPhi = M_PI, double averagePhi = 0.) noexcept(false)¶ Constructor for full of an ellipsoid ring.
- Parameters
innerRx
: The inner ellipse radius in xinnerRy
: The inner ellipse radius in youterRx
: The outer ellipse radius in xouterRy
: The outer ellipse radius in yhalfPhi
: spanning phi sector (is set to pi as default)averagePhi
: average phi (is set to 0. as default)
-
EllipseBounds
(const std::array<double, eSize> &values) noexcept(false)¶ Constructor - from fixed size array.
- Parameters
values
: The parameter values
-
~EllipseBounds
() override = default¶
-
const RectangleBounds &
boundingBox
() const final¶ Bounding box parameters.
- Return
rectangle bounds for a bounding box
-
double
get
(BoundValues bValue) const¶ Access to the bound values.
- Parameters
bValue
: the class nested enum for the array access
-
bool
inside
(const Vector2 &lposition, const BoundaryCheck &bcheck) const final¶ This method checks if the point given in the local coordinates is between two ellipsoids if only tol0 is given and additional in the phi sector is tol1 is given.
- Return
boolean indicator for the success of this operation
- Parameters
lposition
: Local position (assumed to be in right surface frame)bcheck
: boundary check directive
-
std::ostream &
toStream
(std::ostream &sl) const final¶ Output Method for std::ostream.
-
BoundsType
type
() const final¶ Return the bounds type - for persistency optimization.
- Return
is a BoundsType enum
-
std::vector<double>
values
() const final¶ Return the bound values as dynamically sized vector.
- Return
this returns a copy of the internal values
-
std::vector<Vector2>
vertices
(unsigned int lseg) const final¶ Return the vertices.
- Note
the number of segements to may be altered by also providing the extremas in all direction
- Return
vector for vertices in 2D
- Parameters
lseg
: the number of segments used to approximate and eventually curved line, here it refers to the full 2PI Ellipse
-