DD4hep
1.30.0
Detector Description Toolkit for High Energy Physics
|
#include <Surface.h>
Public Member Functions | |
VolConeImpl () | |
default c'tor More... | |
VolConeImpl (Volume vol, SurfaceType type, double thickness_inner, double thickness_outer, Vector3D v, Vector3D origin) | |
virtual Vector3D | u (const Vector3D &point=Vector3D()) const |
virtual Vector3D | v (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 |
virtual std::vector< std::pair< Vector3D, Vector3D > > | getLines (unsigned nMax=100) |
create outer bounding lines for the given symmetry of the polyhedron More... | |
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 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... | |
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... | |
Private Attributes | |
double | _ztip { 0.0 } |
double | _zt0 { 0.0 } |
double | _zt1 { 0.0 } |
double | _tanTheta { 0.0 } |
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 conical surface attached to a volume
|
inline |
dd4hep::rec::VolConeImpl::VolConeImpl | ( | Volume | vol, |
SurfaceType | type, | ||
double | thickness_inner, | ||
double | thickness_outer, | ||
Vector3D | v, | ||
Vector3D | origin | ||
) |
The standard constructor. The origin vector points to the origin of the coordinate system on the cone, its rho defining the mean radius of the cone (z-component of the origin is ignored !). The measurement direction v defines the opening angle of the cone, the normal is chosen to be orthogonal to v. NB: the cone is always parallel to the local z axis.
Definition at line 341 of file Surface.cpp.
|
virtual |
Distance to surface
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 442 of file Surface.cpp.
|
virtual |
create outer bounding lines for the given symmetry of the polyhedron
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 467 of file Surface.cpp.
Convert the global position to the local position (u,v) on the surface - v runs along the axis of the cone, u is r*phi
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 411 of file Surface.cpp.
Convert the local position (u,v) on the surface to the global position - v runs along the axis of the cone, u is r*phi
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 426 of file Surface.cpp.
The normal direction at the given point, projected onto the cone. No check is done whether the point actually is on the cone surface
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 405 of file Surface.cpp.
First direction of measurement U - rotated to point projected onto the cone. No check is done whether the point actually is on the cone surface
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 398 of file Surface.cpp.
Second direction of measurement V - rotated to point projected onto the cone. No check is done whether the point actually is on the cone surface
Reimplemented from dd4hep::rec::VolSurfaceBase.
Definition at line 392 of file Surface.cpp.
|
private |