374 {
375
376 const double tube_radius = 2.;
377 const double radiusOfStrawCenters = 823.9;
378
379 const double phiScale = 1000.;
380
381 double Rho = radiusOfStrawCenters;
382 if (onTrack && (trackRadius > 0.)) {
383 Rho = trackRadius;
384 }
385
387 int color_hit = 4;
388 int color_tube = 1;
389 if (onTrack && !outlierOnTrack ) {
390 color_hit = 4;
392 } else if (onTrack && outlierOnTrack) {
393 color_hit = 3;
395 } else {
396 color_hit = 6;
398 }
399
400
401 if (driftRadius != 0.0) {
402 TEllipse* hit =
m_shapeCreator.createEllipse( strawPosition, driftRadius, std::atan(driftRadius / Rho) * phiScale );
403 hit->SetLineColor( color_hit );
404 hit->SetLineWidth( 2 );
405
406
407 TObject* hitObj = hit;
409 } else {
410
411 TEllipse* hit =
m_shapeCreator.createEllipse( strawPosition, 1.15, std::atan(1.15 / Rho) * phiScale );
412 hit->SetLineColor( color_hit );
413 hit->SetFillColor( color_hit );
414 hit->SetLineWidth( 2 );
415 TObject* hitObj = hit;
417 }
418
419
420 TEllipse*
tube =
m_shapeCreator.createEllipse( strawPosition, tube_radius, std::atan(tube_radius / Rho) * phiScale );
421 tube->SetLineColor( color_tube );
422
423
424 TObject* tubeObj =
tube;
426
427
428 TEllipse* tube_c =
m_shapeCreator.createEllipse( strawPosition, 0.05, std::atan(0.05 / Rho) * phiScale );
429 tube_c->SetLineColor( color_tube );
430 tube_c->SetFillColor( color_tube );
431
432
433 TObject* tube_cObj = tube_c;
435
436 double l = sqrt(strawPosition.y()*strawPosition.y() + strawPosition.x()*strawPosition.x());
437 TVector3 maxRadiusInPhiPosition1(Rho*strawPosition.x()/l - driftRadius * strawPosition.y()/l,
438 Rho*strawPosition.y()/l + driftRadius * strawPosition.x()/l,
439 strawPosition.z());
440
441 TEllipse* maxRad1 =
m_shapeCreator.createEllipse( maxRadiusInPhiPosition1, 0.05, std::atan(0.05 / Rho) * phiScale );
442 maxRad1->SetLineColor( color_hit );
443 maxRad1->SetFillColor( color_hit );
444
445
446 TObject* maxRad1Obj = maxRad1;
448 TVector3 maxRadiusInPhiPosition2(Rho*strawPosition.x()/l + driftRadius * strawPosition.y()/l,
449 Rho*strawPosition.y()/l - driftRadius * strawPosition.x()/l,
450 strawPosition.z());
451
452 TEllipse* maxRad2 =
m_shapeCreator.createEllipse( maxRadiusInPhiPosition2, 0.05, std::atan(0.05 / Rho) * phiScale );
453 maxRad2->SetLineColor( color_hit );
454 maxRad2->SetFillColor( color_hit );
455
456
457 TObject* maxRad2Obj = maxRad2;
459}
l
Printing final latex table to .tex output file.