|
|
Go to the documentation of this file.
17 #include "TEveJetCone.h"
18 #include "TEveGeoNode.h"
19 #include "TEveGeoShape.h"
20 #include "TEveScalableStraightLineSet.h"
21 #include "TEveTrack.h"
70 TEveScalableStraightLineSet* marker =
new TEveScalableStraightLineSet(
"energy");
89 double min_phi = phiRange.first -
M_PI / 36 / 2;
90 double max_phi = phiRange.second +
M_PI / 36 / 2;
91 TEveGeoManagerHolder gmgr(TEveGeoShape::GetGeoMangeur());
92 TGeoBBox* sc_box =
new TGeoTubeSeg(ecalR - 1, ecalR + 1, 1, min_phi * 180 /
M_PI, max_phi * 180 /
M_PI);
94 shape->SetPickable(kTRUE);
97 marker->SetScaleCenter(ecalR *
cos(
phi), ecalR *
sin(
phi), 0);
100 marker->SetLineWidth(4);
112 cone->SetApex(TEveVector(
bs->x0(),
bs->y0(),
bs->z0()));
115 cone->SetFillColor(
dp.color());
116 cone->SetLineColor(
dp.color());
118 cone->SetMainTransparency(
TMath::Min(100, 80 +
dp.transparency() / 5));
125 TEveTrack*
track(
nullptr);
126 if (
i->isAvailable()) {
148 TEveElement* iCompound,
157 typedef std::vector<fireworks::scaleMarker> Lines_t;
161 if (vc == (*i).m_vc) {
164 TEveProjected*
proj = *(*i).m_ls->BeginProjecteds();
165 proj->UpdateProjection();
Base class for all types of Jets.
void buildBaseTau(const reco::BaseTau &iTau, const reco::Jet *iJet, TEveElement *comp, FWViewType::EType type, const FWViewContext *vc)
FWProxyBuilderConfiguration * getConfig() const
void cleanLocal() override
FWBeamSpot * getBeamSpot() const
void localModelChanges(const FWModelId &iId, TEveElement *iCompound, FWViewType::EType viewType, const FWViewContext *vc) override
static bool isProjected(int)
static const std::string kTauApexBeamSpot("Place Apex In BeamSpot")
TEveGeoShape * getShape(const char *name, TGeoBBox *shape, Color_t color)
const FWDisplayProperties & defaultDisplayProperties() const
Sin< T >::type sin(const T &t)
static float caloZ2(bool offset=true)
Cos< T >::type cos(const T &t)
void voteMaxEtAndEnergy(float Et, float energy) const
void addConstituentTracks(const reco::BaseTau &tau, class TEveElement *product)
void increaseComponentTransparency(unsigned int index, TEveElement *holder, const std::string &name, Char_t transpOffset)
double theta() const final
momentum polar angle
Geom::Theta< T > theta() const
void addLeadTrack(const reco::BaseTau &tau, class TEveElement *product)
void addRhoZEnergyProjection(FWProxyBuilderBase *, TEveElement *, double r_ecal, double z_ecal, double theta_min, double theta_max, double phi)
FWGenericParameter< T > * assertParam(const std::string &name, T def)
~FWTauProxyBuilderBase() override
static float caloR2(bool offset=true)
TEveJetCone * makeEveJetCone(const reco::Jet &iData, const fireworks::Context &context)
TEveTrack * prepareTrack(const reco::Track &track, TEveTrackPropagator *propagator, const std::vector< TEveVector > &extraRefPoints=std::vector< TEveVector >())
void setupAddElement(TEveElement *el, TEveElement *parent, bool set_color=true) const
std::vector< fireworks::scaleMarker > m_lines
static float caloTransAngle()
std::vector< double > m_phis
const FWEventItem * item() const
float getScaleFactor3D() const
double et() const final
transverse energy
static float caloZ1(bool offset=true)
double phi() const final
momentum azimuthal angle
double energy() const final
energy
const fireworks::Context & context() const
void setItem(const FWEventItem *iItem) override
virtual void setItem(const FWEventItem *iItem)
FWViewEnergyScale * getEnergyScale() const
static float caloR1(bool offset=true)
void scaleProduct(TEveElementList *parent, FWViewType::EType, const FWViewContext *vc) override
std::pair< double, double > getPhiRange(const std::vector< double > &phis, double phi)