14 SolidTube(
const double cx,
const double cy,
const double cz,
15 const double rmin,
const double rmax,
const double lz);
17 SolidTube(
const double cx,
const double cy,
const double cz,
18 const double rmin,
const double rmax,
const double lz,
19 const double dx,
const double dy,
const double dz);
23 virtual bool IsInside(
const double x,
const double y,
const double z)
const;
24 virtual bool GetBoundingBox(
double& xmin,
double& ymin,
double& zmin,
25 double& xmax,
double& ymax,
double& zmax)
const;
26 virtual bool IsTube()
const {
return true; }
28 virtual bool GetCenter(
double& x,
double& y,
double& z)
const;
29 virtual bool GetDimensions(
double& l1,
double& l2,
double& l3)
const;
30 virtual bool GetOrientation(
double& ctheta,
double& stheta,
double& cphi,
39 double m_cX, m_cY, m_cZ;
41 double m_rMin, m_rMax;
45 double m_dX, m_dY, m_dZ;
46 double m_cPhi, m_sPhi;
47 double m_cTheta, m_sTheta;
void SetInnerRadius(const double rmin)
void SetHalfLengthZ(const double lz)
virtual bool GetOrientation(double &ctheta, double &stheta, double &cphi, double &sphi) const
void SetOuterRadius(const double rmax)
virtual bool GetDimensions(double &l1, double &l2, double &l3) const
virtual bool GetCenter(double &x, double &y, double &z) const
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 IsInside(const double x, const double y, const double z) const
Check whether a given point is inside the solid.
virtual bool IsTube() const
Return true if the solid is a tube.
Abstract base class for solids.