Garfield++ v2r0
A toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors
|
Box. More...
#include <SolidBox.hh>
Public Member Functions | |
SolidBox (const double cx, const double cy, const double cz, const double lx, const double ly, const double lz) | |
Constructor from centre and half-widths. | |
SolidBox (const double cx, const double cy, const double cz, const double lx, const double ly, const double lz, const double dx, const double dy, const double dz) | |
Constructor from centre, half-widths, and orientation. | |
~SolidBox () | |
Destructor. | |
virtual bool | IsInside (const double x, const double y, const double z) const |
Check whether a given point is inside the solid. | |
virtual bool | GetBoundingBox (double &xmin, double &ymin, double &zmin, double &xmax, double &ymax, double &zmax) const |
Return the bounding box of the solid. | |
virtual bool | IsBox () const |
Return true if the solid is a box. | |
virtual bool | GetCenter (double &x, double &y, double &z) const |
virtual bool | GetDimensions (double &l1, double &l2, double &l3) const |
virtual bool | GetOrientation (double &ctheta, double &stheta, double &cphi, double &sphi) const |
void | SetHalfLengthX (const double lx) |
void | SetHalfLengthY (const double ly) |
void | SetHalfLengthZ (const double lz) |
Public Member Functions inherited from Garfield::Solid | |
Solid () | |
Constructor. | |
virtual | ~Solid () |
Destructor. | |
virtual bool | IsInside (const double x, const double y, const double z) const =0 |
Check whether a given point is inside the solid. | |
virtual bool | GetBoundingBox (double &xmin, double &ymin, double &zmin, double &xmax, double &ymax, double &zmax) const =0 |
Return the bounding box of the solid. | |
virtual bool | IsBox () const |
Return true if the solid is a box. | |
virtual bool | IsTube () const |
Return true if the solid is a tube. | |
virtual bool | IsSphere () const |
Return true if the solid is a sphere. | |
virtual bool | GetCenter (double &x, double &y, double &z) const =0 |
virtual bool | GetDimensions (double &l1, double &l2, double &l3) const =0 |
virtual bool | GetOrientation (double &ctheta, double &stheta, double &cphi, double &shpi) const =0 |
void | EnableDebugging () |
Switch on debugging messages. | |
void | DisableDebugging () |
Additional Inherited Members | |
Protected Attributes inherited from Garfield::Solid | |
bool | m_debug |
Box.
Definition at line 10 of file SolidBox.hh.
Garfield::SolidBox::SolidBox | ( | const double | cx, |
const double | cy, | ||
const double | cz, | ||
const double | lx, | ||
const double | ly, | ||
const double | lz | ||
) |
Constructor from centre and half-widths.
Definition at line 10 of file SolidBox.cc.
Garfield::SolidBox::SolidBox | ( | const double | cx, |
const double | cy, | ||
const double | cz, | ||
const double | lx, | ||
const double | ly, | ||
const double | lz, | ||
const double | dx, | ||
const double | dy, | ||
const double | dz | ||
) |
Constructor from centre, half-widths, and orientation.
Definition at line 25 of file SolidBox.cc.
|
inline |
|
virtual |
Return the bounding box of the solid.
Implements Garfield::Solid.
Definition at line 92 of file SolidBox.cc.
|
virtual |
Implements Garfield::Solid.
Definition at line 115 of file SolidBox.cc.
|
virtual |
Implements Garfield::Solid.
Definition at line 123 of file SolidBox.cc.
|
virtual |
Implements Garfield::Solid.
Definition at line 131 of file SolidBox.cc.
|
inlinevirtual |
Return true if the solid is a box.
Reimplemented from Garfield::Solid.
Definition at line 26 of file SolidBox.hh.
|
virtual |
Check whether a given point is inside the solid.
Implements Garfield::Solid.
Definition at line 62 of file SolidBox.cc.
void Garfield::SolidBox::SetHalfLengthX | ( | const double | lx | ) |
Definition at line 141 of file SolidBox.cc.
void Garfield::SolidBox::SetHalfLengthY | ( | const double | ly | ) |
Definition at line 151 of file SolidBox.cc.
void Garfield::SolidBox::SetHalfLengthZ | ( | const double | lz | ) |
Definition at line 161 of file SolidBox.cc.