#include <FWPFClusterRPZUtils.h>
Public Member Functions | |
TEveScalableStraightLineSet * | buildRhoPhiClusterLineSet (const reco::PFCluster &, const FWViewContext *, float r) |
TEveScalableStraightLineSet * | buildRhoPhiClusterLineSet (const reco::PFCluster &, const FWViewContext *, float e, float et, float r) |
TEveScalableStraightLineSet * | buildRhoZClusterLineSet (const reco::PFCluster &, const FWViewContext *, float caloTransAngle, float r, float z) |
TEveScalableStraightLineSet * | buildRhoZClusterLineSet (const reco::PFCluster &, const FWViewContext *, float caloTransAngle, float e, float et, float r, float z) |
FWPFClusterRPZUtils () | |
virtual | ~FWPFClusterRPZUtils () |
Private Member Functions | |
FWPFClusterRPZUtils (const FWPFClusterRPZUtils &) | |
const FWPFClusterRPZUtils & | operator= (const FWPFClusterRPZUtils &) |
Definition at line 39 of file FWPFClusterRPZUtils.h.
FWPFClusterRPZUtils::FWPFClusterRPZUtils | ( | ) | [inline] |
Definition at line 43 of file FWPFClusterRPZUtils.h.
{}
virtual FWPFClusterRPZUtils::~FWPFClusterRPZUtils | ( | ) | [inline, virtual] |
Definition at line 44 of file FWPFClusterRPZUtils.h.
{}
FWPFClusterRPZUtils::FWPFClusterRPZUtils | ( | const FWPFClusterRPZUtils & | ) | [private] |
TEveScalableStraightLineSet * FWPFClusterRPZUtils::buildRhoPhiClusterLineSet | ( | const reco::PFCluster & | cluster, |
const FWViewContext * | vc, | ||
float | r | ||
) |
Definition at line 5 of file FWPFClusterRPZUtils.cc.
References FWPFMaths::calculateEt(), reco::PFCluster::energy(), relval_parameters_module::energy, reco::CaloCluster::x(), reco::CaloCluster::y(), and reco::CaloCluster::z().
Referenced by FWPFBlockProxyBuilder::setupClusterElement(), and FWPFClusterRPZProxyBuilder::sharedBuild().
{ float energy, et; TEveVector centre = TEveVector( cluster.x(), cluster.y(), cluster.z() ); energy = cluster.energy(); et = FWPFMaths::calculateEt( centre, energy ); return buildRhoPhiClusterLineSet( cluster, vc, energy, et, r ); }
TEveScalableStraightLineSet * FWPFClusterRPZUtils::buildRhoPhiClusterLineSet | ( | const reco::PFCluster & | cluster, |
const FWViewContext * | vc, | ||
float | e, | ||
float | et, | ||
float | r | ||
) |
Definition at line 18 of file FWPFClusterRPZUtils.cc.
References funct::cos(), alignCSCRings::e, FWViewContext::getEnergyScale(), FWViewEnergyScale::getPlotEt(), FWViewEnergyScale::getScaleFactor3D(), python::rootplot::utilities::ls(), phi, funct::sin(), findQualityFiles::size, reco::CaloCluster::x(), reco::CaloCluster::y(), and reco::CaloCluster::z().
{ TEveScalableStraightLineSet *ls = new TEveScalableStraightLineSet( "rhophiCluster" ); TEveVector vec; float size = 1.f; // Stored in scale double phi; vec = TEveVector( cluster.x(), cluster.y(), cluster.z() ); phi = vec.Phi(); FWViewEnergyScale *energyScale = vc->getEnergyScale(); ls->SetLineWidth( 4 ); ls->SetScaleCenter( r * cos( phi ), r * sin( phi ), 0 ); ls->AddLine( r * cos( phi ), r * sin( phi ), 0, ( r + size ) * cos( phi ), ( r + size ) * sin( phi ), 0 ); ls->SetScale( energyScale->getScaleFactor3D() * ( energyScale->getPlotEt() ? et : e ) ); return ls; }
TEveScalableStraightLineSet * FWPFClusterRPZUtils::buildRhoZClusterLineSet | ( | const reco::PFCluster & | cluster, |
const FWViewContext * | vc, | ||
float | caloTransAngle, | ||
float | e, | ||
float | et, | ||
float | r, | ||
float | z | ||
) |
Definition at line 55 of file FWPFClusterRPZUtils.cc.
References funct::cos(), alignCSCRings::e, FWViewContext::getEnergyScale(), FWViewEnergyScale::getPlotEt(), FWViewEnergyScale::getScaleFactor3D(), python::rootplot::utilities::ls(), phi, Pi, funct::sin(), findQualityFiles::size, funct::tan(), theta(), reco::CaloCluster::x(), reco::CaloCluster::y(), and reco::CaloCluster::z().
{ float size = 1.f; // Stored in scale float offr = 4; float ecalZ = z + offr / tan( caloTransAngle ); double theta, phi; double rad(0); TEveVector vec; TEveScalableStraightLineSet *ls = new TEveScalableStraightLineSet( "rhoZCluster" ); vec = TEveVector( cluster.x(), cluster.y(), cluster.z() ); phi = vec.Phi(); theta = vec.Theta(); FWViewEnergyScale *caloScale = vc->getEnergyScale(); ls->SetLineWidth( 4 ); if ( theta < caloTransAngle || TMath::Pi() - theta < caloTransAngle ) rad = ecalZ / fabs( cos( theta ) ); else rad = r / sin( theta ); ls->SetScaleCenter( 0., ( phi > 0 ? rad * fabs( sin( theta ) ) : -rad * fabs( sin( theta ) ) ), rad * cos( theta ) ); ls->AddLine( 0., ( phi > 0 ? rad * fabs( sin( theta ) ) : -rad * fabs( sin( theta ) ) ), rad * cos( theta ), 0., ( phi > 0 ? ( rad + size ) * fabs( sin ( theta ) ) : -( rad + size ) * fabs( sin( theta) ) ), ( rad + size ) * cos( theta ) ); ls->SetScale( caloScale->getScaleFactor3D() * ( caloScale->getPlotEt() ? et : e ) ); return ls; }
TEveScalableStraightLineSet * FWPFClusterRPZUtils::buildRhoZClusterLineSet | ( | const reco::PFCluster & | cluster, |
const FWViewContext * | vc, | ||
float | caloTransAngle, | ||
float | r, | ||
float | z | ||
) |
Definition at line 41 of file FWPFClusterRPZUtils.cc.
References FWPFMaths::calculateEt(), reco::PFCluster::energy(), relval_parameters_module::energy, reco::CaloCluster::x(), reco::CaloCluster::y(), and reco::CaloCluster::z().
Referenced by FWPFClusterRPZProxyBuilder::build(), and FWPFBlockProxyBuilder::setupClusterElement().
{ float energy, et; TEveVector centre = TEveVector( cluster.x(), cluster.y(), cluster.z() ); energy = cluster.energy(); et = FWPFMaths::calculateEt( centre, energy ); return buildRhoZClusterLineSet( cluster, vc, caloTransAngle, energy, et, r, z ); }
const FWPFClusterRPZUtils& FWPFClusterRPZUtils::operator= | ( | const FWPFClusterRPZUtils & | ) | [private] |