//
// Builds a TNode geometry for event display
//
- TNode *node, *top;
+ TNode *node, *subnode, *top;
- const int kColorRICH = kGreen;
+ const int kColorRICH = kRed;
//
top=gAlice->GetGeometry()->GetNode("alice");
-
+
+ AliRICH *pRICH = (AliRICH *) gAlice->GetDetector("RICH");
+ AliSegmentation* segmentation;
+ AliRICHChamber* iChamber;
+
+ iChamber = &(pRICH->Chamber(0));
+ segmentation=iChamber->GetSegmentationModel(0);
new TBRIK("S_RICH","S_RICH","void",71.09999,11.5,73.15);
+
+ //if (segmentation->GetPadPlaneWidth())
+ //new TBRIK("PHOTO","PHOTO","void",segmentation->GetPadPlaneWidth(),.1,segmentation->GetPadPlaneLength());
top->cd();
Float_t pos1[3]={0,471.8999,165.2599};
//Chamber(0).SetChamberTransform(pos1[0],pos1[1],pos1[2],
new TRotMatrix("rot993","rot993",90,0,70.69,90,19.30999,-90);
node = new TNode("RICH1","RICH1","S_RICH",pos1[0],pos1[1],pos1[2],"rot993");
-
-
node->SetLineColor(kColorRICH);
fNodes->Add(node);
+
+
top->cd();
Float_t pos2[3]={171,470,0};
//Chamber(1).SetChamberTransform(pos2[0],pos2[1],pos2[2],
new TRotMatrix("rot994","rot994",90,-20,90,70,0,0);
node = new TNode("RICH2","RICH2","S_RICH",pos2[0],pos2[1],pos2[2],"rot994");
-
-
node->SetLineColor(kColorRICH);
fNodes->Add(node);
+
+
top->cd();
Float_t pos3[3]={0,500,0};
//Chamber(2).SetChamberTransform(pos3[0],pos3[1],pos3[2],
new TRotMatrix("rot995","rot995",90,0,90,90,0,0);
node = new TNode("RICH3","RICH3","S_RICH",pos3[0],pos3[1],pos3[2],"rot995");
-
-
node->SetLineColor(kColorRICH);
+ //subnode = new TNode("PHOTO1","PHOTO1","PHOTO",pos3[0],pos3[1],pos3[2],"rot995");
+ //subnode->SetLineColor(kGreen);
+ //fNodes->Add(subnode);
fNodes->Add(node);
+
top->cd();
Float_t pos4[3]={-171,470,0};
//Chamber(3).SetChamberTransform(pos4[0],pos4[1],pos4[2],
new TRotMatrix("rot996","rot996",90,20,90,110,0,0);
node = new TNode("RICH4","RICH4","S_RICH",pos4[0],pos4[1],pos4[2],"rot996");
-
-
node->SetLineColor(kColorRICH);
fNodes->Add(node);
+
+
top->cd();
Float_t pos5[3]={161.3999,443.3999,-165.3};
//Chamber(4).SetChamberTransform(pos5[0],pos5[1],pos5[2],
new TRotMatrix("rot997","rot997",90,340,108.1999,70,18.2,70);
node = new TNode("RICH5","RICH5","S_RICH",pos5[0],pos5[1],pos5[2],"rot997");
-
node->SetLineColor(kColorRICH);
fNodes->Add(node);
+
+
top->cd();
Float_t pos6[3]={0., 471.9, -165.3,};
//Chamber(5).SetChamberTransform(pos6[0],pos6[1],pos6[2],
new TRotMatrix("rot998","rot998",90,0,109.3099,90,19.30999,90);
node = new TNode("RICH6","RICH6","S_RICH",pos6[0],pos6[1],pos6[2],"rot998");
-
-
node->SetLineColor(kColorRICH);
fNodes->Add(node);
+
+
top->cd();
Float_t pos7[3]={-161.399,443.3999,-165.3};
//Chamber(6).SetChamberTransform(pos7[0],pos7[1],pos7[2],
Float_t oqua_thickness = .5;
//CsI dimensions
- Float_t csi_length = 160*.8 + 2.6;
- Float_t csi_width = 144*.84 + 2*2.6;
-
- Int_t *idtmed = fIdtmed->GetArray()-999;
+ //Float_t csi_length = 160*.8 + 2.6;
+ //Float_t csi_width = 144*.84 + 2*2.6;
+
+ Float_t deadzone=2.6;
+
+ Float_t csi_length = segmentation->Npx()*segmentation->Dpx() + deadzone;
+ Float_t csi_width = segmentation->Npy()*segmentation->Dpy() + 2*deadzone;
+
+
+ Int_t *idtmed = fIdtmed->GetArray()-999;
Int_t i;
Float_t zs;