Class GenericCuboidVolumeBounds¶
Defined in File GenericCuboidVolumeBounds.hpp
Inheritance Relationships¶
Base Type¶
public Acts::VolumeBounds
(Class VolumeBounds)
Class Documentation¶
-
class
Acts
::
GenericCuboidVolumeBounds
: public Acts::VolumeBounds¶ Public Functions
-
GenericCuboidVolumeBounds
() = delete¶
-
GenericCuboidVolumeBounds
(const std::array<Acts::Vector3D, 8> &vertices) noexcept(false)¶ Constructor from a set of vertices.
The ordering is considered to be:
the first 4 vertices are the “top” face
the second 4 vertices are the “bottom” face
both faces are given in counter clock wise order
- Parameters
vertices
: The set of input vertices
-
GenericCuboidVolumeBounds
(const std::array<double, eSize> &values) noexcept(false)¶ Constructor from a fixed size array.
- Parameters
values
: The input values
-
~GenericCuboidVolumeBounds
() override = default¶
-
Volume::BoundingBox
boundingBox
(const Transform3D *trf = nullptr, const Vector3D &envelope = {0, 0, 0}, const Volume *entity = nullptr) const final¶ Construct bounding box for this shape.
- Return
Constructed bounding box
- Parameters
trf
: Optional transformenvelope
: Optional envelope to add / subtract from min/maxentity
: Entity to associate this bounding box with
-
void
draw
(IVisualization3D &helper, const Transform3D &transform = Transform3D::Identity()) const¶ Draw this shape using a visualization helper.
- Parameters
helper
: The visualizatin helpertransform
: Optional transformation matrix
-
bool
inside
(const Vector3D &gpos, double tol = 0.) const override¶ Checking if position given in volume frame is inside.
- Return
boolean indicating if the position is inside
- Parameters
gpos
: is the global position to be checkedtol
: is the tolerance applied for the inside check
-
OrientedSurfaces
orientedSurfaces
(const Transform3D &transform = Transform3D::Identity()) const override¶ Oriented surfaces, i.e.
the decomposed boundary surfaces and the according navigation direction into the volume given the normal vector on the surface
It will throw an exception if the orientation prescription is not adequate
- Parameters
transform
: is the 3D transform to be applied to the boundary surfaces to position them in 3D space
- Return
a vector of surfaces bounding this volume
-
std::ostream &
toStream
(std::ostream &sl) const override¶ - Parameters
sl
: is the output stream to be written into
-
VolumeBounds::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
Public Static Attributes
-
constexpr size_t
eSize
= 24¶
-