ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
#include <acts/blob/master/Core/include/Acts/Geometry/GenericCuboidVolumeBounds.hpp>
Public Member Functions | |
GenericCuboidVolumeBounds ()=delete | |
GenericCuboidVolumeBounds (const std::array< Acts::Vector3D, 8 > &vertices) noexcept(false) | |
GenericCuboidVolumeBounds (const std::array< double, eSize > &values) noexcept(false) | |
~GenericCuboidVolumeBounds () override=default | |
VolumeBounds::BoundsType | type () const final |
std::vector< double > | values () const final |
bool | inside (const Vector3D &gpos, double tol=0.) const override |
std::vector< std::shared_ptr < const Surface > > | decomposeToSurfaces (const Transform3D *transform) const override |
Volume::BoundingBox | boundingBox (const Transform3D *trf=nullptr, const Vector3D &envelope={0, 0, 0}, const Volume *entity=nullptr) const final |
std::ostream & | toStream (std::ostream &sl) const override |
void | draw (IVisualization &helper, const Transform3D &transform=Transform3D::Identity()) const |
Public Member Functions inherited from Acts::VolumeBounds | |
VolumeBounds ()=default | |
virtual | ~VolumeBounds ()=default |
virtual Vector3D | binningOffset (BinningValue bValue) const |
Binning offset - overloaded for some R-binning types. | |
virtual double | binningBorder (BinningValue bValue) const |
Static Public Attributes | |
static constexpr size_t | eSize = 24 |
Private Member Functions | |
void | construct () noexcept(false) |
Private Attributes | |
std::array< Vector3D, 8 > | m_vertices |
std::array< Vector3D, 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 23 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 23 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 202 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 202 of file GenericCuboidVolumeBounds.cpp
References Acts::Test::transform.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
privatenoexcept |
Private helper method to contruct the Volume bounds to be called by the constructors, from the ordered input vertices
Definition at line 145 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 145 of file GenericCuboidVolumeBounds.cpp
References a, ab, kdfinder::abs(), b, c, d, e, incremental_prev_tag::idx, and CLHEP::normal().
|
overridevirtual |
Method to decompose the Bounds into Surfaces the Volume can turn them into BoundarySurfaces
transform | is the 3D transform to be applied to the boundary surfaces to position them in 3D space |
Implements Acts::VolumeBounds.
Definition at line 60 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 60 of file GenericCuboidVolumeBounds.cpp
References a, ab, b, c, d, and CLHEP::normal().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
void Acts::GenericCuboidVolumeBounds::draw | ( | IVisualization & | helper, |
const Transform3D & | transform = Transform3D::Identity() |
||
) | const |
Draw this shape using a visualization helper
helper | The visualizatin helper |
transform | Optional transformation matrix |
Definition at line 224 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 224 of file GenericCuboidVolumeBounds.cpp
References a, b, c, d, and Acts::IVisualization::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 40 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 40 of file GenericCuboidVolumeBounds.cpp
References kdfinder::abs(), m_normals, and m_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 133 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 133 of file GenericCuboidVolumeBounds.cpp
|
inlinefinalvirtual |
Return the bounds type - for persistency optimization
Implements Acts::VolumeBounds.
Definition at line 49 of file GenericCuboidVolumeBounds.hpp.
View newest version in sPHENIX GitHub at line 49 of file GenericCuboidVolumeBounds.hpp
References Acts::VolumeBounds::eGenericCuboid.
|
finalvirtual |
Return the bound values as dynamically sized vector
Implements Acts::VolumeBounds.
Definition at line 191 of file GenericCuboidVolumeBounds.cpp.
View newest version in sPHENIX GitHub at line 191 of file GenericCuboidVolumeBounds.cpp
|
static |
Definition at line 26 of file GenericCuboidVolumeBounds.hpp.
View newest version in sPHENIX GitHub at line 26 of file GenericCuboidVolumeBounds.hpp
|
private |
Definition at line 98 of file GenericCuboidVolumeBounds.hpp.
View newest version in sPHENIX GitHub at line 98 of file GenericCuboidVolumeBounds.hpp
Referenced by inside().
|
private |
Definition at line 97 of file GenericCuboidVolumeBounds.hpp.
View newest version in sPHENIX GitHub at line 97 of file GenericCuboidVolumeBounds.hpp
Referenced by inside().