EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
#include <acts/blob/sPHENIX/Core/include/Acts/Geometry/Volume.hpp>
Public Types | |
using | BoundingBox = AxisAlignedBoundingBox< Volume, double, 3 > |
Public Member Functions | |
Volume (const Transform3D &transform, VolumeBoundsPtr volbounds) | |
Volume (const Volume &vol, const Transform3D &shift=Transform3D::Identity()) | |
Volume ()=delete | |
virtual | ~Volume ()=default |
Volume & | operator= (const Volume &vol) |
const Transform3D & | transform () const |
Return methods for geometry transform. | |
const Transform3D & | itransform () const |
Returns the inverted transform of this volume. | |
const Vector3D & | center () const |
returns the center of the volume | |
const VolumeBounds & | volumeBounds () const |
returns the volumeBounds() | |
BoundingBox | boundingBox (const Vector3D &envelope={0, 0, 0}) const |
const BoundingBox & | orientedBoundingBox () const |
bool | inside (const Vector3D &gpos, double tol=0.) const |
Vector3D | binningPosition (const GeometryContext &gctx, BinningValue bValue) const override |
Public Member Functions inherited from Acts::GeometryObject | |
GeometryObject ()=default | |
Defaulted construrctor. | |
GeometryObject (const GeometryObject &)=default | |
Defaulted copy constructor. | |
GeometryObject (const GeometryIdentifier &geometryId) | |
GeometryObject & | operator= (const GeometryObject &geometryId) |
const GeometryIdentifier & | geometryId () const |
virtual double | binningPositionValue (const GeometryContext &gctx, BinningValue bValue) const |
void | assignGeometryId (const GeometryIdentifier &geometryId) |
Protected Attributes | |
Transform3D | m_transform |
Transform3D | m_itransform |
Vector3D | m_center |
VolumeBoundsPtr | m_volumeBounds |
BoundingBox | m_orientedBoundingBox |
Protected Attributes inherited from Acts::GeometryObject | |
GeometryIdentifier | m_geometryId |
It inhertis of GeometryObject for TDD identification
Base class for all volumes inside the tracking realm, it defines the interface for inherited Volume classes regarding the geometrical information.
Definition at line 32 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 32 of file Volume.hpp
using Acts::Volume::BoundingBox = AxisAlignedBoundingBox<Volume, double, 3> |
Definition at line 34 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 34 of file Volume.hpp
Acts::Volume::Volume | ( | const Transform3D & | transform, |
VolumeBoundsPtr | volbounds | ||
) |
Explicit constructor with shared arguments
transform | is the transform to position the volume in 3D space |
volbounds | is the volume boundary definitions |
Acts::Volume::Volume | ( | const Volume & | vol, |
const Transform3D & | shift = Transform3D::Identity() |
||
) |
Copy Constructor - with optional shift
vol | is the source volume for the copy |
shift | is the optional shift applied as : shift * vol.transform() |
|
delete |
|
virtualdefault |
|
overridevirtual |
The binning position method
gctx | The current geometry context object, e.g. alignment |
bValue | is the binning value schema |
Implements Acts::GeometryObject.
Definition at line 38 of file Volume.cpp.
View newest version in sPHENIX GitHub at line 38 of file Volume.cpp
References Acts::binR, Acts::binRPhi, and m_volumeBounds().
Referenced by Acts::TrackingVolume::glueTrackingVolume().
Acts::Volume::BoundingBox Acts::Volume::boundingBox | ( | const Vector3D & | envelope = {0, 0, 0} | ) | const |
Construct bounding box for this shape
envelope | Optional envelope to add / subtract from min/max |
Definition at line 70 of file Volume.cpp.
View newest version in sPHENIX GitHub at line 70 of file Volume.cpp
References m_transform(), and m_volumeBounds().
|
inline |
returns the center of the volume
Definition at line 115 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 115 of file Volume.hpp
References m_center.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
bool Acts::Volume::inside | ( | const Vector3D & | gpos, |
double | tol = 0. |
||
) | const |
Inside() method for checks
gpos | is the position to be checked |
tol | is the tolerance parameter |
Definition at line 60 of file Volume.cpp.
View newest version in sPHENIX GitHub at line 60 of file Volume.cpp
References Acts::Test::transform.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
inline |
Returns the inverted transform of this volume.
Definition at line 111 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 111 of file Volume.hpp
References m_itransform.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Acts::Volume & Acts::Volume::operator= | ( | const Volume & | vol | ) |
Assignment operator
vol | is the source volume to be copied |
Definition at line 51 of file Volume.cpp.
View newest version in sPHENIX GitHub at line 51 of file Volume.cpp
References m_center(), m_center, m_transform(), m_transform, m_volumeBounds(), and m_volumeBounds.
const Acts::Volume::BoundingBox & Acts::Volume::orientedBoundingBox | ( | ) | const |
Construct oriented bounding box for this shape
Definition at line 75 of file Volume.cpp.
View newest version in sPHENIX GitHub at line 75 of file Volume.cpp
References m_orientedBoundingBox().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
inline |
Return methods for geometry transform.
Definition at line 107 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 107 of file Volume.hpp
References m_transform.
Referenced by Acts::adjustBinUtility(), and Acts::Test::BOOST_AUTO_TEST_CASE().
|
inline |
returns the volumeBounds()
Definition at line 119 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 119 of file Volume.hpp
References m_volumeBounds.
Referenced by Acts::adjustBinUtility(), Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::AbstractVolume::createBoundarySurfaces(), Acts::TrackingVolume::createBoundarySurfaces(), Acts::JsonGeometryConverter::DefaultBin(), and Acts::operator<<().
|
protected |
Definition at line 102 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 102 of file Volume.hpp
Referenced by center(), and operator=().
|
protected |
Definition at line 101 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 101 of file Volume.hpp
Referenced by itransform().
|
protected |
Definition at line 104 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 104 of file Volume.hpp
|
protected |
Definition at line 100 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 100 of file Volume.hpp
Referenced by operator=(), and transform().
|
protected |
Definition at line 103 of file Volume.hpp.
View newest version in sPHENIX GitHub at line 103 of file Volume.hpp
Referenced by operator=(), and volumeBounds().