10const char *esd_geom_file_name =
"http://root.cern/files/alice_ESDgeometry.root";
19 using namespace TMath;
39 axis->SetLineColor(
kGreen);
40 axis->SetLineWidth(2);
43 tracksXYZ->SetLineColor(
kRed);
44 tracksXYZ->SetLineWidth(2);
47 tracksEtaPhi->SetLineColor(
kYellow);
48 tracksEtaPhi->SetLineWidth(2);
51 tracksSeedEtaPhi->SetLineColor(
kBlue);
52 tracksSeedEtaPhi->SetLineWidth(2);
58 for (
Int_t track = 0; track < nTracks; track++) {
60 Float_t trackX =
r.Uniform(-250.0, 250.0);
61 Float_t trackY =
r.Uniform(-250.0, 250.0);
62 Float_t trackZ =
r.Uniform(-250.0, 250.0);
63 Float_t trackR =
Sqrt(trackX * trackX + trackY * trackY + trackZ * trackZ);
65 TEveVector trackDir(trackX / trackR, trackY / trackR, trackZ / trackR);
67 tracksXYZ->AddLine(0., 0., 0., trackEnd.
fX, trackEnd.
fY, trackEnd.
fZ);
74 for (
Int_t track = 0; track < nTracks; track++) {
76 Float_t trackEta =
r.Uniform(-0.9, 0.9);
79 TEveVector trackDir(GetTEveVector(trackEta, trackPhi));
82 if (trackEta > coneRadius || trackEta < -coneRadius)
83 tracksEtaPhi->AddLine(0., 0., 0., trackEnd.
fX, trackEnd.
fY, trackEnd.
fZ);
85 tracksSeedEtaPhi->AddLine(0., 0., 0., trackEnd.
fX, trackEnd.
fY, trackEnd.
fZ);
92 for (
Int_t iter = 0; iter < nCones; ++iter) {
95 Float_t coneEta =
r.Uniform(-0.9, 0.9);
102 TEveVector coneAxis(GetTEveVector(coneEta, conePhi));
105 axis->AddLine(0., 0., 0., coneAxis.fX, coneAxis.fY, coneAxis.fZ);
109 jetCone->SetPickable(
kTRUE);
110 jetCone->SetCylinder(250., 250.);
111 if ((jetCone->AddCone(coneEta, conePhi, coneRadius)) != -1)
112 gEve->AddElement(jetCone);
118 gEve->AddElement(axis);
122 gEve->AddElement(tracksSeedEtaPhi);
123 gEve->AddElement(tracksEtaPhi);
136 using namespace TMath;
157 gEve->AddGlobalElement(gsre);
int Int_t
Signed integer 4 bytes (int).
double Double_t
Double 8 bytes.
float Float_t
Float 4 bytes (float).
TEveVectorT< Float_t > TEveVector
TObject * Get(const char *namecycle) override
Return pointer to object identified by namecycle.
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
TEveElement * FindChild(const TString &name, const TClass *cls=nullptr)
Find the first child with given name.
virtual Bool_t SetRnrState(Bool_t rnr)
Set render state of this element and of its children to the same value.
Wrapper for TGeoShape with absolute positioning and color attributes allowing display of extracted TG...
static TEveGeoShape * ImportShapeExtract(TEveGeoShapeExtract *gse, TEveElement *parent=nullptr)
Import a shape extract 'gse' under element 'parent'.
Draws a jet cone with leading particle is specified in (eta,phi) and cone radius is given.
static TEveManager * Create(Bool_t map_window=kTRUE, Option_t *opt="FIV")
If global TEveManager* gEve is not set initialize it.
A generic, speed-optimised mapping from value to RGBA color supporting different wrapping and range t...
Set of straight lines with optional markers along the lines.
A file, usually with extension .root, that stores data and code in the form of serialized objects in ...
static TFile * Open(const char *name, Option_t *option="", const char *ftitle="", Int_t compress=ROOT::RCompressionSetting::EDefaults::kUseCompiledDefault, Int_t netopt=0)
Create / open a file.
static Bool_t SetCacheFileDir(std::string_view cacheDir, Bool_t operateDisconnected=kTRUE, Bool_t forceCacheread=kFALSE)
Sets the directory where to locally stage/cache remote files.
void Close(Option_t *option="") override
Close a file.
This is the base class for the ROOT Random number generators.
Double_t CosH(Double_t)
Returns the hyperbolic cosine of x.
Double_t TanH(Double_t)
Returns the hyperbolic tangent of x.
Double_t Sqrt(Double_t x)
Returns the square root of x.
Double_t Cos(Double_t)
Returns the cosine of an angle of x radians.
Double_t Sin(Double_t)
Returns the sine of an angle of x radians.
constexpr Double_t TwoPi()
BVH_ALWAYS_INLINE T length(const Vec< T, N > &v)