{ float zer_dim[10]; float zer_ypos[7] = { 0. , 0. , 0. , 0. , 0. , 0. , 0. }; float zer_zpos[7] = { 517.85 , 509.85 , 501.65 , 493.85 , 485.65 , 457.85 , 449.65 }; float zer_dphi[7] = { 20. , 15. , 12. , 10. , 8.57 , 7.5 , 6.67 }; float zer_rmin[7] = { 11.02 , 17.66 , 23.52 , 30.10 , 36.40 , 41.07 , 49.14 }; float zer_dr[7] = { 7.05 , 6.39 , 7.15 , 7.04 , 7.23 , 9.09 , 10.03 }; float pos_zbox[3] = { 0.0 , 0.0 , 481.0}; int zer_medium = 2; zer_dim[3] = 2. ; zer_dim[4] = 0. ; zer_dim[7] = 2. ; for(int j=0;j<2;j++) { zer_dim[0] = 0. + j*180.; zer_dim[1] = 180.; for(int i=0;i<7;i++) { zer_dim[2] = 180./zer_dphi[i]; zer_dim[5] = zer_rmin[i]; zer_dim[6] = zer_rmin[i] + zer_dr[i]; zer_dim[8] = zer_rmin[i]; zer_dim[9] = zer_rmin[i] + zer_dr[i]; TGeoPcon *pgonzer = new TGeoPgon(zer_dim[0] , zer_dim[1] , int(zer_dim[2]) , int(zer_dim[3]) ); pgonzer->DefineSection( 0 , zer_dim[4] , zer_dim[5] , zer_dim[6] ); pgonzer->DefineSection( 1 , zer_dim[7] , zer_dim[8] , zer_dim[9] ); TGeoVolume *zere = new TGeoVolume("ZERE", pgonzer , medium[zer_medium-1]); gGeoManager->SetVolumeAttribute("ZERE","seen",1); gGeoManager->SetVolumeAttribute("ZERE","colo",15); if(j==0) { ZBOX->AddNode(zere,i*10+j,new TGeoTranslation( 0. , zer_ypos[i] , zer_zpos[i]-pos_zbox[2] )); } if(j==1) { ZBOX->AddNode(zere,i*10+j,new TGeoTranslation( 0. , zer_ypos[i] , zer_zpos[i]-pos_zbox[2] )); } } } }