Analysis Software
Documentation for sPHENIX simulation software
|
#include <acts/blob/sPHENIX/Core/include/Acts/Geometry/GenericCuboidVolumeBounds.hpp>
Classes | |
struct | BoundValues |
This struct helps to symmetrize with the the other volume bounds classes. More... | |
Public Member Functions | |
GenericCuboidVolumeBounds ()=delete | |
GenericCuboidVolumeBounds (const std::array< Acts::Vector3, 8 > &vertices) noexcept(false) | |
GenericCuboidVolumeBounds (const std::array< double, BoundValues::eSize > &values) noexcept(false) | |
~GenericCuboidVolumeBounds () override=default | |
VolumeBounds::BoundsType | type () const final |
std::vector< double > | values () const final |
bool | inside (const Vector3 &gpos, double tol=0.) const override |
OrientedSurfaces | orientedSurfaces (const Transform3 &transform=Transform3::Identity()) const override |
Volume::BoundingBox | boundingBox (const Transform3 *trf=nullptr, const Vector3 &envelope={0, 0, 0}, const Volume *entity=nullptr) const final |
std::ostream & | toStream (std::ostream &sl) const override |
void | draw (IVisualization3D &helper, const Transform3 &transform=Transform3::Identity()) const |
Public Member Functions inherited from Acts::VolumeBounds | |
VolumeBounds ()=default | |
virtual | ~VolumeBounds ()=default |
virtual Vector3 | binningOffset (BinningValue bValue) const |
Binning offset - overloaded for some R-binning types. | |
virtual double | binningBorder (BinningValue bValue) const |
Private Member Functions | |
void | construct () noexcept(false) |
Private Attributes | |
std::array< Vector3, 8 > | m_vertices |
std::array< Vector3, 6 > | m_normals |
Additional Inherited Members | |
Public Types inherited from Acts::VolumeBounds | |
enum | BoundsType : int { eCone = 0, eCuboid = 1, eCutoutCylinder = 2, eCylinder = 3, eGenericCuboid = 4, eTrapezoid = 5, eOther = 6 } |
Definition at line 24 of file GenericCuboidVolumeBounds.hpp.
View newest version in sPHENIX GitHub at line 24 of file GenericCuboidVolumeBounds.hpp
|
delete |
|
noexcept |
Constructor from a set of vertices
vertices | The set of input vertices |
The ordering is considered to be:
Definition at line 30 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 30 of file GenericCuboidVolumeBounds.cpp
|
noexcept |
Constructor from a fixed size array
values | The input values |
|
overridedefault |
|
finalvirtual |
Construct bounding box for this shape
trf | Optional transform |
envelope | Optional envelope to add / subtract from min/max |
entity | Entity to associate this bounding box with |
Implements Acts::VolumeBounds.
Definition at line 200 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 200 of file GenericCuboidVolumeBounds.cpp
References i, and Acts::Test::transform.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
privatenoexcept |
Private helper method to construct the Volume bounds to be called by the constructors, from the ordered input vertices
Definition at line 143 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 143 of file GenericCuboidVolumeBounds.cpp
References KFPMath::a, ac(), KFPMath::b, Acts::PhysicalConstants::c, Acts::UnitConstants::e, i, and ambiguity_solver_full_chain::idx.
void Acts::GenericCuboidVolumeBounds::draw | ( | IVisualization3D & | helper, |
const Transform3 & | transform = Transform3::Identity() |
||
) | const |
Draw this shape using a visualization helper
helper | The visualizatin helper |
transform | Optional transformation matrix |
Definition at line 222 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 222 of file GenericCuboidVolumeBounds.cpp
References KFPMath::a, KFPMath::b, Acts::PhysicalConstants::c, and Acts::IVisualization3D::face().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
overridevirtual |
Checking if position given in volume frame is inside
gpos | is the global position to be checked |
tol | is the tolerance applied for the inside check |
Implements Acts::VolumeBounds.
Definition at line 47 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 47 of file GenericCuboidVolumeBounds.cpp
References i, m_normals, m_vertices, and check_smearing_config::ref.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
overridevirtual |
Oriented surfaces, i.e. the decomposed boundary surfaces and the according navigation direction into the volume given the normal vector on the surface
transform | is the 3D transform to be applied to the boundary surfaces to position them in 3D space |
It will throw an exception if the orientation prescription is not adequate
Implements Acts::VolumeBounds.
Definition at line 66 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 66 of file GenericCuboidVolumeBounds.cpp
References KFPMath::a, ac(), KFPMath::b, Acts::PhysicalConstants::c, Acts::Direction::fromScalar(), i, testing::internal::move(), and ActsExamples::HepMC3Event::vertices().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
overridevirtual |
sl | is the output stream to be written into |
Implements Acts::VolumeBounds.
Definition at line 131 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 131 of file GenericCuboidVolumeBounds.cpp
References i.
|
inlinefinalvirtual |
Return the bounds type - for persistency optimization
Implements Acts::VolumeBounds.
Definition at line 53 of file GenericCuboidVolumeBounds.hpp.
View newest version in sPHENIX GitHub at line 53 of file GenericCuboidVolumeBounds.hpp
References Acts::VolumeBounds::eGenericCuboid.
|
finalvirtual |
Return the bound values as dynamically sized vector
Implements Acts::VolumeBounds.
Definition at line 189 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 189 of file GenericCuboidVolumeBounds.cpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
private |
Definition at line 104 of file GenericCuboidVolumeBounds.hpp.
View newest version in sPHENIX GitHub at line 104 of file GenericCuboidVolumeBounds.hpp
Referenced by inside().
|
private |
Definition at line 103 of file GenericCuboidVolumeBounds.hpp.
View newest version in sPHENIX GitHub at line 103 of file GenericCuboidVolumeBounds.hpp
Referenced by inside().