]>
Commit | Line | Data |
---|---|---|
d810d0de | 1 | // $Id$ |
2 | // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007 | |
4673ff03 | 3 | |
d810d0de | 4 | /************************************************************************** |
5 | * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. * | |
6 | * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for * | |
51346b82 | 7 | * full copyright notice. * |
d810d0de | 8 | **************************************************************************/ |
9 | ||
10 | #include "AliEveJetPlane.h" | |
a15e6d7d | 11 | |
12 | #include <TEveTrans.h> | |
2ea57cb0 | 13 | #include <TEveArrow.h> |
a15e6d7d | 14 | |
4673ff03 | 15 | #include <TBuffer3D.h> |
16 | #include <TBuffer3DTypes.h> | |
17 | #include <TVirtualPad.h> | |
18 | #include <TVirtualViewer3D.h> | |
19 | ||
57ffa5fb | 20 | //______________________________________________________________________________ |
4673ff03 | 21 | // |
a97abca8 | 22 | // Show jets and tracks in eta-phi plane. |
a15e6d7d | 23 | // |
24 | // | |
4673ff03 | 25 | |
a97abca8 | 26 | ClassImp(AliEveJetPlane) |
4673ff03 | 27 | |
d810d0de | 28 | Bool_t AliEveJetPlane::fgOneMomentumXYZ = kFALSE; |
29 | Bool_t AliEveJetPlane::fgOneMomentumPhiTheta = kFALSE; | |
a97abca8 | 30 | Bool_t AliEveJetPlane::fgOneEta = kFALSE; |
31 | Bool_t AliEveJetPlane::fgOneE = kFALSE; | |
32 | Bool_t AliEveJetPlane::fgOneChgMass = kFALSE; | |
4673ff03 | 33 | |
34 | ||
d810d0de | 35 | AliEveJetPlane::AliEveJetPlane(Int_t iev) : |
36 | TEveElementList(Form("AliEveJetPlane %i",iev), Form("%i",iev)), | |
4673ff03 | 37 | |
38 | fMinEta (-1.5 ), | |
39 | fMaxEta ( 1.5 ), | |
2ea57cb0 | 40 | fMinPhi ( 0.0 ), |
41 | fMaxPhi ( 2.0 * TMath::Pi() ), | |
4673ff03 | 42 | |
43 | fNEtaDiv(30), | |
44 | fNPhiDiv(30), | |
45 | ||
46 | fEtaScale(350/1.5), | |
2ea57cb0 | 47 | fPhiScale(350/(TMath::Pi())), |
4673ff03 | 48 | fEnergyScale(100.0), |
49 | ||
50 | fEnergyColorScale (0.), | |
51 | ||
52 | fGridColor(5), | |
53 | ||
fd31e9de | 54 | fJets(), |
55 | fTracks(), | |
56 | ||
4673ff03 | 57 | fRnrJets (kTRUE), |
58 | fRnrTracks (kTRUE), | |
59 | ||
60 | fOneSelection (kTRUE), | |
61 | fTwoSelection (kFALSE), | |
62 | ||
fd31e9de | 63 | fJet1(0), fJet2(0), fTrack1(0), fTrack2(0), |
64 | ||
4673ff03 | 65 | fSelectionFlag (1) |
66 | { | |
67 | SetMainColorPtr(&fGridColor); | |
a15e6d7d | 68 | InitMainTrans(); |
4673ff03 | 69 | } |
70 | ||
57ffa5fb | 71 | /******************************************************************************/ |
4673ff03 | 72 | |
2ea57cb0 | 73 | void AliEveJetPlane::AddJet(AliAODJet* jet) |
4673ff03 | 74 | { |
a97abca8 | 75 | // Add a jet for display. |
76 | ||
2ea57cb0 | 77 | fJets.push_back(*jet); |
78 | ||
79 | TEveArrow* a = new TEveArrow(); | |
80 | a->SetElementName (Form("Jet %d", fJets.size())); | |
81 | a->SetElementTitle("Tooltip"); | |
82 | a->SetPickable(kTRUE); | |
83 | a->SetMainColor(kOrange); | |
84 | //a->SetTubeR(); | |
85 | //a->SetConeR(); | |
86 | //a->SetConeL(); | |
87 | AddElement(a); | |
4673ff03 | 88 | } |
89 | ||
57ffa5fb | 90 | /******************************************************************************/ |
4673ff03 | 91 | |
2ea57cb0 | 92 | void AliEveJetPlane::AddTrack(AliAODTrack* track) |
4673ff03 | 93 | { |
a97abca8 | 94 | // Add a track for display. |
95 | ||
2ea57cb0 | 96 | fTracks.push_back(*track); |
97 | ||
98 | TEveArrow* a = new TEveArrow(0,0,0.5, 20,20,0); | |
99 | a->SetElementName (Form("Track %d", fTracks.size())); | |
100 | a->SetElementTitle("Tooltip"); | |
101 | a->SetPickable(kTRUE); | |
102 | a->SetMainColor(kOrange); | |
103 | //a->SetTubeR(); | |
104 | //a->SetConeR(); | |
105 | //a->SetConeL(); | |
106 | AddElement(a); | |
4673ff03 | 107 | } |
108 | ||
109 | ||
57ffa5fb | 110 | /******************************************************************************/ |
4673ff03 | 111 | |
d810d0de | 112 | void AliEveJetPlane::ComputeBBox() |
4673ff03 | 113 | { |
a97abca8 | 114 | // Calculate bounding-box. |
115 | ||
4673ff03 | 116 | BBoxInit(); |
117 | BBoxCheckPoint(-350, -350, -20); | |
2ea57cb0 | 118 | BBoxCheckPoint( 350, 350, 20); |
4673ff03 | 119 | } |
120 | ||
d810d0de | 121 | void AliEveJetPlane::Paint(Option_t* /*option*/) |
4673ff03 | 122 | { |
a97abca8 | 123 | // Paint the object. |
124 | ||
4673ff03 | 125 | TBuffer3D buff(TBuffer3DTypes::kGeneric); |
126 | ||
127 | // Section kCore | |
128 | buff.fID = this; | |
68ca2fe7 | 129 | buff.fColor = GetMainColor(); |
130 | buff.fTransparency = GetMainTransparency(); | |
a15e6d7d | 131 | if (HasMainTrans()) RefMainTrans().SetBuffer3D(buff); |
4673ff03 | 132 | buff.SetSectionsValid(TBuffer3D::kCore); |
133 | ||
134 | Int_t reqSections = gPad->GetViewer3D()->AddObject(buff); | |
135 | if (reqSections == TBuffer3D::kNone) { | |
d810d0de | 136 | // printf("AliEveJetPlane::Paint viewer was happy with Core buff3d.\n"); |
4673ff03 | 137 | return; |
138 | } | |
139 | } |