4 #define DELTA_R = 10000.0
7 DLine::DLine() : r0(0.0, 0.0, 0.0), r1(0.0, 0.0, 1.0), debug_level(0) {}
9 DLine::DLine(Hep3Vector r0_in, Hep3Vector r1_in,
int level): r0(r0_in), r1(r1_in), debug_level(level) {};
11 DLine::DLine(
double x,
double y,
double z,
double theta,
double phi,
int level) : debug_level(level) {
15 double sinth =
sin(theta);
16 r1(0) = x + sinth*cos(phi);
17 r1(1) = y + sinth*
sin(phi);
18 r1(2) = z + cos(theta);
19 if (
debug_level > 2) cout <<
"DLine::DLine: line constructed: " <<
r0 <<
r1 << endl;
24 Hep3Vector point3(point(1), point(2), point(3));
31 num = diff.cross(r0 - point);
32 double doca = num.mag()/diff.mag();
33 if (
debug_level >= 4) cout <<
"DLine:doca: num = " << num.mag() <<
" diff = " << diff.mag() <<
" doca = " << doca << endl;
38 Hep3Vector point3(point(1), point(2), point(3)), poca3;
51 t = (point -
r0)*diff/diff.mag2();
52 Hep3Vector
poca = r0 + diff*t;
double doca(HepVector point)
HepVector poca(HepVector point)