41int di[2]; di[0] = 0; di[1] = 30;
45 for(
int i=0;i<20;i++){
46 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
47 mBlock = geom->
MakeBox(nBlocks, Iron, 0.6,1.8,63);
51 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
52 mBlock = geom->
MakeBox(nBlocks, Iron, 0.7,1.8,58);
56 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
57 mBlock = geom->
MakeBox(nBlocks, Iron, 26,1.2,63);
61 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
62 mBlock = geom->
MakeBox(nBlocks, Iron, 26,2,63);
67 for(
int i=0;i<20;i++){
68 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
69 mBlock = geom->
MakeBox(nBlocks, Iron, 0.6,1.8,63);
72 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
73 mBlock = geom->
MakeBox(nBlocks, Iron, 0.7,1.8,58);
78 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
79 mBlock = geom->
MakeBox(nBlocks, Iron, 26,1.2,63);
84 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
85 mBlock = geom->
MakeBox(nBlocks, Iron, 10,22,58);
89 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
90 mBlock = geom->
MakeBox(nBlocks, Iron, 3.5,8,0.1);
94 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
95 mBlock = geom->
MakeBox(nBlocks, Iron, 3.5,8,0.1);
99 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
100 mBlock = geom->
MakeBox(nBlocks, Iron, 10,0.2,0.1);
104 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
105 mBlock = geom->
MakeBox(nBlocks, Iron, 10,0.2,0.1);
109 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
110 mBlock = geom->
MakeBox(nBlocks, Iron, 10,0.2,0.1);
114 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
115 mBlock = geom->
MakeBox(nBlocks, Iron, 10,0.2,0.1);
119 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
120 mBlock = geom->
MakeBox(nBlocks, Iron, 10,0.2,0.1);
124 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
125 mBlock = geom->
MakeBox(nBlocks, Iron, 10,0.2,0.1);
129 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
130 mBlock = geom->
MakeBox(nBlocks, Iron, 10,0.2,0.1);
134 for(
int k=0;k<7;k++){
135 for(
int i=0;i<20;i++){
136 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
137 mBlock = geom->
MakeBox(nBlocks, Iron, 0.6,1.8,63);
140 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
141 mBlock = geom->
MakeBox(nBlocks, Iron, 0.7,1.8,58);
146 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
147 mBlock = geom->
MakeBox(nBlocks, Iron, 26,1.2,63);
151 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
152 mBlock = geom->
MakeBox(nBlocks, Iron, 26,2,63);
157 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
158 mBlock = geom->
MakeBox(nBlocks, Iron, 82,2,82);
162 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
163 mBlock = geom->
MakeBox(nBlocks, Iron, 85,0.5,85);
167 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
168 mBlock = geom->
MakeBox(nBlocks, Iron, 88,2,88);
173 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
174 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 30, 0, 180, 0, 180);
178 sprintf(nBlocks,
"ab%d",
N++);
179 mBlock = geom->
MakeBox(nBlocks,Iron, 0.1,30,0.1);
183 sprintf(nBlocks,
"ab%d",
N++);
184 mBlock = geom->
MakeTubs(nBlocks,Iron, 0,30,4,360,360);
188 for(
int i=0;i<8;i++){
189 sprintf(nBlocks,
"ab%d",
N++);
190 mBlock = geom->
MakeBox(nBlocks,Iron, 2,22,2);
195 for(
int i=0;i<8;i++){
196 sprintf(nBlocks,
"ab%d",
N++);
197 mBlock = geom->
MakeBox(nBlocks,Iron, 2,22,2);
202 for(
int i=0;i<7;i++){
203 sprintf(nBlocks,
"ab%d",
N++);
204 mBlock = geom->
MakeBox(nBlocks,Iron, 2,22,2);
209 for(
int i=0;i<7;i++){
210 sprintf(nBlocks,
"ab%d",
N++);
211 mBlock = geom->
MakeBox(nBlocks,Iron, 2,22,2);
216 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
217 mBlock = geom->
MakeBox(nBlocks, Iron, 100,0.5,160);
221 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
222 mBlock = geom->
MakeBox(nBlocks, Iron, 10,0.01,160);
226 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
227 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
231 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
232 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
236 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
237 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
241 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
242 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
246 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
247 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
251 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
252 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
256 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
257 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
261 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
262 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
266 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
267 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
271 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
272 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
276 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
277 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
281 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
282 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
286 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
287 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
291 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
292 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
296 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
297 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
301 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
302 mBlock = geom->
MakeSphere(nBlocks, Iron, 0, 5, 0, 180, 0, 180);
306 sprintf(nBlocks,
"ab%d",
N++);
307 mBlock = geom->
MakeBox(nBlocks,Iron, 0.1,10,0.1);
311 sprintf(nBlocks,
"ab%d",
N++);
312 mBlock = geom->
MakeBox(nBlocks,Iron, 5,3,0.1);
316 sprintf(nBlocks,
"ab%d",
N++);
317 mBlock = geom->
MakeBox(nBlocks,Iron, 0.1,10,0.1);
321 sprintf(nBlocks,
"ab%d",
N++);
322 mBlock = geom->
MakeBox(nBlocks,Iron, 5,3,0.1);
326 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
327 mBlock = geom->
MakeBox(nBlocks, Iron, 7,1.5,5);
331 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
332 mBlock = geom->
MakeBox(nBlocks, Iron, 7,1,5);
336 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
337 mBlock = geom->
MakeBox(nBlocks, Iron, 7,0.5,5);
341 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
342 mBlock = geom->
MakeBox(nBlocks, Iron, 7,0.1,5);
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 * MakeSphere(const char *name, TGeoMedium *medium, Double_t rmin, Double_t rmax, Double_t themin=0, Double_t themax=180, Double_t phimin=0, Double_t phimax=360)
Make in one step a volume pointing to a sphere 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.
virtual void SetVisibility(Bool_t vis=kTRUE)
set visibility of this volume
virtual void AddNodeOverlap(TGeoVolume *vol, Int_t copy_no, TGeoMatrix *mat=0, Option_t *option="")
Add a TGeoNode to the list of nodes.
virtual void Draw(Option_t *option="")
draw top volume according to option
virtual void SetLineColor(Color_t lcolor)
Set the line color.