12#ifndef _DEFINE_CYLINDER_H_
13#define _DEFINE_CYLINDER_H_
14#include "KalFitAlg/KalFitElement.h"
15#include "CLHEP/Geometry/Point3D.h"
16#ifndef ENABLE_BACKWARDS_COMPATIBILITY
31 double radius,
double thick,
32 double length,
double z0)
37 zf_ = z0 + length * .5;
38 zb_ = z0 - length * .5;
HepGeom::Point3D< double > HepPoint3D
Cylinder is an Element whose shape is a cylinder.
bool isInside(const HepPoint3D &x) const
Check if the position x is inside the current cylinder.
bool isInside2(const HepPoint3D &x) const
bool isInside(const HepPoint3D &x, const double ri, const double ro) const
KalFitCylinder(const KalFitMaterial *material, double radius, double thick, double length, double z0)
Constructor.
virtual double intersect(const KalFitTrack &track, HepPoint3D &x, const double ri, const double ro) const
virtual double intersect(const KalFitTrack &track, HepPoint3D &x) const
Find intersection with Helix.
virtual double intersect(const KalFitTrack &track, HepPoint3D &x, const HepPoint3D &point) const
virtual double radius(void) const
Extract radius of the cylinder.
const KalFitMaterial & material(void) const
Return Material of which Element is made.
Description of a track class (<- Helix.cc)