25 #include "TEveArrow.h"
26 #include "TEveScalableStraightLineSet.h"
37 class Arrow :
public TEveArrow {
43 Arrow(Float_t
x, Float_t
y, Float_t
z, Float_t xo, Float_t yo, Float_t zo = 0)
47 static float maxW = 3;
97 if (vc == (*i)->m_vc) {
98 (*i)->setScale(caloScale);
105 TEveElement& oItemHolder,
119 r0 *
sin(theta) *
cos(phi),
120 r0 *
sin(theta) *
sin(phi),
125 arrow->SetConeL(0.15);
126 arrow->SetConeR(0.06);
static float caloTransEta()
const fireworks::Context & context() const
float getScaleFactor3D() const
#define REGISTER_PROXYBUILDER_METHODS()
#define REGISTER_FWPROXYBUILDER(_name_, _type_, _purpose_, _view_)
~FWMET3DProxyBuilder() override
void scaleProduct(TEveElementList *parent, FWViewType::EType, const FWViewContext *vc) override
void voteMaxEtAndEnergy(float Et, float energy) const
void setupAddElement(TEveElement *el, TEveElement *parent, bool set_color=true) const
Sin< T >::type sin(const T &t)
FWViewEnergyScale * getEnergyScale() const
Geom::Theta< T > theta() const
static const int kAll3DBits
void setScale(FWViewEnergyScale *caloScale)
double theta() const final
momentum polar angle
std::vector< Arrow * > m_arrows
Cos< T >::type cos(const T &t)
static float caloR1(bool offset=true)
const FWMET3DProxyBuilder & operator=(const FWMET3DProxyBuilder &)=delete
Arrow(Float_t x, Float_t y, Float_t z, Float_t xo, Float_t yo, Float_t zo=0)
void cleanLocal() override
double et() const final
transverse energy
static float caloZ1(bool offset=true)
bool havePerViewProduct(FWViewType::EType) const override
const FWViewContext * m_vc
double phi() const final
momentum azimuthal angle
double energy() const final
energy
double eta() const final
momentum pseudorapidity