DD4hep
01.18
|
Reference counted handle class for a local surface attached to a volume (VolSurfaceBase). More...
#include <Surface.h>
Public Member Functions | |
virtual | ~VolSurface () |
VolSurface () | |
default c'tor More... | |
VolSurface (VolSurfaceBase *p) | |
Constructor to be used with an existing object. More... | |
VolSurface (const VolSurface &vsurf) | |
Constructor to be used with an existing object. More... | |
VolSurface & | operator= (const VolSurface &vsurf) |
Volume | volume () const |
the volume to which this surface is attached. More... | |
VolSurfaceBase * | ptr () const |
pointer to underlying object More... | |
virtual long64 | id () const |
The id of this surface - always 0 for VolSurfaces. More... | |
virtual const SurfaceType & | type () const |
properties of the surface encoded in Type. More... | |
virtual Vector3D | u (const Vector3D &point=Vector3D()) const |
First direction of measurement U. More... | |
virtual Vector3D | v (const Vector3D &point=Vector3D()) const |
Second direction of measurement V. More... | |
virtual Vector3D | normal (const Vector3D &point=Vector3D()) const |
Access to the normal direction at the given point. More... | |
virtual const Vector3D & | origin () const |
Get Origin of local coordinate system on surface. More... | |
virtual Vector2D | globalToLocal (const Vector3D &point) const |
Convert the global position to the local position (u,v) on the surface. More... | |
virtual Vector3D | localToGlobal (const Vector2D &point) const |
Convert the local position (u,v) on the surface to the global position. More... | |
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 |
Thickness of inner material. More... | |
virtual double | outerThickness () const |
Thickness of outer material. More... | |
virtual double | length_along_u () const |
The length of the surface along direction u at the origin. More... | |
virtual double | length_along_v () const |
The length of the surface along direction v at the origin. More... | |
virtual double | distance (const Vector3D &point) const |
Distance to surface. More... | |
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 innerMaterial More... | |
void | setOuterMaterial (const IMaterial &mat) |
set the outer Materal More... | |
![]() | |
virtual | ~ISurface () |
Destructor. More... | |
Protected Attributes | |
VolSurfaceBase * | _surf |
Reference counted handle class for a local surface attached to a volume (VolSurfaceBase).
|
inlinevirtual |
Definition at line 189 of file Surface.h.
References dd4hep::rec::VolSurfaceBase::_refCount, and _surf.
|
inline |
|
inline |
Constructor to be used with an existing object.
Definition at line 199 of file Surface.h.
References dd4hep::rec::VolSurfaceBase::_refCount, and _surf.
|
inline |
Constructor to be used with an existing object.
Definition at line 202 of file Surface.h.
References dd4hep::rec::VolSurfaceBase::_refCount, and _surf.
|
virtual |
Distance to surface.
Implements dd4hep::rec::ISurface.
Definition at line 261 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::distance().
|
virtual |
Definition at line 265 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::getLines().
Convert the global position to the local position (u,v) on the surface.
Implements dd4hep::rec::ISurface.
Definition at line 253 of file Surface.cpp.
Referenced by dd4hep::rec::CylinderSurface::globalToLocal().
|
virtual |
The id of this surface - always 0 for VolSurfaces.
Implements dd4hep::rec::ISurface.
Definition at line 247 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::initialize().
|
virtual |
Access to the material in opposite direction of the normal.
Implements dd4hep::rec::ISurface.
Definition at line 255 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::innerMaterial().
|
virtual |
Thickness of inner material.
Implements dd4hep::rec::ISurface.
Definition at line 257 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::innerThickness().
|
virtual |
Checks if the given point lies within the surface.
Implements dd4hep::rec::ISurface.
Definition at line 262 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::insideBounds().
|
virtual |
The length of the surface along direction u at the origin.
For 'regular' boundaries, like rectangles, this can be used to speed up the computation of inSideBounds.
Implements dd4hep::rec::ISurface.
Definition at line 259 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::length_along_u().
|
virtual |
The length of the surface along direction v at the origin.
For 'regular' boundaries, like rectangles, this can be used to speed up the computation of inSideBounds.
Implements dd4hep::rec::ISurface.
Definition at line 260 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::length_along_v().
Convert the local position (u,v) on the surface to the global position.
Implements dd4hep::rec::ISurface.
Definition at line 254 of file Surface.cpp.
Referenced by dd4hep::rec::CylinderSurface::localToGlobal().
Access to the normal direction at the given point.
Implements dd4hep::rec::ISurface.
Definition at line 251 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::getLines(), dd4hep::rec::Surface::initialize(), and dd4hep::rec::CylinderSurface::normal().
|
inline |
Definition at line 206 of file Surface.h.
References dd4hep::rec::VolSurfaceBase::_refCount, and _surf.
|
virtual |
Get Origin of local coordinate system on surface.
Implements dd4hep::rec::ISurface.
Definition at line 252 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::getLines(), dd4hep::rec::Surface::initialize(), and dd4hep::rec::CylinderSurface::radius().
|
virtual |
Access to the material in direction of the normal.
Implements dd4hep::rec::ISurface.
Definition at line 256 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::outerMaterial().
|
virtual |
Thickness of outer material.
Implements dd4hep::rec::ISurface.
Definition at line 258 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::outerThickness().
|
inline |
|
inline |
set the innerMaterial
Definition at line 279 of file Surface.h.
References _surf, and dd4hep::rec::VolSurfaceBase::setInnerMaterial().
Referenced by dd4hep::rec::Surface::innerMaterial().
|
inline |
set the outer Materal
Definition at line 282 of file Surface.h.
References _surf, and dd4hep::rec::VolSurfaceBase::setOuterMaterial().
Referenced by dd4hep::rec::Surface::outerMaterial().
|
virtual |
properties of the surface encoded in Type.
Implements dd4hep::rec::ISurface.
Definition at line 248 of file Surface.cpp.
Referenced by dd4hep::rec::DetectorSurfaces::initialize().
First direction of measurement U.
Implements dd4hep::rec::ISurface.
Definition at line 249 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::getLines(), dd4hep::rec::Surface::initialize(), and dd4hep::rec::CylinderSurface::u().
Second direction of measurement V.
Implements dd4hep::rec::ISurface.
Definition at line 250 of file Surface.cpp.
Referenced by dd4hep::rec::Surface::initialize(), dd4hep::rec::ConeSurface::radius0(), dd4hep::rec::ConeSurface::radius1(), dd4hep::rec::CylinderSurface::v(), dd4hep::rec::ConeSurface::z0(), and dd4hep::rec::ConeSurface::z1().
|
inline |
the volume to which this surface is attached.
Definition at line 214 of file Surface.h.
References _surf, and dd4hep::rec::VolSurfaceBase::volume().
Referenced by dd4hep::rec::Surface::initialize(), and dd4hep::rec::Surface::volume().
|
protected |
Definition at line 185 of file Surface.h.
Referenced by dd4hep::rec::VolSurfaceHandle< T >::operator->(), operator=(), ptr(), setInnerMaterial(), setOuterMaterial(), VolSurface(), volume(), and ~VolSurface().