DD4hep
1.30.0
Detector Description Toolkit for High Energy Physics
|
#include <Surface.h>
Public Member Functions | |
VolCylinderImpl () | |
default c'tor More... | |
VolCylinderImpl (Volume vol, SurfaceType type, double thickness_inner, double thickness_outer, Vector3D origin) | |
virtual Vector3D | u (const Vector3D &point=Vector3D()) const |
virtual Vector3D | normal (const Vector3D &point=Vector3D()) const |
virtual double | distance (const Vector3D &point) const |
virtual Vector2D | globalToLocal (const Vector3D &point) const |
virtual Vector3D | localToGlobal (const Vector2D &point) const |
Public Member Functions inherited from dd4hep::rec::VolSurfaceBase | |
virtual | ~VolSurfaceBase ()=default |
VolSurfaceBase ()=default | |
default c'tor More... | |
VolSurfaceBase (SurfaceType typ, double thickness_inner, double thickness_outer, Vector3D u_val, Vector3D v_val, Vector3D n, Vector3D o, Volume vol, int identifier) | |
VolSurfaceBase (const VolSurfaceBase &c) | |
Copy the from object. More... | |
Volume | volume () const |
the volume to which this surface is attached. More... | |
virtual long64 | id () const |
The id of this surface. More... | |
virtual const SurfaceType & | type () const |
virtual Vector3D | v (const Vector3D &point=Vector3D()) const |
virtual const Vector3D & | origin () const |
virtual const IMaterial & | innerMaterial () const |
Access to the material in opposite direction of the normal. More... | |
virtual const IMaterial & | outerMaterial () const |
Access to the material in direction of the normal. More... | |
virtual double | innerThickness () const |
virtual double | outerThickness () const |
virtual double | length_along_u () const |
virtual double | length_along_v () const |
virtual bool | insideBounds (const Vector3D &point, double epsilon=1e-4) const |
Checks if the given point lies within the surface. More... | |
virtual std::vector< std::pair< Vector3D, Vector3D > > | getLines (unsigned nMax=100) |
void | setInnerMaterial (const IMaterial &mat) |
set the inner Material More... | |
void | setOuterMaterial (const IMaterial &mat) |
set the outer Materal More... | |
Public Member Functions inherited from dd4hep::rec::ISurface | |
virtual | ~ISurface () |
Destructor. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from dd4hep::rec::VolSurfaceBase | |
virtual void | setU (const Vector3D &u) |
setter for daughter classes More... | |
virtual void | setV (const Vector3D &v) |
setter for daughter classes More... | |
virtual void | setNormal (const Vector3D &n) |
setter for daughter classes More... | |
virtual void | setOrigin (const Vector3D &o) |
setter for daughter classes More... | |
Protected Attributes inherited from dd4hep::rec::VolSurfaceBase | |
SurfaceType | _type {} |
Vector3D | _u {} |
Vector3D | _v {} |
Vector3D | _n {} |
Vector3D | _o {} |
double | _th_i {0} |
double | _th_o {0} |
MaterialData | _innerMat {} |
MaterialData | _outerMat {} |
Volume | _vol {} |
long64 | _id {0} |
unsigned | _refCount {0} |
Implementation of cylindrical surface attached to a volume
|
inline |
dd4hep::rec::VolCylinderImpl::VolCylinderImpl | ( | Volume | vol, |
SurfaceType | type, | ||
double | thickness_inner, | ||
double | thickness_outer, | ||
Vector3D | origin | ||
) |
The standard constructor. The origin vector points to the origin of the coordinate system on the cylinder, its rho defining the radius of the cylinder. The measurement direction v is set to be (0,0,1), the normal is chosen to be parallel to the origin vector and u = n X v.
Definition at line 277 of file Surface.cpp.
|
virtual |
Distance to surface
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 335 of file Surface.cpp.
Convert the global position to the local position (u,v) on the surface - v runs along the axis of the cylinder, u is r*phi
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 310 of file Surface.cpp.
Convert the local position (u,v) on the surface to the global position - v runs along the axis of the cylinder, u is r*phi
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 322 of file Surface.cpp.
The normal direction at the given point, projected onto the cylinder. No check is done whether the point actually is on the cylinder surface
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 304 of file Surface.cpp.
First direction of measurement U - rotated to point projected onto the cylinder. No check is done whether the point actually is on the cylinder surface
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 297 of file Surface.cpp.