3 Reve::QuadSet* reve_quad_test(Float_t x=0, Float_t y=0, Float_t z=0,
8 gStyle->SetPalette(1, 0);
10 Reve::RGBAPalette* pal = new Reve::RGBAPalette(0, 130);
12 Reve::QuadSet* q = new Reve::QuadSet("RectangleXY");
14 q->Reset(Reve::QuadSet::QT_RectangleXY, kFALSE, 32);
15 for (Int_t i=0; i<num; ++i) {
16 q->AddQuad(r.Uniform(-10, 10), r.Uniform(-10, 10), r.Uniform(-10, 10),
17 r.Uniform(0.2, 1), r.Uniform(0.2, 1));
18 q->QuadValue(r.Uniform(0, 130));
22 Reve::ZTrans& t = q->RefHMTrans();
25 gReve->AddRenderElement(q);
31 Reve::QuadSet* reve_quad_test_emc(Float_t x=0, Float_t y=0, Float_t z=0,
36 gStyle->SetPalette(1, 0);
38 Reve::QuadSet* q = new Reve::QuadSet("EMC Supermodule");
40 q->Reset(Reve::QuadSet::QT_RectangleXZFixedDimY, kFALSE, 32);
44 for (Int_t i=0; i<num; ++i) {
45 q->AddQuad(r.Uniform(-100, 100), r.Uniform(-100, 100));
46 q->QuadValue(r.Uniform(0, 130));
47 q->AddId(new TNamed(Form("Cell %d", i)));
51 Reve::ZTrans& t = q->RefHMTrans();
54 gReve->AddRenderElement(q);
60 Reve::QuadSet* reve_quad_test_circ()
64 gStyle->SetPalette(1, 0);
66 Reve::QuadSet* q = new Reve::QuadSet("Pepe");
67 q->Reset(Reve::QuadSet::QT_RectangleXY, kFALSE, 32);
69 Float_t R = 10, dW = 1, dH = .5;
70 for (Int_t i=0; i<12; ++i) {
71 Float_t x = R * TMath::Cos(TMath::TwoPi()*i/12);
72 Float_t y = R * TMath::Sin(TMath::TwoPi()*i/12);
73 q->AddQuad(x-dW, y-dH, r.Uniform(-1, 1), 2*dW, 2*dH);
74 q->QuadValue(r.Uniform(0, 130));
78 Reve::ZTrans& t = q->RefHMTrans();
81 gReve->AddRenderElement(q);
87 Reve::QuadSet* reve_quad_test_hex(Float_t x=0, Float_t y=0, Float_t z=0,
92 gStyle->SetPalette(1, 0);
95 Reve::QuadSet* q = new Reve::QuadSet("HexagonXY");
96 q->Reset(Reve::QuadSet::QT_HexagonXY, kFALSE, 32);
97 for (Int_t i=0; i<num; ++i) {
98 q->AddHexagon(r.Uniform(-10, 10), r.Uniform(-10, 10), r.Uniform(-10, 10),
100 q->QuadValue(r.Uniform(0, 120));
104 Reve::ZTrans& t = q->RefHMTrans();
107 gReve->AddRenderElement(q);
112 Reve::QuadSet* q = new Reve::QuadSet("HexagonYX");
113 q->Reset(Reve::QuadSet::QT_HexagonYX, kFALSE, 32);
114 for (Int_t i=0; i<num; ++i) {
115 q->AddHexagon(r.Uniform(-10, 10), r.Uniform(-10, 10), r.Uniform(-10, 10),
117 q->QuadValue(r.Uniform(0, 120));
121 Reve::ZTrans& t = q->RefHMTrans();
124 gReve->AddRenderElement(q);
131 Reve::QuadSet* reve_quad_test_hexid(Float_t x=0, Float_t y=0, Float_t z=0,
132 Int_t num=100, Bool_t register=kTRUE)
136 gStyle->SetPalette(1, 0);
139 Reve::QuadSet* q = new Reve::QuadSet("HexagonXY");
141 q->Reset(Reve::QuadSet::QT_HexagonXY, kFALSE, 32);
142 for (Int_t i=0; i<num; ++i) {
143 q->AddHexagon(r.Uniform(-10, 10), r.Uniform(-10, 10), r.Uniform(-10, 10),
145 q->QuadValue(r.Uniform(0, 120));
146 q->QuadId(new TNamed(Form("Quad with idx=%d", i), "This title is not confusing."));
150 Reve::ZTrans& t = q->RefHMTrans();
155 gReve->AddRenderElement(q);
163 void reve_quad_test_hierarchy(Int_t n=4)
165 gStyle->SetPalette(1, 0);
167 Reve::RGBAPalette* pal = new Reve::RGBAPalette(20, 100);
168 pal->SetLimits(0, 120);
170 Reve::FrameBox* box = new Reve::FrameBox();
171 box->SetAABox(-10, -10, -10, 20, 20, 20);
172 box->SetFrameColor((Color_t) 33);
174 Reve::RenderElementList* l = new Reve::RenderElementList("Parent/Dir");
175 l->SetTitle("Tooltip");
176 // l->SetMainColor((Color_t)3);
177 gReve->AddRenderElement(l);
179 // PMD: obtain digit-tree from run-loader, loop over entries.
181 for (Int_t i=0; i<n; ++i)
183 Reve::QuadSet* qs = reve_quad_test_hexid(0, 0, 50*i, 50, kFALSE);
184 // PMD: loop over clones-array, create hexagons above threshold.
187 gReve->AddRenderElement(l, qs);