Drawing a building where Dept.
This macro was created for the evaluation of Computational Physics course in 2006. We thank to Prof. Inkyu Park for his special lecture on ROOT and to all of ROOT team
void building()
{
int i = 0;
int nW = 8;
int nF = 3;
char no_Block[100];
double sP = 0;
double hP = 21;
while (i<nW){
i++;
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,29,1.8,sP,sP+6.25);
if (i < nW) {
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,30,1.8,sP,sP+2.5);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,31,1.8,sP,sP+1);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,30,1.8,sP,sP+1);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,31,1.8,sP,sP+1);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,30,1.8,sP,sP+2.5);
}
if (i>=nW) {
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,30,1.8,sP,103);
}
}
sprintf(no_Block,
"B1_F%d", ++
F);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,30,2.2,0,103);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18.5,21,0.8,92,101);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18.5,21,3.2,92,102);
}
}
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18.5,21,2,92,102);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18.5,21,3.2,92,102);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,30,2,0,103);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18,21,2,0,102);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18,18.5,14,92,103);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,29,2,0,97);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,32,2,37,97);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,29,1.95,0,37);
sprintf(no_Block,
"B1_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,29,0.05,0,37);
sprintf(no_Block,
"B1_RT%d",
N = 0);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,29.5,0.2,0,102);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18.5,21,0.2,0,101);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,30,0.7,102.9,103);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21.1,29.9,0.7,102,102.9);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21.1,21.5,0.5,98,102.9);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,21,21.1,0.7,98,103);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18.6,21,0.7,101.9,102);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18.6,21,0.7,101,101.9);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,29.5,29.9,0.5,0,102);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,29.9,30,0.5,0,103);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18.1,18.5,0.5,-1,101.9);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18,18.1,0.5,-0.5,102);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18.1,18.4,0.5,101.9,102.9);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18,18.1,0.5,102,103);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18.4,18.5,0.5,102,103);
sprintf(no_Block,
"B1_RT%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18,18.5,0.5,102.9,103);
sprintf(no_Block,
"B1_WW%d",
N = 0);
mBlocks = geom->
MakeTubs(no_Block,Iron,20.8,31,19.5,sP,sP+1);
sprintf(no_Block,
"B1_WW%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,26.8,31,5,sP,sP+1);
sprintf(no_Block,
"B1_WW%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,23,24.3,5,sP,sP+1);
sprintf(no_Block,
"B1_WW%d", ++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,20.8,21.3,5,sP,sP+1);
sprintf(no_Block,
"B1_ZF%d",
N=0);
mBlocks = geom->
MakeTubs(no_Block,Iron,0,21,9,0,92);
sprintf(no_Block,
"B1_ZF%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18,21,7.5,0,92);
sprintf(no_Block,
"B1_ZF%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,18,21,4.5,0,92);
sprintf(no_Block,
"B1_ZF%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,0,18,0.2,0,101);
sprintf(no_Block,
"B1_ZF%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,0,18,1.7,0,100);
sprintf(no_Block,
"B1_ZF%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,0,18,1.2,101,101.9);
sprintf(no_Block,
"B1_ZF%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,0,18,1.2,101.9,102);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6.5,7,2.5);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6.5,7,3);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,0.05,10);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6.9,0.20,10);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.1,0.20,10);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.05,7,3.5);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.20,6.9,3.5);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.25,7,4);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,0.05,10);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6.9,0.20,10);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.1,0.20,10);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5,5,1);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5,0.25,1.5);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.25,5.5,1.5);
sprintf(no_Block,
"B1_ZF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.5,3.5,5);
sprintf(no_Block,
"B1_GRD%d",
N=0);
mBlocks = geom->
MakeTubs(no_Block,Iron,0,29,1,0,36.75);
sprintf(no_Block,
"B1_GRD%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,0,30.4,0.4,36.75,77.25);
sprintf(no_Block,
"B1_GRD%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,0,29.7,0.3,36.75,77.25);
sprintf(no_Block,
"B1_GRD%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,0,29,0.3,36.75,77.25);
sprintf(no_Block,
"B1_GRD%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,0,29,1,77.25,97);
sprintf(no_Block,
"B1_PF%d",
N = 0);
mBlocks = geom->
MakeBox(no_Block,Iron,1.2,1.5,9);
sprintf(no_Block,
"B1_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.2,1.5,9);
sprintf(no_Block,
"B1_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.2,1.5,9);
sprintf(no_Block,
"B1_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.2,1.5,9);
sprintf(no_Block,
"B1_PF%d",++
N);
mBlocks = geom->
MakeTubs(no_Block,Iron,29,30,2,0,36.75);
sprintf(no_Block,
"B1_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3,2,2);
sprintf(no_Block,
"B1_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.25,4.3,1.5);
sprintf(no_Block,
"B1_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.25,4.3,0.4);
sprintf(no_Block,
"B1_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.5,0.25,0.75);
sprintf(no_Block,
"B1_PF%d", ++
N);
mBlocks = geom->
MakeTrd1(no_Block,Iron,1.5,0,0.25,5.5);
while (i<nW){
sprintf(no_Block,
"B12_F%d_B%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3.8,0.35,1.8);
new TGeoCombiTrans(23.38 + (21.65-6*i)*0.13,-21.2 + (21.65-6*i)*0.99,hP+(8*
F),
sprintf(no_Block,
"B12_F%d_B%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.8,0.3,1.8);
sprintf(no_Block,
"B12_F%d_B%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3.8,0.3,1.8);
new TGeoCombiTrans(23.38 + (20.4-6*i)*0.13,-21.2 + (20.4-6*i)*0.99,hP+(8*
F),
sprintf(no_Block,
"B12_F%d_B%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.8,0.3,1.8);
new TGeoCombiTrans(23.38 + (19.7-6*i)*0.13,-21.2 + (19.7-6*i)*0.99,hP+(8*
F),
sprintf(no_Block,
"B12_F%d_B%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3.8,0.35,1.8);
new TGeoCombiTrans(23.38 + (19.05-6*i)*0.13,-21.2 + (19.05-6*i)*0.99,hP+(8*
F),
sprintf(no_Block,
"B12_F%d_B%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3,1.4,1.8);
new TGeoCombiTrans(23.38 + (17.4-6*i)*0.13,-21.2 + (17.4-6*i)*0.99,hP+(8*
F),
i++;
if( i >= nW){
sprintf(no_Block,
"B12_F%d_B%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.8,1,1.8);
}
}
sprintf(no_Block,
"B12_F%d_B%d",++
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.8,22,2.2);
}
sprintf(no_Block,
"B12_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.8,22,2);
sprintf(no_Block,
"B12_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,2.8,22,14);
sprintf(no_Block,
"B12_RT%d_%d",
F,
N=0);
mBlocks = geom->
MakeBox(no_Block,Iron,5.5,21.75,0.2);
sprintf(no_Block,
"B12_RT%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.23,21.95,0.5);
sprintf(no_Block,
"B12_RT%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.1,22,0.5);
sprintf(no_Block,
"B12_RT%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.23,3.6,0.5);
sprintf(no_Block,
"B12_RT%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.02,3.8,0.5);
sprintf(no_Block,
"B12_RT%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.7,0.23,0.5);
sprintf(no_Block,
"B12_RT%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.8,0.1,0.5);
sprintf(no_Block,
"B12_PF%d",
N = 0);
mBlocks = geom->
MakeBox(no_Block,Iron,1.2,1.5,9);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.2,1.5,9);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.2,1.5,9);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.2,1.5,11);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.2,1.5,11);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.5,15.75,2);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.5,2,4);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.5,15.75,2);
sprintf(no_Block,
"B12_RT%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.8,0.5,4);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3,0.5,3.25);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.5,6.25,1.625);
sprintf(no_Block,
"B1_PF%d", ++
N);
mBlocks = geom->
MakeTrd1(no_Block,Iron,3.25,0,0.5,6.25);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3,3,0.5);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,2.5,3,0.5);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,2.5,3,0.5);
sprintf(no_Block,
"B12_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,2.5,3,0.5);
sprintf(no_Block,
"B12_GR%d",
N=0);
mBlocks = geom->
MakeBox(no_Block,Iron,4.8,21,1);
sprintf(no_Block,
"B12_GR%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.8,18,9);
sprintf(no_Block,
"B12_GR%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.8,22,2);
sprintf(no_Block,
"B12_GR%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.8,22,1.95);
sprintf(no_Block,
"B12_GR%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.8,22,0.05);
sprintf(no_Block, "B2_F%d", 6);
mBlocks = geom->
MakeBox(no_Block,Iron,7,17.5,2);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.8,4,4);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.1,3.5,1);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.1,4.5,0.2);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.1,4,2.8);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.7,4,4);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.1,3.5,1);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.1,4.5,0.2);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.1,4,2.8);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.7,4,4);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.3,13.5,1.5);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.3,14,0.2);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.3,13.5,2.3);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3.7,13,1.5);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3.7,14,0.2);
sprintf(no_Block,
"B2_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3.7,13.5,2.3);
}
sprintf(no_Block, "B2_F%d_%d", 0,1);
mBlocks = geom->
MakeBox(no_Block,Iron,5,13.5,6);
sprintf(no_Block, "B2_F%d_%d", 0,2);
mBlocks = geom->
MakeBox(no_Block,Iron,5,13.5,4);
sprintf(no_Block, "B2_F%d_%d", 0,3);
mBlocks = geom->
MakeBox(no_Block,Iron,5,13.5,4);
sprintf(no_Block,
"B2_F%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,17.4,0.1);
sprintf(no_Block,
"B2_F%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.5,0.2,0.5);
sprintf(no_Block,
"B2_F%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.5,0.05,0.5);
sprintf(no_Block,
"B2_F%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.75,0.2,0.5);
sprintf(no_Block,
"B2_F%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.55,0.05,0.5);
F=0;
N = 0; nF = 4; nW = 6;
sprintf(no_Block, "B3_F0%d", 7);
mBlocks = geom->
MakeBox(no_Block,Iron,3,36,2);
sprintf(no_Block,
"B3_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4,36,0.2);
while (i++ <nW){
sprintf(no_Block,
"B3_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,2.5,5,1.8);
sprintf(no_Block,
"B3_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,2.8,1,1.8);
}
sprintf(no_Block,
"B3_F%d_%d",
F, ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3,36,2);
}
sprintf(no_Block, "B3_F0%d", 1);
mBlocks = geom->
MakeBox(no_Block,Iron,2.8,36,2);
sprintf(no_Block, "B3_F0%d", 2);
mBlocks = geom->
MakeBox(no_Block,Iron,2.8,36,2);
sprintf(no_Block, "B3_F0%d", 3);
mBlocks = geom->
MakeBox(no_Block,Iron,2.8,36,4);
sprintf(no_Block, "B3_F0%d", 4);
mBlocks = geom->
MakeBox(no_Block,Iron,2.8,36,4);
sprintf(no_Block, "B3_F0%d", 61);
mBlocks = geom->
MakeBox(no_Block,Iron,3,8,2);
sprintf(no_Block, "B3_F0%d", 62);
mBlocks = geom->
MakeBox(no_Block,Iron,0.5,8,24);
sprintf(no_Block, "B3_F0%d", 63);
mBlocks = geom->
MakeBox(no_Block,Iron,2,7,24);
sprintf(no_Block, "B3_F0%d", 64);
mBlocks = geom->
MakeBox(no_Block,Iron,0.5,8,24);
sprintf(no_Block, "B3_F0%d", 65);
mBlocks = geom->
MakeBox(no_Block,Iron,3,8,4);
nF = 6;nW = 6;
sprintf(no_Block, "B3_F2%d",7);
mBlocks = geom->
MakeBox(no_Block,Iron,7,40.5,2);
for (
F=0 ;
F<nF ;
F++){
N=0;
for (i = 0 ; i<nW ; i++){
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6,2.35,2);
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6.5,0.3,2);
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6,2.35,2);
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,1,2);
}
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6.8,36,0.3);
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,36,2);
for(int i=0;i<4;i++){
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,0.5,1.4);
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6,0.7,1.4);
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,1.6,1.4);
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6,0.7,1.4);
}
sprintf(no_Block,
"B3_F2%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,3.5,2.6);
}
sprintf(no_Block, "B3_F2%d",71);
mBlocks = geom->
MakeBox(no_Block,Iron,7,40.5,4);
sprintf(no_Block, "B3_F2%d",72);
mBlocks = geom->
MakeBox(no_Block,Iron,7,2,30);
sprintf(no_Block, "B3_F2%d",73);
mBlocks = geom->
MakeBox(no_Block,Iron,7,1,30);
sprintf(no_Block,
"B3_RT%d",
N = 0);
mBlocks = geom->
MakeBox(no_Block,Iron,7,42.25,0.1);
sprintf(no_Block,
"B3_RT%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,2.75,41.75,0.1);
sprintf(no_Block,
"B3_RT%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.24,41.99,0.5);
sprintf(no_Block,
"B3_RT%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.01,42,0.5);
sprintf(no_Block,
"B3_RT%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.24,3.99,0.5);
sprintf(no_Block,
"B3_RT%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.01,4,0.5);
sprintf(no_Block,
"B3_RT%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,2.99,0.24,0.5);
sprintf(no_Block,
"B3_RT%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3,0.01,0.5);
sprintf(no_Block,
"B3_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.24,42.49,0.5);
sprintf(no_Block,
"B3_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.01,42.5,0.5);
sprintf(no_Block,
"B3_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6.99,0.24,0.5);
sprintf(no_Block,
"B3_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,0.01,0.5);
sprintf(no_Block,
"B3_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,0.25,0.5);
sprintf(no_Block,
"B3_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,7,0.01,0.5);
for (i=0 ; i<6; i++) {
sprintf(no_Block,
"B3_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.2,1.5,12);
}
sprintf(no_Block,
"B3_PF%d", ++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,1.5,40,2);
sprintf(no_Block,
"B3_ST%d",
N=0);
mBlocks = geom->
MakeBox(no_Block,Iron,0.5,7,5);
for(int i=0;i<5;i++){
sprintf(no_Block,
"B3_ST%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3,5,0.5);
}
for(
int F=0;
F<5;
F++){
N=0;
sprintf(no_Block,
"B4_LF%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.5,12.5,2.3);
sprintf(no_Block,
"B4_LF%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.5,2,1.7);
sprintf(no_Block,
"B4_LF%d_%d",
F,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5,10.5,1.7);
}
sprintf(no_Block,
"B4_LF%d_%d",9,
N=0);
mBlocks = geom->
MakeBox(no_Block,Iron,5.5,12.5,6);
sprintf(no_Block,
"B4_LF%d_%d",9,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.5,2,4.5);
sprintf(no_Block,
"B4_LF%d_%d",9,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5,10.5,4.5);
sprintf(no_Block,
"B4_LF%d_%d",9,++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.5,12.5,5);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.25,11,24);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.25,4,32);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.5,2,1.8);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.5,3.5,5);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,6,2,0.3);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4,2,1.5);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.5,7,1.8);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.5,11,1.8);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.25,1.5,2);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4,2,2);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.5,7,2);
sprintf(no_Block,
"B4_RS%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,4.5,11,2.4);
sprintf(no_Block,
"B4_RT%d",
N=0);
mBlocks = geom->
MakeBox(no_Block,Iron,4.25,10.9,0.2);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.25,12.4,0.2);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.24,12.4,0.5);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.01,12.4,0.5);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.24,13,0.5);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,0.01,13,0.5);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,8.75,0.24,0.5);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,8.75,0.01,0.5);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.25,0.24,0.5);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,5.5,0.01,0.5);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3.5,0.24,0.5);
sprintf(no_Block,
"B4_RT%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,3.5,0.01,0.5);
sprintf(no_Block,
"GRD%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,40,90,2);
sprintf(no_Block,
"GRD%d",++
N);
mBlocks = geom->
MakeBox(no_Block,Iron,30,30,2);
Phy_Building->
Draw(
"ogl");
}
Class describing rotation + translation.
The manager class for any TGeo geometry.
void CloseGeometry(Option_t *option="d")
Closing geometry implies checking the geometry validity, fixing shapes with negative parameters (run-...
TGeoVolume * MakeBox(const char *name, TGeoMedium *medium, Double_t dx, Double_t dy, Double_t dz)
Make in one step a volume pointing to a box shape with given medium.
TGeoVolume * MakeTrd1(const char *name, TGeoMedium *medium, Double_t dx1, Double_t dx2, Double_t dy, Double_t dz)
Make in one step a volume pointing to a TGeoTrd1 shape with given medium.
void SetTopVolume(TGeoVolume *vol)
Set the top volume and corresponding node as starting point of the geometry.
void SetTopVisible(Bool_t vis=kTRUE)
make top volume visible on screen
TGeoVolume * MakeTubs(const char *name, TGeoMedium *medium, Double_t rmin, Double_t rmax, Double_t dz, Double_t phi1, Double_t phi2)
Make in one step a volume pointing to a tube segment shape with given medium.
Base class describing materials.
Media are used to store properties related to tracking and which are useful only when using geometry ...
Class describing rotations.
Class describing translations.
TGeoVolume, TGeoVolumeMulti, TGeoVolumeAssembly are the volume classes.
void SetVisibility(Bool_t vis=kTRUE) override
set visibility of this volume
void Draw(Option_t *option="") override
draw top volume according to option
virtual void AddNodeOverlap(TGeoVolume *vol, Int_t copy_no, TGeoMatrix *mat=nullptr, Option_t *option="")
Add a TGeoNode to the list of nodes.
void SetLineColor(Color_t lcolor) override
Set the line color.