48 for (
int k = 0; k < 7; k++) {
49 for (
int i = 0; i < 20; i++) {
50 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
51 mBlock = geom->
MakeBox(nBlocks, Iron, 0.6, 1.8, 63);
55 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
56 mBlock = geom->
MakeBox(nBlocks, Iron, 0.7, 1.8, 58);
60 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
61 mBlock = geom->
MakeBox(nBlocks, Iron, 26, 1.2, 63);
65 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
66 mBlock = geom->
MakeBox(nBlocks, Iron, 26, 2, 63);
70 for (
int k = 0; k < 7; k++) {
71 for (
int i = 0; i < 20; i++) {
72 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
73 mBlock = geom->
MakeBox(nBlocks, Iron, 0.6, 1.8, 63);
76 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
77 mBlock = geom->
MakeBox(nBlocks, Iron, 0.7, 1.8, 58);
81 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
82 mBlock = geom->
MakeBox(nBlocks, Iron, 26, 1.2, 63);
87 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
88 mBlock = geom->
MakeBox(nBlocks, Iron, 10, 22, 58);
92 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
93 mBlock = geom->
MakeBox(nBlocks, Iron, 3.5, 8, 0.1);
97 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
98 mBlock = geom->
MakeBox(nBlocks, Iron, 3.5, 8, 0.1);
102 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
103 mBlock = geom->
MakeBox(nBlocks, Iron, 10, 0.2, 0.1);
107 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
108 mBlock = geom->
MakeBox(nBlocks, Iron, 10, 0.2, 0.1);
112 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
113 mBlock = geom->
MakeBox(nBlocks, Iron, 10, 0.2, 0.1);
117 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
118 mBlock = geom->
MakeBox(nBlocks, Iron, 10, 0.2, 0.1);
122 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
123 mBlock = geom->
MakeBox(nBlocks, Iron, 10, 0.2, 0.1);
127 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
128 mBlock = geom->
MakeBox(nBlocks, Iron, 10, 0.2, 0.1);
132 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
133 mBlock = geom->
MakeBox(nBlocks, Iron, 10, 0.2, 0.1);
137 for (
int k = 0; k < 7; k++) {
138 for (
int i = 0; i < 20; i++) {
139 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
140 mBlock = geom->
MakeBox(nBlocks, Iron, 0.6, 1.8, 63);
143 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
144 mBlock = geom->
MakeBox(nBlocks, Iron, 0.7, 1.8, 58);
148 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
149 mBlock = geom->
MakeBox(nBlocks, Iron, 26, 1.2, 63);
153 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
154 mBlock = geom->
MakeBox(nBlocks, Iron, 26, 2, 63);
158 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
159 mBlock = geom->
MakeBox(nBlocks, Iron, 82, 2, 82);
163 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
164 mBlock = geom->
MakeBox(nBlocks, Iron, 85, 0.5, 85);
168 sprintf(nBlocks,
"f%d_bg%d",
f,
N++);
169 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.
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.