south_gate.C

Go to the documentation of this file.
00001 #include "TGeoManager.h"
00002    
00003 void south_gate() 
00004 { 
00005   // Drawing a famous Korean gate, the South gate, called Namdeamoon in Korean, using ROOT geometry class.
00006   // Name: south_gate.C
00007   // Author: Lan Hee Yang(yangd5d5@hotmail.com), Dept. of Physics, Univ. of Seoul
00008   // Reviewed by Sunman Kim (sunman98@hanmail.net)
00009   // Supervisor: Prof. Inkyu Park (icpark@physics.uos.ac.kr)
00010   // 
00011   // How to run: .x south_gate.C in ROOT terminal, then use OpenGL
00012   //
00013   // This macro was created for the evaluation of Computational Physics course in 2006.
00014   // We thank to Prof. Inkyu Park for his special lecture on ROOT and to all of ROOT team
00015   //
00016 
00017   TGeoManager *geom=new TGeoManager("geom","My first 3D geometry");
00018 
00019 
00020   TGeoMaterial *vacuum=new TGeoMaterial("vacuum",0,0,0);//a,z,rho
00021   TGeoMaterial *Fe=new TGeoMaterial("Fe",55.845,26,7.87);
00022 
00023   //Creat media
00024 
00025   TGeoMedium *Air  = new TGeoMedium("Vacuum",0,vacuum);
00026   TGeoMedium *Iron = new TGeoMedium("Iron",1,Fe);
00027 
00028   //Creat volume
00029 
00030   TGeoVolume *top = geom->MakeBox("top",Air,1000,1000,1000);
00031   geom->SetTopVolume(top);
00032   geom->SetTopVisible(0);
00033   // If you want to see the boundary, please input the number, 1 instead of 0.
00034   // Like this, geom->SetTopVisible(1); 
00035 
00036 
00037 //base
00038 
00039 char nBlocks[100];
00040 int i=1;
00041 int N = 0;
00042 int f=0;
00043 int di[2]; di[0] = 0; di[1] = 30;
00044 TGeoVolume *mBlock;
00045 
00046 while (f<11){
00047 while (i<14){
00048    if (i==6 && f<8){
00049       i = i+3;
00050    }
00051 
00052    sprintf(nBlocks,"f%d_bg%d",f,N++);
00053    mBlock = geom->MakeBox(nBlocks, Iron, 29,149,9);
00054    mBlock->SetLineColor(20);
00055    if (f<8){
00056    if (i<=5 && f<8){
00057       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-120-((i-1)*60)-di[f%2],5,5+(20*f)));
00058    } else if (i>5 && f<8){
00059       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(120+((i-9)*60)  +di[f%2],5,5+(20*f)));
00060    }
00061    } else {
00062       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-420+(i*60)-di[f%2],5,5+(20*f)));
00063    }
00064    i++;
00065    if (i>=14 && f>=8 && f%2 == 1){
00066       sprintf(nBlocks,"f%d_bg%d",f,N++);
00067       mBlock = geom->MakeBox(nBlocks, Iron, 29,149,9);
00068       mBlock->SetLineColor(20);
00069       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-420+(i*60)-di[f%2],5,5+(20*f)));
00070    i++;
00071    }
00072    if (f%2 ==0){
00073       sprintf(nBlocks,"f%d_bg%d",f,N++);
00074       mBlock = geom->MakeBox(nBlocks, Iron, 14.5,149,9);
00075       mBlock->SetLineColor(20);
00076       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-405,5,5+(20*f)));
00077       sprintf(nBlocks,"f%d_bg%d",f,N++);
00078       mBlock = geom->MakeBox(nBlocks, Iron, 14.5,149,9);
00079       mBlock->SetLineColor(20);
00080       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(405,5,5+(20*f)));
00081    } else if (f<5){
00082       sprintf(nBlocks,"f%d_bg%d",f,N++);
00083       mBlock = geom->MakeBox(nBlocks, Iron, 14.5,149,9);
00084       mBlock->SetLineColor(20);
00085       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-105,5,5+(20*f)));
00086       sprintf(nBlocks,"f%d_bg%d",f,N++);
00087       mBlock = geom->MakeBox(nBlocks, Iron, 14.5,149,9);
00088       mBlock->SetLineColor(20);
00089       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(105,5,5+(20*f)));
00090 
00091    } 
00092 }
00093       sprintf(nBlocks,"f%d_bg%d",8,N++);
00094       mBlock = geom->MakeBox(nBlocks, Iron, 40,149,9);
00095       mBlock->SetLineColor(20);
00096       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-80,5,145));
00097       sprintf(nBlocks,"f%d_bg%d",8,N++);
00098       mBlock = geom->MakeBox(nBlocks, Iron, 40,149,9);
00099       mBlock->SetLineColor(20);
00100       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(80,5,145));
00101 
00102       sprintf(nBlocks,"f%d_bg%d",7,N++);
00103       mBlock = geom->MakeBox(nBlocks, Iron, 15,149,9);
00104       mBlock->SetLineColor(20);
00105       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-75,5,125));
00106       sprintf(nBlocks,"f%d_bg%d",7,N++);
00107       mBlock = geom->MakeBox(nBlocks, Iron, 15,149,9);
00108       mBlock->SetLineColor(20);
00109       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(75,5,125));
00110 
00111       sprintf(nBlocks,"f%d_bg%d",6,N++);
00112       mBlock = geom->MakeBox(nBlocks, Iron, 24,149,9);
00113       mBlock->SetLineColor(20);
00114       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-95,5,105));
00115       sprintf(nBlocks,"f%d_bg%d",6,N++);
00116       mBlock = geom->MakeBox(nBlocks, Iron, 24,149,9);
00117       mBlock->SetLineColor(20);
00118       top->AddNodeOverlap(mBlock,1,new TGeoTranslation(95,5,105));
00119 
00120 
00121 
00122 i=1;f++;
00123    
00124 }
00125    
00126 
00127 
00128 
00129 //wall
00130 
00131 f=0;
00132 while (f<5){
00133 i=0;
00134 while (i<65){
00135    sprintf(nBlocks,"f%d_bg%d",f,N++);
00136    mBlock = geom->MakeBox(nBlocks, Iron, 5.8,3,3.8);
00137    mBlock->SetLineColor(25);
00138    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-384+(i*12),137,218+(f*8)));
00139 i++;
00140 
00141 }
00142 f++;
00143 }
00144 
00145 
00146 
00147 f=0;
00148 while (f<5){
00149 i=0;
00150 while (i<65){
00151    sprintf(nBlocks,"f%d_bg%d",f,N++);
00152    mBlock = geom->MakeBox(nBlocks, Iron, 5.8,3,3.8);
00153    mBlock->SetLineColor(25);
00154    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-384+(i*12),-137,218+(f*8)));
00155 i++;
00156 
00157 }
00158 f++;
00159 }
00160 
00161 
00162 
00163 
00164 
00165 f=0;
00166 while (f<7){
00167 i=0;
00168 while (i<22){
00169    sprintf(nBlocks,"f%d_bg%d",f,N++);
00170    mBlock = geom->MakeBox(nBlocks, Iron, 3,5.8,3.8);
00171    mBlock->SetLineColor(25);
00172    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-384,-126+(i*12),218+(f*8)));
00173 i++;
00174 
00175 }
00176 f++;
00177 }
00178 
00179 
00180 
00181 f=0;
00182 while (f<7){
00183 i=0;
00184 while (i<22){
00185    sprintf(nBlocks,"f%d_bg%d",f,N++);
00186    mBlock = geom->MakeBox(nBlocks, Iron, 3,5.8,3.8);
00187    mBlock->SetLineColor(25);
00188    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(384,-126+(i*12),218+(f*8)));
00189 i++;
00190 
00191 }
00192 f++;
00193 }
00194 
00195 
00196 // arch
00197 
00198 
00199 int k;
00200 k=0; i=0;
00201 
00202 while (i<5){      
00203 while(k<10){
00204    sprintf(nBlocks,"ab%d",N++);
00205    mBlock = geom->MakeTubs(nBlocks,Iron, 70,89,14, (i*36)+0.5, (i+1)*36-0.5);
00206    mBlock->SetLineColor(20);   
00207    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(0,-130+(k*30),70, new TGeoRotation("r1",0,90,0)));
00208    k++;
00209 }
00210    i++; k=0;
00211 }
00212 
00213    sprintf(nBlocks,"ab%d",N++);
00214    mBlock = geom->MakeBox(nBlocks, Iron, 9,149,17);
00215    mBlock->SetLineColor(20);   
00216    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(80,5,14));
00217    sprintf(nBlocks,"ab%d",N++);
00218    mBlock = geom->MakeBox(nBlocks, Iron, 9,149,18);
00219    mBlock->SetLineColor(20);   
00220    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(80,5,51));
00221 
00222    sprintf(nBlocks,"ab%d",N++);
00223    mBlock = geom->MakeBox(nBlocks, Iron, 9,149,17);
00224    mBlock->SetLineColor(20);   
00225    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-80,5,14));
00226    sprintf(nBlocks,"ab%d",N++);
00227    mBlock = geom->MakeBox(nBlocks, Iron, 9,149,18);
00228    mBlock->SetLineColor(20);   
00229    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(-80,5,51));
00230 
00231 
00232 
00233 
00234 
00235 //wall's kiwa
00236 
00237 k=0; i=0;
00238 
00239 while (i<5){   
00240 while(k<52){
00241    sprintf(nBlocks,"ab%d",N++);
00242    mBlock = geom->MakeTubs(nBlocks,Iron, 1,3,7, 0, 180);
00243    mBlock->SetLineColor(12);   
00244    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-382+(k*15),137,255, new TGeoRotation("r1",90,90,0)));
00245    k++;
00246 }
00247    i++; k=0;
00248 }
00249 
00250 
00251 
00252 
00253 
00254 k=0; i=0;
00255 
00256 while (i<5){   
00257 while(k<52){
00258    sprintf(nBlocks,"ab%d",N++);
00259    mBlock = geom->MakeTubs(nBlocks,Iron, 2.5,3,7, 0, 180);
00260    mBlock->SetLineColor(12);   
00261    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-382+(k*15),-137,255, new TGeoRotation("r1",90,90,0)));
00262    k++;
00263 }
00264    i++; k=0;
00265 }
00266 
00267 
00268 
00269 k=0; i=0;
00270 
00271 while (i<5){   
00272 while(k<20){
00273    sprintf(nBlocks,"ab%d",N++);
00274    mBlock = geom->MakeTubs(nBlocks,Iron, 2.5,3,6, 0, 180);
00275    mBlock->SetLineColor(12);   
00276    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-382,-123+(k*13),271, new TGeoRotation("r1",0,90,0)));
00277    k++;
00278 }
00279    i++; k=0;
00280 }
00281 
00282 
00283 
00284 
00285 k=0; i=0;
00286 
00287 while (i<5){   
00288 while(k<20){
00289    sprintf(nBlocks,"ab%d",N++);
00290    mBlock = geom->MakeTubs(nBlocks,Iron, 2.5,3,7, 0, 180);
00291    mBlock->SetLineColor(12);   
00292    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(382,-123+(k*13),271, new TGeoRotation("r1",0,90,0)));
00293    k++;
00294 }
00295    i++; k=0;
00296 }
00297 
00298 
00299 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
00300 
00301 
00302 // 1 floor
00303 
00304 
00305 k=0; i=0;
00306 
00307 while (i<5){   
00308 while(k<7){
00309    sprintf(nBlocks,"ab%d",N++);
00310    mBlock = geom->MakeTubs(nBlocks,Iron, 0,5,56, 0, 360);
00311    mBlock->SetLineColor(50);   
00312    
00313    if (k<=2){
00314 
00315    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*100),80,260, new TGeoRotation("r1",0,0,0)));
00316    }else if (k>=4){
00317    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*100),80,260, new TGeoRotation("r1",0,0,0)));
00318    }   
00319 
00320 
00321 k++;
00322 }
00323    i++; k=0;
00324 }
00325 
00326 
00327 
00328 k=0; i=0;
00329 
00330 while (i<5){   
00331 while(k<7){
00332    sprintf(nBlocks,"ab%d",N++);
00333    mBlock = geom->MakeTubs(nBlocks,Iron, 0,5,56, 0, 360);
00334    mBlock->SetLineColor(50);   
00335    
00336    if (k<=2){
00337 
00338    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*100),-80,260, new TGeoRotation("r1",0,0,0)));
00339    }else if (k>=4){
00340    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*100),-80,260, new TGeoRotation("r1",0,0,0)));
00341    }   
00342 
00343 
00344 k++;
00345 }
00346    i++; k=0;
00347 }
00348 
00349 // ||=====||======||=====||=====||=====||=====||
00350 
00351 
00352    sprintf(nBlocks,"ab%d",N++);
00353    mBlock = geom->MakeBox(nBlocks, Iron, 298,78,8);
00354    mBlock->SetLineColor(42);   
00355    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(0,0,300));
00356 
00357 
00358 
00359    sprintf(nBlocks,"ab%d",N++);
00360    mBlock = geom->MakeBox(nBlocks, Iron, 298,78,5);
00361    mBlock->SetLineColor(42);   
00362    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(0,0,320));
00363 
00364 
00365 
00366 //1
00367 k=0; i=0;
00368 
00369 while (i<5){   
00370 while(k<6){
00371    sprintf(nBlocks,"ab%d",N++);
00372    mBlock = geom->MakeBox(nBlocks,Iron,18,10,8);
00373    mBlock->SetLineColor(8);   
00374    {
00375    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-250+(k*100),70,300, new TGeoRotation("r1",0,0,0)));
00376 
00377    }
00378    k++;
00379 }
00380    i++; k=0;
00381 }
00382 
00383 
00384 
00385 
00386 
00387 k=0; i=0;
00388 
00389 while (i<5){   
00390 while(k<6){
00391    sprintf(nBlocks,"ab%d",N++);
00392    mBlock = geom->MakeBox(nBlocks,Iron,18,10,8);
00393    mBlock->SetLineColor(8);   
00394    {
00395    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-250+(k*100),-70,300, new TGeoRotation("r1",0,0,0)));
00396 
00397    }
00398    k++;
00399 }
00400    i++; k=0;
00401 }
00402 
00403 
00404 
00405 
00406    sprintf(nBlocks,"ab%d",N++);
00407    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,8);
00408    mBlock->SetLineColor(8);   
00409    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-290,0,300, new TGeoRotation("r1",90,0,0)));
00410 
00411 
00412 
00413    sprintf(nBlocks,"ab%d",N++);
00414    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,8);
00415    mBlock->SetLineColor(8);   
00416    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(290,0,300, new TGeoRotation("r1",90,0,0)));
00417 
00418 
00419 
00420 
00421 
00422 
00423 //2
00424 k=0; i=0;
00425 
00426 while (i<5){   
00427 while(k<6){
00428    sprintf(nBlocks,"ab%d",N++);
00429    mBlock = geom->MakeBox(nBlocks,Iron,18,10,5);
00430    mBlock->SetLineColor(8);   
00431    {
00432    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-250+(k*100),70,320, new TGeoRotation("r1",0,0,0)));
00433 
00434    }
00435    k++;
00436 }
00437    i++; k=0;
00438 }
00439 
00440 
00441 
00442 
00443 
00444 k=0; i=0;
00445 
00446 while (i<5){   
00447    while(k<6){
00448       sprintf(nBlocks,"ab%d",N++);
00449       mBlock = geom->MakeBox(nBlocks,Iron,18,10,5);
00450       mBlock->SetLineColor(8);   
00451       {
00452          top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-250+(k*100),-70,320, new TGeoRotation("r1",0,0,0)));
00453 
00454       }
00455       k++;
00456    }
00457       i++; k=0;
00458 }
00459 
00460 
00461 
00462    sprintf(nBlocks,"ab%d",N++);
00463    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,5);
00464    mBlock->SetLineColor(8);   
00465    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-290,0,320, new TGeoRotation("r1",90,0,0)));
00466 
00467 
00468 
00469    sprintf(nBlocks,"ab%d",N++);
00470    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,5);
00471    mBlock->SetLineColor(8);   
00472    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(290,0,320, new TGeoRotation("r1",90,0,0)));
00473 
00474 
00475 
00476 
00477 
00478 
00479 
00480 
00481 
00482 
00483 
00484 //___||____||_____||____||____||____||____||
00485 
00486 
00487 k=0; i=0;
00488 
00489 while (i<5){   
00490    while(k<19){
00491       sprintf(nBlocks,"ab%d",N++);
00492       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
00493       mBlock->SetLineColor(50);   
00494       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*33.3),78,345, new TGeoRotation("r1",0,0,0)));
00495       k++;
00496    }
00497       i++; k=0;
00498 }
00499 
00500 
00501 
00502 
00503 k=0; i=0;
00504 
00505 while (i<5){   
00506    while(k<19){
00507       sprintf(nBlocks,"ab%d",N++);
00508       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
00509       mBlock->SetLineColor(50);   
00510       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*33.3),-78,345, new TGeoRotation("r1",0,0,0)));
00511       k++;
00512    }
00513    i++; k=0;
00514 }
00515 
00516 
00517 
00518 k=0; i=0;
00519 
00520 while (i<5){   
00521    while(k<5){
00522       sprintf(nBlocks,"ab%d",N++);
00523       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
00524       mBlock->SetLineColor(50);   
00525       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300,-78+(k*33),345, new TGeoRotation("r1",0,0,0)));
00526       k++;
00527    }
00528       i++; k=0;
00529 }
00530 
00531 
00532 
00533 
00534 
00535 k=0; i=0;
00536 
00537 while (i<5){   
00538    while(k<5){
00539       sprintf(nBlocks,"ab%d",N++);
00540       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
00541       mBlock->SetLineColor(50);   
00542       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(300,-78+(k*33),345, new TGeoRotation("r1",0,0,0)));
00543       k++;
00544    }
00545       i++; k=0;
00546 }
00547 
00548 //        ||//  ||//  ||//  ||//
00549 
00550 
00551 
00552 k=0; i=0;
00553 
00554 while (i<5){   
00555    while(k<19){
00556       sprintf(nBlocks,"ab%d",N++);
00557       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
00558       mBlock->SetLineColor(50);   
00559       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*33.3),90,342, new TGeoRotation("r1",0,-45,0)));
00560       k++;
00561    }
00562       i++; k=0;
00563 }
00564 
00565 
00566 
00567 
00568 k=0; i=0;
00569 
00570 while (i<5){   
00571    while(k<19){
00572       sprintf(nBlocks,"ab%d",N++);
00573       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
00574       mBlock->SetLineColor(50);   
00575       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*33.3),-90,342, new TGeoRotation("r1",0,45,0)));
00576       k++;
00577    }
00578       i++; k=0;
00579 }
00580 
00581 
00582 
00583 k=0; i=0;
00584 
00585 while (i<5){   
00586    while(k<5){
00587       sprintf(nBlocks,"ab%d",N++);
00588       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
00589       mBlock->SetLineColor(50);   
00590       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-318,-78+(k*33),345, new TGeoRotation("r1",-90,45,0)));
00591       k++;
00592    }
00593    i++; k=0;
00594 }
00595 
00596 
00597 
00598 
00599 
00600 k=0; i=0;
00601 
00602 while (i<5){   
00603    while(k<5){
00604       sprintf(nBlocks,"ab%d",N++);
00605       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
00606       mBlock->SetLineColor(50);   
00607       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(318,-78+(k*33),345, new TGeoRotation("r1",90,45,0)));
00608       k++;
00609    }
00610    i++; k=0;
00611 }
00612 
00613 
00614 //   /// || / / / / / / / || / / / / / / / / || / / / / / / / / / / / 
00615 
00616 
00617 
00618    sprintf(nBlocks,"ab%d",N++);
00619    mBlock = geom->MakeBox(nBlocks, Iron, 330,10,2);
00620    mBlock->SetLineColor(42);   
00621    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(0,-107,362, new TGeoRotation("r1",0,-45,0)));
00622 
00623 
00624 
00625 
00626    sprintf(nBlocks,"ab%d",N++);
00627    mBlock = geom->MakeBox(nBlocks, Iron, 330,10,2);
00628    mBlock->SetLineColor(42);   
00629    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(0,107,362, new TGeoRotation("r1",0,45,0)));
00630 
00631 
00632 
00633    sprintf(nBlocks,"ab%d",N++);
00634    mBlock = geom->MakeBox(nBlocks, Iron, 110,10,2);
00635    mBlock->SetLineColor(42);   
00636    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(330,0,362, new TGeoRotation("r1",90,-45,0)));
00637 
00638 
00639 
00640    sprintf(nBlocks,"ab%d",N++);
00641    mBlock = geom->MakeBox(nBlocks, Iron, 110,10,2);
00642    mBlock->SetLineColor(42);   
00643    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-330,0,362, new TGeoRotation("r1",90,45,0)));
00644 
00645 
00646 
00647 
00648 /////////////////////// add box
00649 
00650 
00651 
00652 
00653 k=0; i=0;
00654 
00655 while (i<5){   
00656    while(k<6){
00657       sprintf(nBlocks,"ab%d",N++);
00658       mBlock = geom->MakeBox(nBlocks,Iron,18,10,2);
00659       mBlock->SetLineColor(8);   
00660       {
00661       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-270+(k*100),-108,362, new TGeoRotation("r1",0,-45,0)));
00662 
00663       }
00664       k++;
00665    }
00666    i++; k=0;
00667 }
00668 
00669 
00670 
00671 
00672 k=0; i=0;
00673 
00674 while (i<5){   
00675    while(k<6){
00676       sprintf(nBlocks,"ab%d",N++);
00677       mBlock = geom->MakeBox(nBlocks,Iron,18,10,2);
00678       mBlock->SetLineColor(8);   
00679       {
00680       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-270+(k*100),108,362, new TGeoRotation("r1",0,45,0)));
00681 
00682       }
00683       k++;
00684    }
00685    i++; k=0;
00686 }
00687 
00688 
00689    sprintf(nBlocks,"ab%d",N++);
00690    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,2);
00691    mBlock->SetLineColor(8);   
00692    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(331,0,362, new TGeoRotation("r1",90,-45,0)));
00693 
00694 
00695 
00696    sprintf(nBlocks,"ab%d",N++);
00697    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,2);
00698    mBlock->SetLineColor(8);   
00699    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-331,0,362, new TGeoRotation("r1",90,45,0)));
00700 
00701 
00702 
00703 
00704 
00705 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
00706 
00707 // 2nd floor 
00708 
00709 
00710 k=0; i=0;
00711 
00712 while (i<5){   
00713    while(k<7){
00714       sprintf(nBlocks,"ab%d",N++);
00715       mBlock = geom->MakeTubs(nBlocks,Iron, 0,5,30, 0, 360);
00716       mBlock->SetLineColor(50);   
00717       
00718       if (k<=2){
00719 
00720       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*100),80,465, new TGeoRotation("r1",0,0,0)));
00721       }else if (k>=4){
00722       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*100),80,465, new TGeoRotation("r1",0,0,0)));
00723       }   
00724 
00725 
00726    k++;
00727    }
00728       i++; k=0;
00729 }
00730 
00731 
00732 
00733 k=0; i=0;
00734 
00735 while (i<5){   
00736    while(k<7){
00737       sprintf(nBlocks,"ab%d",N++);
00738       mBlock = geom->MakeTubs(nBlocks,Iron, 0,5,30, 0, 360);
00739       mBlock->SetLineColor(50);   
00740       
00741       if (k<=2){
00742 
00743       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*100),-80,465, new TGeoRotation("r1",0,0,0)));
00744       }else if (k>=4){
00745       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*100),-80,465, new TGeoRotation("r1",0,0,0)));
00746       }   
00747 
00748 
00749    k++;
00750    }
00751    i++; k=0;
00752 }
00753 
00754 
00755 
00756 
00757 // ||=====||======||=====||=====||=====||=====||
00758 
00759 
00760    sprintf(nBlocks,"ab%d",N++);
00761    mBlock = geom->MakeBox(nBlocks, Iron, 302,80,8);
00762    mBlock->SetLineColor(42);   
00763    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(0,0,480));
00764 
00765 
00766 
00767    sprintf(nBlocks,"ab%d",N++);
00768    mBlock = geom->MakeBox(nBlocks, Iron, 302,80,5);
00769    mBlock->SetLineColor(42);   
00770    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(0,0,500));
00771 
00772 
00773    sprintf(nBlocks,"ab%d",N++);
00774    mBlock = geom->MakeBox(nBlocks, Iron, 305,80,2.5);
00775    mBlock->SetLineColor(50);   
00776    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(0,0,465));
00777 
00778 
00779 ///////////////////////add box
00780 
00781 
00782 
00783 
00784 
00785 
00786 //1
00787 k=0; i=0;
00788 
00789 while (i<5){   
00790    while(k<6){
00791       sprintf(nBlocks,"ab%d",N++);
00792       mBlock = geom->MakeBox(nBlocks,Iron,18,10,8);
00793       mBlock->SetLineColor(8);   
00794       {
00795       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-250+(k*100),71,480, new TGeoRotation("r1",0,0,0)));
00796 
00797       }
00798       k++;
00799    }
00800       i++; k=0;
00801 }
00802 
00803 
00804 
00805 
00806 
00807 k=0; i=0;
00808 
00809 while (i<5){   
00810    while(k<6){
00811       sprintf(nBlocks,"ab%d",N++);
00812       mBlock = geom->MakeBox(nBlocks,Iron,18,10,8);
00813       mBlock->SetLineColor(8);   
00814       {
00815       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-250+(k*100),-71,480, new TGeoRotation("r1",0,0,0)));
00816 
00817       }
00818       k++;
00819    }
00820       i++; k=0;
00821 }
00822 
00823 
00824 
00825 
00826    sprintf(nBlocks,"ab%d",N++);
00827    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,8);
00828    mBlock->SetLineColor(8);   
00829    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-293,0,480, new TGeoRotation("r1",90,0,0)));
00830 
00831 
00832 
00833    sprintf(nBlocks,"ab%d",N++);
00834    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,8);
00835    mBlock->SetLineColor(8);   
00836    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(293,0,480, new TGeoRotation("r1",90,0,0)));
00837 
00838 
00839 
00840 
00841 
00842 
00843 //2
00844 k=0; i=0;
00845 
00846 while (i<5){   
00847    while(k<6){
00848       sprintf(nBlocks,"ab%d",N++);
00849       mBlock = geom->MakeBox(nBlocks,Iron,18,10,5);
00850       mBlock->SetLineColor(8);   
00851       {
00852       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-250+(k*100),71,500, new TGeoRotation("r1",0,0,0)));
00853 
00854       }
00855       k++;
00856    }
00857       i++; k=0;
00858 }
00859 
00860 
00861 
00862 
00863 
00864 k=0; i=0;
00865 
00866 while (i<5){   
00867    while(k<6){
00868       sprintf(nBlocks,"ab%d",N++);
00869       mBlock = geom->MakeBox(nBlocks,Iron,18,10,5);
00870       mBlock->SetLineColor(8);   
00871       {
00872       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-250+(k*100),-71,500, new TGeoRotation("r1",0,0,0)));
00873 
00874       }
00875       k++;
00876    }
00877       i++; k=0;
00878 }
00879 
00880 
00881 
00882    sprintf(nBlocks,"ab%d",N++);
00883    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,5);
00884    mBlock->SetLineColor(8);   
00885    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-293,0,500, new TGeoRotation("r1",90,0,0)));
00886 
00887 
00888 
00889    sprintf(nBlocks,"ab%d",N++);
00890    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,5);
00891    mBlock->SetLineColor(8);   
00892    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(293,0,500, new TGeoRotation("r1",90,0,0)));
00893 
00894 
00895 
00896 
00897 
00898 
00899 
00900 
00901 
00902 
00903 
00904 //  1 ___||____||_____||____||____||____||____||
00905 
00906 
00907 k=0; i=0;
00908 
00909 while (i<5){   
00910    while(k<25){
00911       sprintf(nBlocks,"ab%d",N++);
00912       mBlock = geom->MakeBox(nBlocks,Iron, 1.5,5,15);
00913       mBlock->SetLineColor(50);   
00914       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*25),78,450, new TGeoRotation("r1",0,0,0)));
00915       k++;
00916    }
00917       i++; k=0;
00918 }
00919 
00920 
00921 
00922 
00923 k=0; i=0;
00924 
00925 while (i<5){   
00926    while(k<25){
00927       sprintf(nBlocks,"ab%d",N++);
00928       mBlock = geom->MakeBox(nBlocks,Iron, 1.5,5,15);
00929       mBlock->SetLineColor(50);   
00930       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*25),-78,450, new TGeoRotation("r1",0,0,0)));
00931       k++;
00932    }
00933       i++; k=0;
00934 }
00935 
00936 
00937 
00938 k=0; i=0;
00939 
00940 while (i<5){   
00941    while(k<7){
00942       sprintf(nBlocks,"ab%d",N++);
00943       mBlock = geom->MakeBox(nBlocks,Iron, 5,1.5,15);
00944       mBlock->SetLineColor(50);   
00945       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300,-78+(k*25),450, new TGeoRotation("r1",0,0,0)));
00946       k++;
00947    }
00948       i++; k=0;
00949 }
00950 
00951 
00952 
00953 
00954 
00955 k=0; i=0;
00956 
00957 while (i<5){   
00958    while (k<7){
00959       sprintf(nBlocks,"ab%d",N++);
00960       mBlock = geom->MakeBox(nBlocks,Iron, 5,1.5,15);
00961       mBlock->SetLineColor(50);   
00962       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(300,-78+(k*25),450, new TGeoRotation("r1",0,0,0)));
00963       k++;
00964    }
00965       i++; k=0;
00966 }
00967 
00968 
00969 
00970 
00971 //  2 ___||____||_____||____||____||____||____||
00972 
00973 
00974 k=0; i=0;
00975 
00976 while (i<5){   
00977 while(k<19){
00978    sprintf(nBlocks,"ab%d",N++);
00979    mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
00980    mBlock->SetLineColor(50);   
00981    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*33.3),78,525, new TGeoRotation("r1",0,0,0)));
00982    k++;
00983 }
00984    i++; k=0;
00985 }
00986 
00987 
00988 
00989 
00990 k=0; i=0;
00991 
00992 while (i<5){   
00993    while(k<19){
00994       sprintf(nBlocks,"ab%d",N++);
00995       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
00996       mBlock->SetLineColor(50);   
00997       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*33.3),-78,525, new TGeoRotation("r1",0,0,0)));
00998       k++;
00999    }
01000       i++; k=0;
01001 }
01002 
01003 
01004 
01005 k=0; i=0;
01006 
01007 while (i<5){   
01008    while(k<5){
01009       sprintf(nBlocks,"ab%d",N++);
01010       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
01011       mBlock->SetLineColor(50);   
01012       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300,-78+(k*33),525, new TGeoRotation("r1",0,0,0)));
01013       k++;
01014    }
01015       i++; k=0;
01016 }
01017 
01018 
01019 
01020 
01021 
01022 k=0; i=0;
01023 
01024 while (i<5){   
01025    while(k<5){
01026       sprintf(nBlocks,"ab%d",N++);
01027       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
01028       mBlock->SetLineColor(50);   
01029       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(300,-78+(k*33),525, new TGeoRotation("r1",0,0,0)));
01030       k++;
01031    }
01032       i++; k=0;
01033 }
01034 
01035 
01036 
01037 
01038 //        ||//  ||//  ||//  ||//
01039 
01040 //down
01041 
01042 k=0; i=0;
01043 
01044 while (i<5){   
01045    while(k<19){
01046       sprintf(nBlocks,"ab%d",N++);
01047       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
01048       mBlock->SetLineColor(50);   
01049       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*33.3),90,522, new TGeoRotation("r1",0,-45,0)));
01050       k++;
01051    }
01052       i++; k=0;
01053 }
01054 
01055 
01056 
01057 
01058 k=0; i=0;
01059 
01060 while (i<5){   
01061    while(k<19){
01062       sprintf(nBlocks,"ab%d",N++);
01063       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
01064       mBlock->SetLineColor(50);   
01065       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300+(k*33.3),-90,522, new TGeoRotation("r1",0,45,0)));
01066       k++;
01067    }
01068       i++; k=0;
01069 }
01070 
01071 
01072 k=0; i=0;
01073 
01074 while (i<5){   
01075    while(k<5){
01076       sprintf(nBlocks,"ab%d",N++);
01077       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
01078       mBlock->SetLineColor(50);   
01079       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-318,-78+(k*33.3),525, new TGeoRotation("r1",-90,45,0)));
01080       k++;
01081    }
01082       i++; k=0;
01083 }
01084 
01085 
01086 
01087 
01088 
01089 k=0; i=0;
01090 
01091 while (i<5){   
01092    while(k<5){
01093       sprintf(nBlocks,"ab%d",N++);
01094       mBlock = geom->MakeBox(nBlocks,Iron, 5,5,20);
01095       mBlock->SetLineColor(50);   
01096       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(318,-78+(k*33.3),525, new TGeoRotation("r1",90,45,0)));
01097       k++;
01098    }
01099       i++; k=0;
01100 }
01101 
01102 
01103 // up
01104 
01105 
01106 k=0; i=0;
01107 
01108 while (i<5){   
01109    while(k<50){
01110       sprintf(nBlocks,"ab%d",N++);
01111       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01112       mBlock->SetLineColor(50);   
01113       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-320+(k*13),115,562, new TGeoRotation("r1",0,-115,0)));
01114       k++;
01115    }
01116       i++; k=0;
01117 }
01118 
01119 
01120 
01121 
01122 k=0; i=0;
01123 
01124 while (i<5){   
01125    while(k<50){
01126       sprintf(nBlocks,"ab%d",N++);
01127       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01128       mBlock->SetLineColor(50);   
01129       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-320+(k*13),-115,562, new TGeoRotation("r1",0,115,0)));
01130       k++;
01131    }
01132       i++; k=0;
01133 }
01134 
01135 
01136 
01137 k=0; i=0;
01138 
01139 while (i<5){   
01140    while(k<17){
01141       sprintf(nBlocks,"ab%d",N++);
01142       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01143       mBlock->SetLineColor(50);   
01144       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-340,-98+(k*13),565, new TGeoRotation("r1",-90,115,0)));
01145       k++;
01146    }
01147       i++; k=0;
01148 }
01149 
01150 
01151 
01152 
01153 
01154 k=0; i=0;
01155 
01156 while (i<5){   
01157    while(k<17){
01158       sprintf(nBlocks,"ab%d",N++);
01159       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01160       mBlock->SetLineColor(50);   
01161       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(340,-98+(k*13),565, new TGeoRotation("r1",90,115,0)));
01162       k++;
01163    }
01164       i++; k=0;
01165 }
01166 
01167 
01168 //up2
01169 
01170 
01171 
01172 k=0; i=0;
01173 
01174 while (i<5){   
01175    while(k<50){
01176       sprintf(nBlocks,"ab%d",N++);
01177       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01178       mBlock->SetLineColor(50);   
01179       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-320+(k*13),115,375, new TGeoRotation("r1",0,-115,0)));
01180       k++;
01181    }
01182       i++; k=0;
01183 }
01184 
01185 
01186 
01187 
01188 k=0; i=0;
01189 
01190 while (i<5){   
01191    while(k<50){
01192       sprintf(nBlocks,"ab%d",N++);
01193       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01194       mBlock->SetLineColor(50);   
01195       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-320+(k*13),-115,375, new TGeoRotation("r1",0,115,0)));
01196       k++;
01197    }
01198       i++; k=0;
01199 }
01200 
01201 
01202 
01203 k=0; i=0;
01204 
01205 while (i<5){   
01206    while(k<17){
01207       sprintf(nBlocks,"ab%d",N++);
01208       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01209       mBlock->SetLineColor(50);   
01210       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-340,-98+(k*13),375, new TGeoRotation("r1",-90,115,0)));
01211       k++;
01212    }
01213       i++; k=0;
01214 }
01215 
01216 
01217 
01218 
01219 
01220 k=0; i=0;
01221 
01222 while (i<5){   
01223    while(k<17){
01224       sprintf(nBlocks,"ab%d",N++);
01225       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01226       mBlock->SetLineColor(50);   
01227       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(340,-98+(k*13),375, new TGeoRotation("r1",90,115,0)));
01228       k++;
01229    }
01230       i++; k=0;
01231 }
01232 
01233 
01234 //up 3
01235 
01236 k=0; i=0;
01237 
01238 while (i<5){   
01239    while(k<50){
01240       sprintf(nBlocks,"ab%d",N++);
01241       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01242       mBlock->SetLineColor(44);   
01243       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-320+(k*13),115,568, new TGeoRotation("r1",0,-115,0)));
01244       k++;
01245    }
01246       i++; k=0;
01247 }
01248 
01249 
01250 
01251 
01252 k=0; i=0;
01253 
01254 while (i<5){   
01255    while(k<50){
01256       sprintf(nBlocks,"ab%d",N++);
01257       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01258       mBlock->SetLineColor(44);   
01259       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-320+(k*13),-115,568, new TGeoRotation("r1",0,115,0)));
01260       k++;
01261    }
01262       i++; k=0;
01263 }
01264 
01265 
01266 k=0; i=0;
01267 
01268 while (i<5){   
01269    while(k<17){
01270       sprintf(nBlocks,"ab%d",N++);
01271       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01272       mBlock->SetLineColor(44);   
01273       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-340,-98+(k*13),568, new TGeoRotation("r1",-90,115,0)));
01274       k++;
01275    }
01276       i++; k=0;
01277 }
01278 
01279 
01280 
01281 
01282 
01283 k=0; i=0;
01284 
01285 while (i<5){   
01286    while(k<17){
01287       sprintf(nBlocks,"ab%d",N++);
01288       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01289       mBlock->SetLineColor(44);   
01290       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(340,-98+(k*13),568, new TGeoRotation("r1",90,115,0)));
01291       k++;
01292    }
01293       i++; k=0;
01294 }
01295 
01296 
01297 
01298 
01299 
01300 //up4
01301 
01302 
01303 k=0; i=0;
01304 
01305 while (i<5){   
01306    while(k<50){
01307       sprintf(nBlocks,"ab%d",N++);
01308       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01309       mBlock->SetLineColor(44);   
01310       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-320+(k*13),115,385, new TGeoRotation("r1",0,-115,0)));
01311       k++;
01312    }
01313       i++; k=0;
01314 }
01315 
01316 
01317 
01318 
01319 k=0; i=0;
01320 
01321 while (i<5){   
01322    while(k<50){
01323       sprintf(nBlocks,"ab%d",N++);
01324       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01325       mBlock->SetLineColor(44);   
01326       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-320+(k*13),-115,385, new TGeoRotation("r1",0,115,0)));
01327       k++;
01328    }
01329       i++; k=0;
01330 }
01331 
01332 
01333 k=0; i=0;
01334 
01335 while (i<5){   
01336    while(k<17){
01337       sprintf(nBlocks,"ab%d",N++);
01338       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01339       mBlock->SetLineColor(44);   
01340       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-340,-98+(k*13),385, new TGeoRotation("r1",-90,115,0)));
01341       k++;
01342    }
01343       i++; k=0;
01344 }
01345 
01346 
01347 
01348 
01349 
01350 k=0; i=0;
01351 
01352 while (i<5){   
01353    while(k<17){
01354       sprintf(nBlocks,"ab%d",N++);
01355       mBlock = geom->MakeBox(nBlocks,Iron, 2.5,2.5,20);
01356       mBlock->SetLineColor(44);   
01357       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(340,-98+(k*13),385, new TGeoRotation("r1",90,115,0)));
01358       k++;
01359    }
01360       i++; k=0;
01361 }
01362 
01363 
01364 // up kiwa
01365    //=========
01366    sprintf(nBlocks,"ab%d",N++);
01367    mBlock = geom->MakeBox(nBlocks,Iron, 270,15,20);
01368    mBlock->SetLineColor(10);   
01369    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(0,0,620, new TGeoRotation("r1",0,0,0)));
01370    //===============//2
01371    sprintf(nBlocks,"ab%d",N++);
01372    mBlock = geom->MakeBox(nBlocks,Iron, 75,15,20);
01373    mBlock->SetLineColor(10);   
01374    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(300,-50,600, new TGeoRotation("r1",0,20,-40)));
01375 
01376    sprintf(nBlocks,"ab%d",N++);
01377    mBlock = geom->MakeBox(nBlocks,Iron, 75,15,20);
01378    mBlock->SetLineColor(10);   
01379    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(300,50,600, new TGeoRotation("r1",0,-20,40)));
01380 
01381    sprintf(nBlocks,"ab%d",N++);
01382    mBlock = geom->MakeBox(nBlocks,Iron, 75,15,20);
01383    mBlock->SetLineColor(10);   
01384    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300,50,600, new TGeoRotation("r1",0,-20,-40)));
01385 
01386    sprintf(nBlocks,"ab%d",N++);
01387    mBlock = geom->MakeBox(nBlocks,Iron, 75,15,20);
01388    mBlock->SetLineColor(10);   
01389    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300,-50,600, new TGeoRotation("r1",0,20,40)));
01390 
01391 
01392 
01393 
01394    //===============//1
01395    sprintf(nBlocks,"ab%d",N++);
01396    mBlock = geom->MakeBox(nBlocks,Iron, 50,15,20);
01397    mBlock->SetLineColor(10);   
01398    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(300,-80,413, new TGeoRotation("r1",0,20,-40)));
01399 
01400    sprintf(nBlocks,"ab%d",N++);
01401    mBlock = geom->MakeBox(nBlocks,Iron, 50,15,20);
01402    mBlock->SetLineColor(10);   
01403    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(300,80,413, new TGeoRotation("r1",0,-20,40)));
01404 
01405    sprintf(nBlocks,"ab%d",N++);
01406    mBlock = geom->MakeBox(nBlocks,Iron, 50,15,20);
01407    mBlock->SetLineColor(10);   
01408    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300,80,413, new TGeoRotation("r1",0,-20,-40)));
01409 
01410    sprintf(nBlocks,"ab%d",N++);
01411    mBlock = geom->MakeBox(nBlocks,Iron, 50,15,20);
01412    mBlock->SetLineColor(10);   
01413    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-300,-80,413, new TGeoRotation("r1",0,20,40)));
01414 
01415 
01416 
01417 
01418 // _1_
01419 
01420 //front
01421 
01422 k=0; i=0;
01423 while (i<7){   
01424    while(k<44){
01425       sprintf(nBlocks,"ab%d",N++);
01426       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01427       mBlock->SetLineColor(13);   
01428       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-280+(k*13),70+(i*12.5),425-(i*5), new TGeoRotation("r1",0,60,0)));
01429       k++;
01430    }
01431       i++; k=0;
01432 }
01433    
01434 
01435 
01436 k=0; i=0;
01437 
01438 while (i<7){   
01439    while(k<44){
01440       sprintf(nBlocks,"ab%d",N++);
01441       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01442       mBlock->SetLineColor(13);   
01443       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-280+(k*13),-70-(i*12.5),425-(i*5), new TGeoRotation("r1",0,120,0)));
01444       k++;
01445    }
01446       i++; k=0;
01447 }
01448 
01449 //_2_
01450 
01451 
01452 
01453 
01454 k=0; i=0;
01455 while (i<11){   
01456    while(k<43){
01457       sprintf(nBlocks,"ab%d",N++);
01458       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01459       mBlock->SetLineColor(13);   
01460 
01461       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-270+(k*13),15+(i*12.5),620-(i*5), new TGeoRotation("r1",0,60,0)));
01462       k++;
01463    }
01464    i++; k=0;
01465 }
01466    
01467 
01468 
01469 k=0; i=0;
01470 
01471 while (i<11){   
01472    while(k<43){
01473       sprintf(nBlocks,"ab%d",N++);
01474       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01475       mBlock->SetLineColor(13);   
01476       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-270+(k*13),-15-(i*12.5),620-(i*5), new TGeoRotation("r1",0,120,0)));
01477       k++;
01478    }
01479    i++; k=0;
01480 }
01481 
01482 
01483 
01484 
01485 //////left
01486 k=0; i=0;
01487 
01488 while (i<6){   
01489    while(k<11){
01490       sprintf(nBlocks,"ab%d",N++);
01491       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01492       mBlock->SetLineColor(13);   
01493       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-335,81.25+(i*12.5),592.5-(i*2), new TGeoRotation("r1",0,60,0)));
01494       k++;
01495    }
01496    i++; k=0;
01497 }
01498 
01499 k=0; i=0;
01500 
01501 while (i<7){   
01502    while(k<11){
01503       sprintf(nBlocks,"ab%d",N++);
01504       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01505       mBlock->SetLineColor(13);   
01506       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-322,69.75+(i*12.5),595-(i*2), new TGeoRotation("r1",0,60,0)));
01507       k++;
01508    }
01509    i++; k=0;
01510 }
01511 
01512 
01513 k=0; i=0;
01514 
01515 while (i<8){   
01516    while(k<11){
01517       sprintf(nBlocks,"ab%d",N++);
01518       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01519       mBlock->SetLineColor(13);   
01520       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-309,56.25+(i*12.5),605-(i*4), new TGeoRotation("r1",0,60,0)));
01521       k++;
01522    }
01523    i++; k=0;
01524 }
01525 
01526 k=0; i=0;
01527 
01528 while (i<9){   
01529    while(k<11){
01530       sprintf(nBlocks,"ab%d",N++);
01531       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01532       mBlock->SetLineColor(13);   
01533       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-296,50+(i*12.5),610-(i*4), new TGeoRotation("r1",0,60,0)));
01534       k++;
01535    }
01536    i++; k=0;
01537 }
01538 
01539 
01540 k=0; i=0;
01541 
01542 while (i<10){   
01543    while(k<11){
01544       sprintf(nBlocks,"ab%d",N++);
01545       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01546       mBlock->SetLineColor(13);   
01547       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-283,37.5+(i*12.5),615-(i*4), new TGeoRotation("r1",0,60,0)));
01548       k++;
01549    }
01550    i++; k=0;
01551 }
01552 
01553 
01554 
01555 k=0; i=0;
01556 
01557 while (i<6){   
01558    while(k<11){
01559       sprintf(nBlocks,"ab%d",N++);
01560       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01561       mBlock->SetLineColor(13);   
01562       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-335,-81.25-(i*12.5),592.5-(i*2), new TGeoRotation("r1",0,120,0)));
01563       k++;
01564    }
01565    i++; k=0;
01566 }
01567 
01568 k=0; i=0;
01569 
01570 while (i<7){   
01571    while(k<11){
01572       sprintf(nBlocks,"ab%d",N++);
01573       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01574       mBlock->SetLineColor(13);   
01575       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-322,-69.75-(i*12.5),595-(i*2), new TGeoRotation("r1",0,120,0)));
01576       k++;
01577    }
01578    i++; k=0;
01579 }
01580 
01581 
01582 k=0; i=0;
01583 
01584 while (i<8){   
01585    while(k<11){
01586       sprintf(nBlocks,"ab%d",N++);
01587       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01588       mBlock->SetLineColor(13);   
01589       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-309,-56.25-(i*12.5),605-(i*4), new TGeoRotation("r1",0,120,0)));
01590       k++;
01591    }
01592    i++; k=0;
01593 }
01594 
01595 k=0; i=0;
01596 
01597 while (i<9){   
01598    while(k<11){
01599       sprintf(nBlocks,"ab%d",N++);
01600       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01601       mBlock->SetLineColor(13);   
01602       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-296,-50-(i*12.5),610-(i*4), new TGeoRotation("r1",0,120,0)));
01603       k++;
01604    }
01605    i++; k=0;
01606 }
01607 
01608 
01609 k=0; i=0;
01610 
01611 while (i<10){   
01612    while(k<11){
01613       sprintf(nBlocks,"ab%d",N++);
01614       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01615       mBlock->SetLineColor(13);   
01616       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-283,-37.5-(i*12.5),615-(i*4), new TGeoRotation("r1",0,120,0)));
01617       k++;
01618    }
01619    i++; k=0;
01620 }
01621 
01622 
01623 
01624 //////////right
01625 
01626 
01627 
01628 k=0; i=0;
01629 
01630 while (i<6){   
01631    while(k<11){
01632       sprintf(nBlocks,"ab%d",N++);
01633       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01634       mBlock->SetLineColor(13);   
01635       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(335,81.25+(i*12.5),592.5-(i*2), new TGeoRotation("r1",0,60,0)));
01636       k++;
01637    }
01638    i++; k=0;
01639 }
01640 
01641 k=0; i=0;
01642 
01643 while (i<7){   
01644    while(k<11){
01645       sprintf(nBlocks,"ab%d",N++);
01646       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01647       mBlock->SetLineColor(13);   
01648       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(322,69.75+(i*12.5),595-(i*2), new TGeoRotation("r1",0,60,0)));
01649       k++;
01650    }
01651    i++; k=0;
01652 }
01653 
01654 
01655 k=0; i=0;
01656 
01657 while (i<8){   
01658    while(k<11){
01659       sprintf(nBlocks,"ab%d",N++);
01660       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01661       mBlock->SetLineColor(13);   
01662       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(309,56.25+(i*12.5),605-(i*4), new TGeoRotation("r1",0,60,0)));
01663       k++;
01664    }
01665    i++; k=0;
01666 }
01667 
01668 k=0; i=0;
01669 
01670 while (i<9){   
01671    while(k<11){
01672       sprintf(nBlocks,"ab%d",N++);
01673       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01674       mBlock->SetLineColor(13);   
01675       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(296,50+(i*12.5),610-(i*4), new TGeoRotation("r1",0,60,0)));
01676       k++;
01677    }
01678    i++; k=0;
01679 }
01680 
01681 
01682 k=0; i=0;
01683 
01684 while (i<10){   
01685    while(k<11){
01686       sprintf(nBlocks,"ab%d",N++);
01687       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01688       mBlock->SetLineColor(13);   
01689       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(283,37.5+(i*12.5),615-(i*4), new TGeoRotation("r1",0,60,0)));
01690       k++;
01691    }
01692    i++; k=0;
01693 }
01694 
01695 
01696 //
01697 
01698 
01699 
01700 
01701 
01702 k=0; i=0;
01703 
01704 while (i<6){   
01705    while(k<11){
01706       sprintf(nBlocks,"ab%d",N++);
01707       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01708       mBlock->SetLineColor(13);   
01709       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(335,-81.25-(i*12.5),592.5-(i*2), new TGeoRotation("r1",0,120,0)));
01710       k++;
01711    }
01712    i++; k=0;
01713 }
01714 
01715 k=0; i=0;
01716 
01717 while (i<7){   
01718    while(k<11){
01719       sprintf(nBlocks,"ab%d",N++);
01720       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01721       mBlock->SetLineColor(13);   
01722       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(322,-69.75-(i*12.5),595-(i*2), new TGeoRotation("r1",0,120,0)));
01723       k++;
01724    }
01725    i++; k=0;
01726 }
01727 
01728 
01729 k=0; i=0;
01730 
01731 while (i<8){   
01732    while(k<11){
01733       sprintf(nBlocks,"ab%d",N++);
01734       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01735       mBlock->SetLineColor(13);   
01736       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(309,-56.25-(i*12.5),605-(i*4), new TGeoRotation("r1",0,120,0)));
01737       k++;
01738    }
01739    i++; k=0;
01740 }
01741 
01742 k=0; i=0;
01743 
01744 while (i<9){   
01745    while(k<11){
01746       sprintf(nBlocks,"ab%d",N++);
01747       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01748       mBlock->SetLineColor(13);   
01749       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(296,-50-(i*12.5),610-(i*4), new TGeoRotation("r1",0,120,0)));
01750       k++;
01751    }
01752    i++; k=0;
01753 }
01754 
01755 
01756 k=0; i=0;
01757 
01758 while (i<10){   
01759    while(k<11){
01760       sprintf(nBlocks,"ab%d",N++);
01761       mBlock = geom->MakeTubs(nBlocks,Iron, 3,6,6,10,170);
01762       mBlock->SetLineColor(13);   
01763       top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(283,-37.5-(i*12.5),615-(i*4), new TGeoRotation("r1",0,120,0)));
01764       k++;
01765    }
01766    i++; k=0;
01767 }
01768 
01769 
01770 //   /// || / / / / / / / || / / / / / / / / || / / / / / / / / / / / 
01771 
01772 
01773    sprintf(nBlocks,"ab%d",N++);
01774    mBlock = geom->MakeBox(nBlocks, Iron, 330,10,2);
01775    mBlock->SetLineColor(42);   
01776    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(0,-110,550, new TGeoRotation("r1",0,-45,0)));
01777 
01778 
01779 
01780 
01781    sprintf(nBlocks,"ab%d",N++);
01782    mBlock = geom->MakeBox(nBlocks, Iron, 330,10,2);
01783    mBlock->SetLineColor(42);   
01784    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(0,110,550, new TGeoRotation("r1",0,45,0)));
01785 
01786 
01787 
01788    sprintf(nBlocks,"ab%d",N++);
01789    mBlock = geom->MakeBox(nBlocks, Iron, 110,10,2);
01790    mBlock->SetLineColor(42);   
01791    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(335,0,550, new TGeoRotation("r1",90,-45,0)));
01792 
01793 
01794 
01795    sprintf(nBlocks,"ab%d",N++);
01796    mBlock = geom->MakeBox(nBlocks, Iron, 110,10,2);
01797    mBlock->SetLineColor(42);   
01798    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-335,0,550, new TGeoRotation("r1",90,45,0)));
01799 
01800 
01801 
01802 ////////////////////////////////add box
01803 
01804 
01805 
01806 
01807 
01808 k=0; i=0;
01809 
01810 while (i<5){   
01811 while(k<6){
01812    sprintf(nBlocks,"ab%d",N++);
01813    mBlock = geom->MakeBox(nBlocks,Iron,18,10,2);
01814    mBlock->SetLineColor(8);   
01815    {
01816    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-270+(k*100),-111,550, new TGeoRotation("r1",0,-45,0)));
01817 
01818    }
01819    k++;
01820 }
01821    i++; k=0;
01822 }
01823 
01824 
01825 
01826 
01827 k=0; i=0;
01828 
01829 while (i<5){   
01830 while(k<6){
01831    sprintf(nBlocks,"ab%d",N++);
01832    mBlock = geom->MakeBox(nBlocks,Iron,18,10,2);
01833    mBlock->SetLineColor(8);   
01834    {
01835    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-270+(k*100),111,550, new TGeoRotation("r1",0,45,0)));
01836 
01837    }
01838    k++;
01839 }
01840    i++; k=0;
01841 }
01842 
01843 
01844    sprintf(nBlocks,"ab%d",N++);
01845    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,2);
01846    mBlock->SetLineColor(8);   
01847    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(336,0,550, new TGeoRotation("r1",90,-45,0)));
01848 
01849 
01850 
01851    sprintf(nBlocks,"ab%d",N++);
01852    mBlock = geom->MakeBox(nBlocks, Iron, 18,10,2);
01853    mBlock->SetLineColor(8);   
01854    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(-336,0,550, new TGeoRotation("r1",90,45,0)));
01855 
01856 
01857 
01858 
01859 //                  |           |           |            |           |
01860 
01861 
01862 
01863    sprintf(nBlocks,"ab%d",N++);
01864    mBlock = geom->MakeBox(nBlocks, Iron, 300,75,40);
01865    mBlock->SetLineColor(45);   
01866    top->AddNodeOverlap(mBlock,1,new TGeoCombiTrans(0,0,450, new TGeoRotation("r1",0,0,0)));
01867 
01868 
01869 
01870 //kiwa
01871    sprintf(nBlocks,"ab%d",N++);
01872    mBlock = geom->MakeBox(nBlocks, Iron, 305,80,2.5);
01873    mBlock->SetLineColor(10);   
01874    top->AddNodeOverlap(mBlock,1,new TGeoTranslation(0,0,430));
01875 
01876 
01877 
01878 
01879   top->SetVisibility(0);
01880   geom->CloseGeometry();
01881 
01882   top->Draw("ogl");
01883 }

Generated on Tue Jul 5 15:44:17 2011 for ROOT_528-00b_version by  doxygen 1.5.1