Set new Geant Step size and related parameters for the ITS materials.
[u/mrichter/AliRoot.git] / ITS / AliITSvPPRasymm.cxx
CommitLineData
db915fea 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16/*
17$Log$
d236497b 18Revision 1.53 2001/11/28 01:35:45 nilsen
19Using standard constructors instead of default constructors for Clusterfinder,
20Response, and FastSimulator.
21
aa044888 22Revision 1.52 2001/10/22 11:00:54 hristov
23New naming schema of the rotation matrices in BuildGeometry() to avoid redefinition in other detectors (R.Barbera)
24
1266e9b4 25Revision 1.51 2001/10/19 10:18:49 barbera
26A typo corrected.
27
1d8d6507 28Revision 1.50 2001/10/18 12:25:07 barbera
29Detailed geometry in BuildGeometry() commented out (450 MB needed to compile the file). Six cylinders put back but improved by comparison with the ITS coarse geometry
30
ac9c285e 31Revision 1.49 2001/10/18 03:09:21 barbera
32The method BuildGeometry() has been completely rewritten. Now display.C can display the detailed ITS geometry instead of the old six dummy cylunders.
33
1f99c14b 34Revision 1.48 2001/10/17 04:35:32 barbera
35Checks for the det and chip thickness modified in order to set the dafault values to 200 um if the user chosen values are outside the range 100-300 um
36
a8c83dcb 37Revision 1.47 2001/10/04 22:33:39 nilsen
38Fixed bugs in SetDefaults.
39
82873bc1 40Revision 1.46 2001/10/01 19:34:08 nilsen
41Fixed a bug in asigning detector types in SetDefaults under SSD layer 6.
42
1570d46d 43Revision 1.45 2001/06/07 14:42:14 barbera
44Both chip and det thicknesses set to [100,300]
45
214030ed 46Revision 1.44 2001/05/31 19:24:47 barbera
47Default values of SPD detector and chip thickness set to 200 microns as defined by the Technical Board
48
46d7680e 49Revision 1.43 2001/05/30 16:15:47 fca
50Correct comparison wiht AliGeant3::Class() introduced. Thanks to I.Hrivnacova
51
cbfdea0d 52Revision 1.42 2001/05/30 15:55:35 hristov
53Strings compared instead of pointers
54
268b9c60 55Revision 1.41 2001/05/30 14:04:31 hristov
56Dynamic cast replaced (F.Carminati)
57
4154d3d8 58Revision 1.40 2001/05/25 15:59:59 morsch
59Overlaps corrected. (R. Barbera)
60
9bf5e8ff 61Revision 1.38 2001/05/16 08:17:49 hristov
62Bug fixed in the StepManager to account for the difference in the geometry tree for the ITS pixels. This fixes both the funny distribution of pixel coordinates and the missing hits/digits/points in many sectors of the ITS pixel barrel. Also included is a patch to properly get and use the detector dimensions through out the ITS code. (B.Nilsen)
63
e99dbc71 64Revision 1.37 2001/05/10 00:12:59 nilsen
65Finished fixing up the default segmentation for the PPR geometry.
66
c11a498e 67Revision 1.36 2001/05/09 01:02:21 nilsen
68Finished fixing SetDefaults for the segmentation of SPD, SDD, and SSD.
69
92cc4da1 70Revision 1.35 2001/05/03 08:40:15 barbera
71Volume ITSD slightly modified to be consistent with v5. Some improvement in the printouts. The last commit did not complete successfully.
72
1e9111db 73Revision 1.33 2001/05/01 22:40:42 nilsen
74Partical update of SetDefault.
75
2c198b76 76Revision 1.32 2001/04/22 13:48:09 barbera
77New values of media parameters and thickness of SPD end-ladder electronics as given by Fabio Formenti
78
fc44ab90 79Revision 1.31 2001/04/04 07:02:16 barbera
80Position of the cylinders holding rails corrected
81
27c5763c 82Revision 1.30 2001/03/29 22:02:30 barbera
83Some changes to the services due to the new drawings from the engineers.
84
05a91552 85Revision 1.29 2001/03/29 05:28:56 barbera
86Rails material changed from aluminum to carbon fiber according with the decision of the last Technical Board
87
31683195 88Revision 1.28 2001/03/28 06:40:20 barbera
89Central and services mother volumes made consistenf for detailed and coarse geometry. Switch for rails added to the coarse geometries
90
9181d340 91Revision 1.26 2001/03/23 00:12:23 nilsen
92Set Reading of AliITSgeom data from Geant3 common blocks as the default and
93not a .det file. Removed redundent calls to BuildGeometry.
94
0646a0e8 95Revision 1.25 2001/03/20 19:22:51 barbera
96Flags for the rails and the cooling fluid added. Some changes in the volumes of the SSD cones after the meeting with the engineers in Torino.
97
6d62fed9 98Revision 1.23 2001/03/13 21:18:44 barbera
99Some misleading comments removed
100
705eabd9 101Revision 1.22 2001/03/13 18:13:30 barbera
102Some mother volumes sligthly modified to eliminate an overlap with the absorber
103
45725ec9 104Revision 1.21 2001/03/13 08:36:23 hristov
105fabsf replaced by TMath::Abs
106
767187dd 107Revision 1.20 2001/03/13 00:17:41 barbera
108New SDD geometry got grom F. Tosello and checked by the SDD engineers
109
80272ed3 110Revision 1.19 2001/02/28 18:23:13 barbera
111Setters and getters to set/get the detector and chip thickness on SPD layers added
112
3d12a48d 113Revision 1.18 2001/02/27 23:18:24 barbera
114Full parameterization of detector and chip thicknesses for layer 1 and layer 2 of SPD as requested by the project leader
115
c47b75b1 116Revision 1.17 2001/02/19 22:14:55 nilsen
117Fix for all 4 versions 11, 12, 21, and 22.
118
63bb0827 119Revision 1.16 2001/02/19 20:10:34 barbera
120Set option=2 and thickness=2 as default values --> SetMinorVersion=22
121
dae60ad0 122Revision 1.15 2001/02/19 19:44:00 barbera
123Air density parameter corrected
124
6190d58a 125Revision 1.14 2001/02/13 16:53:35 nilsen
126Fixed a but when trying to use GEANT4. Needed to replace
127if(!((TGeant3*)gMC)) with if(!(dynamic_casst<TGeant3*>(gMC)))
128because just casting gMC to be TGeant3* even when it realy is a TGeant3 pointer
129did not result in a zero value. For AliITSv5asymm and AliITSv5symm, needed
130to fix a bug in the initilizers and a bug in BuildGeometry. This is now done
131in the same way as in AliITSv5.cxx.
132
9a4c6ea3 133Revision 1.13 2001/02/09 20:06:26 nilsen
134Fixed bug in distructor. Can't distroy fixxed length arrays. Thanks Peter.
135
58e13d99 136Revision 1.12 2001/02/09 13:53:38 barbera
137Int_t redefinition avoided
138
508f0c10 139Revision 1.11 2001/02/09 06:55:38 barbera
140SPD option re-set to B. It was A by mistake
141
3f1f65c1 142Revision 1.10 2001/02/09 00:05:31 nilsen
143Added fMajor/MinorVersion variables and made other changes to better make
144use of the new code changes in AliITSgeom related classes.
145
bae7e562 146
147Revision 1.9 2001/02/08 16:00:37 barbera
148New thicknesses (300+300 um) added for SPD chips and detectors and set as default. Many other refinements.
149
686e2715 150Revision 1.8 2001/02/06 08:03:44 barbera
151Material redefinition in SDD
152
39e6c65e 153Revision 1.7 2001/02/05 13:34:57 barbera
154Updated version of the ITS detailed geometry
155
de0a2a9c 156Revision 1.5 2001/01/30 09:23:13 hristov
157Streamers removed (R.Brun)
158
a8a6107b 159Revision 1.4 2001/01/23 20:08:03 barbera
160Option B for pixels implemented and set as default
161
a9c4129c 162Revision 1.3 2001/01/17 08:08:20 barbera
163Some media parameters modified
164
cd3a3507 165Revision 1.1.2.1 2001/01/15 13:38:08 barbera
166New ITS detailed geometry to be used for the PPR
167
db915fea 168*/
169
170///////////////////////////////////////////////////////////////////////////////
171// //
bae7e562 172// Inner Traking System version PPR asymmetric //
db915fea 173// This class contains the base procedures for the Inner Tracking System //
174// //
bae7e562 175// Authors: R. Barbera //
176// version 8. //
177// Created January 15 2001. //
178// //
179// NOTE: THIS IS THE ASYMMETRIC PPR geometry of the ITS. //
db915fea 180// //
181///////////////////////////////////////////////////////////////////////////////
cd3a3507 182
183// See AliITSvPPRasymm::StepManager().
bae7e562 184#include <iostream.h>
185#include <iomanip.h>
cd3a3507 186#include <stdio.h>
187#include <stdlib.h>
db915fea 188#include <TMath.h>
db915fea 189#include <TGeometry.h>
190#include <TNode.h>
191#include <TTUBE.h>
1f99c14b 192#include <TTUBS.h>
193#include <TPCON.h>
db915fea 194#include <TFile.h> // only required for Tracking function?
195#include <TCanvas.h>
196#include <TObjArray.h>
cd3a3507 197#include <TLorentzVector.h>
198#include <TObjString.h>
db915fea 199#include <TClonesArray.h>
cd3a3507 200#include <TBRIK.h>
201#include <TSystem.h>
db915fea 202
203#include "AliMC.h"
cd3a3507 204#include "AliRun.h"
db915fea 205#include "AliMagF.h"
206#include "AliConst.h"
cbfdea0d 207#include "AliGeant3.h"
bae7e562 208#include "AliITSGeant3Geometry.h"
db915fea 209#include "AliITShit.h"
cd3a3507 210#include "AliITS.h"
db915fea 211#include "AliITSvPPRasymm.h"
cd3a3507 212#include "AliITSgeom.h"
bae7e562 213#include "AliITSgeomSPD.h"
214#include "AliITSgeomSDD.h"
215#include "AliITSgeomSSD.h"
2c198b76 216#include "AliITSDetType.h"
217#include "AliITSresponseSPD.h"
218#include "AliITSresponseSDD.h"
219#include "AliITSresponseSSD.h"
220#include "AliITSsegmentationSPD.h"
221#include "AliITSsegmentationSDD.h"
222#include "AliITSsegmentationSSD.h"
82873bc1 223#include "AliITSsimulationSPD.h"
224#include "AliITSsimulationSDD.h"
225#include "AliITSsimulationSSD.h"
2c198b76 226#include "AliITSClusterFinderSPD.h"
227#include "AliITSClusterFinderSDD.h"
228#include "AliITSClusterFinderSSD.h"
db915fea 229
230
231ClassImp(AliITSvPPRasymm)
232
233//_____________________________________________________________________________
234AliITSvPPRasymm::AliITSvPPRasymm() {
235////////////////////////////////////////////////////////////////////////
236// Standard default constructor for the ITS version 8.
237////////////////////////////////////////////////////////////////////////
bae7e562 238 Int_t i;
239
240 fIdN = 0;
241 fIdName = 0;
242 fIdSens = 0;
243 fEuclidOut = kFALSE; // Don't write Euclide file
244 fGeomDetOut = kFALSE; // Don't write .det file
0646a0e8 245 fGeomDetIn = kFALSE; // Don't Read .det file
bae7e562 246 fMajorVersion = IsVersion();
247 fMinorVersion = -1;
248 for(i=0;i<60;i++) fRead[i] = '\0';
249 for(i=0;i<60;i++) fWrite[i] = '\0';
250 for(i=0;i<60;i++) fEuclidGeomDet[i] = '\0';
db915fea 251}
252//_____________________________________________________________________________
253AliITSvPPRasymm::AliITSvPPRasymm(const char *name, const char *title) : AliITS(name, title){
254////////////////////////////////////////////////////////////////////////
255// Standard constructor for the ITS version 8.
256////////////////////////////////////////////////////////////////////////
bae7e562 257 Int_t i;
258
259 fIdN = 6;
260 fIdName = new TString[fIdN];
261 fIdName[0] = "ITS1";
262 fIdName[1] = "ITS2";
263 fIdName[2] = "ITS3";
264 fIdName[3] = "ITS4";
265 fIdName[4] = "ITS5";
266 fIdName[5] = "ITS6";
267 fIdSens = new Int_t[fIdN];
268 for(i=0;i<fIdN;i++) fIdSens[i] = 0;
269 fMajorVersion = IsVersion();
3d12a48d 270 fMinorVersion = 2;
bae7e562 271 fEuclidOut = kFALSE; // Don't write Euclide file
272 fGeomDetOut = kFALSE; // Don't write .det file
0646a0e8 273 fGeomDetIn = kFALSE; // Don't Read .det file
3d12a48d 274 SetThicknessDet1();
275 SetThicknessDet2();
276 SetThicknessChip1();
277 SetThicknessChip2();
bae7e562 278
3d12a48d 279 fEuclidGeometry="$ALICE_ROOT/ITS/ITSgeometry_vPPRasymm2.euc";
280 strncpy(fEuclidGeomDet,"$ALICE_ROOT/ITS/ITSgeometry_vPPRasymm2.det",60);
bae7e562 281 strncpy(fRead,fEuclidGeomDet,60);
282 strncpy(fWrite,fEuclidGeomDet,60);
db915fea 283}
284//____________________________________________________________________________
285AliITSvPPRasymm::AliITSvPPRasymm(const AliITSvPPRasymm &source){
286////////////////////////////////////////////////////////////////////////
bae7e562 287// Copy Constructor for ITS version 8.
db915fea 288////////////////////////////////////////////////////////////////////////
289 if(&source == this) return;
bae7e562 290 Warning("Copy Constructor","Not allowed to copy AliITSvPPRasymm");
db915fea 291 return;
292}
293//_____________________________________________________________________________
294AliITSvPPRasymm& AliITSvPPRasymm::operator=(const AliITSvPPRasymm &source){
295////////////////////////////////////////////////////////////////////////
bae7e562 296// Assignment operator for the ITS version 8.
db915fea 297////////////////////////////////////////////////////////////////////////
bae7e562 298 if(&source == this) return *this;
299 Warning("= operator","Not allowed to copy AliITSvPPRasymm");
300 return *this;
db915fea 301}
302//_____________________________________________________________________________
303AliITSvPPRasymm::~AliITSvPPRasymm() {
304////////////////////////////////////////////////////////////////////////
305// Standard destructor for the ITS version 8.
306////////////////////////////////////////////////////////////////////////
307}
db915fea 308//__________________________________________________________________________
309void AliITSvPPRasymm::BuildGeometry(){
310////////////////////////////////////////////////////////////////////////
311// Geometry builder for the ITS version 8.
312////////////////////////////////////////////////////////////////////////
313 TNode *node, *top;
1f99c14b 314
ac9c285e 315 const Int_t kColorITS=kYellow;
db915fea 316 //
317 top = gAlice->GetGeometry()->GetNode("alice");
ac9c285e 318
1266e9b4 319
ac9c285e 320 new TTUBE("S_layer1","Layer1 of ITS","void",3.8095,3.8095+1.03*9.36/100.,14.35);
db915fea 321 top->cd();
322 node = new TNode("Layer1","Layer1","S_layer1",0,0,0,"");
323 node->SetLineColor(kColorITS);
324 fNodes->Add(node);
325
ac9c285e 326 new TTUBE("S_layer2","Layer2 of ITS","void",7.,7.+1.03*9.36/100.,14.35);
db915fea 327 top->cd();
328 node = new TNode("Layer2","Layer2","S_layer2",0,0,0,"");
329 node->SetLineColor(kColorITS);
330 fNodes->Add(node);
331
ac9c285e 332 new TTUBE("S_layer3","Layer3 of ITS","void",15.,15.+0.94*9.36/100.,25.1);
db915fea 333 top->cd();
334 node = new TNode("Layer3","Layer3","S_layer3",0,0,0,"");
335 node->SetLineColor(kColorITS);
336 fNodes->Add(node);
337
ac9c285e 338 new TTUBE("S_layer4","Layer4 of ITS","void",24.1,24.1+0.95*9.36/100.,32.1);
db915fea 339 top->cd();
340 node = new TNode("Layer4","Layer4","S_layer4",0,0,0,"");
341 node->SetLineColor(kColorITS);
342 fNodes->Add(node);
343
ac9c285e 344 new TTUBE("S_layer5","Layer5 of ITS","void",38.5,38.5+0.91*9.36/100.,49.405);
db915fea 345 top->cd();
346 node = new TNode("Layer5","Layer5","S_layer5",0,0,0,"");
347 node->SetLineColor(kColorITS);
348 fNodes->Add(node);
349
ac9c285e 350 new TTUBE("S_layer6","Layer6 of ITS","void",43.5765,43.5765+0.87*9.36/100.,55.27);
db915fea 351 top->cd();
352 node = new TNode("Layer6","Layer6","S_layer6",0,0,0,"");
353 node->SetLineColor(kColorITS);
1f99c14b 354 fNodes->Add(node);
1f99c14b 355
356
ac9c285e 357/*
358 // DETAILED GEOMETRY
359
360 TNode *sub1node, *sub2node, *sub3node, *sub4node, *sub5node;
361
1f99c14b 362 // Define some variables for SPD
363
364 Float_t dits[100];
365 Float_t dits1[3], di101[3], di107[3], di10b[3]; // for layer 1
366 Float_t di103[3], di10a[3]; // for layer 1
367 Float_t dits2[3], di1d1[3], di1d7[3], di20b[3]; // for layer 2
368 Float_t di1d3[3], di20a[3]; // for layer 2
369
370 Float_t ddet1=200.; // total detector thickness on layer 1 (micron)
371 Float_t dchip1=200.; // total chip thickness on layer 1 (micron)
372
373 Float_t ddet2=200.; // total detector thickness on layer 2 (micron)
374 Float_t dchip2=200.; // total chip thickness on layer 2 (micron)
375
376 Float_t dbus=300.; // total bus thickness on both layers (micron)
377
378 ddet1 = GetThicknessDet1();
379 ddet2 = GetThicknessDet2();
380 dchip1 = GetThicknessChip1();
381 dchip2 = GetThicknessChip2();
382
383 cout << "par: " << ddet1 << " " << ddet2 << " " << ddet2 << " " << dchip1 << " " << dchip2 << endl;
384
385 if(ddet1 < 100. || ddet1 > 300.) {
386 cout << "ITS - WARNING: the detector thickness for layer 1 is outside the range of [100,300] microns."
387 " The default value of 200 microns will be used." << endl;
388 ddet1=200.;
389 }
390
391 if(ddet2 < 100. || ddet2 > 300.) {
392 cout << "ITS - WARNING: the detector thickness for layer 2 is outside the range of [100,300] microns."
393 " The default value of 200 microns will be used." << endl;
394 ddet2=200.;
395 }
396
397 if(dchip1 < 100. || dchip1 > 300.) {
398 cout << "ITS - WARNING: the chip thickness for layer 1 is outside the range of [100,300] microns."
399 " The default value of 200 microns will be used." << endl;
400 dchip1=200.;
401 }
402
403 if(dchip2 < 100. || dchip2 > 300.) {
404 cout << "ITS - WARNING: the chip thickness for layer 2 is outside the range of [100,300] microns."
405 " The default value of 200 microns will be used." << endl;
406 dchip2=200.;
407 }
408
409 cout << "ITS: Detector thickness on layer 1 is set to " << ddet1 << " microns." << endl;
410 cout << "ITS: Chip thickness on layer 1 is set to " << dchip1 << " microns." << endl;
411 cout << "ITS: Detector thickness on layer 2 is set to " << ddet2 << " microns." << endl;
412 cout << "ITS: Chip thickness on layer 2 is set to " << dchip2 << " microns." << endl;
413
414 ddet1 = ddet1*0.0001/2.; // conversion from tot length in um to half in cm
415 ddet2 = ddet2*0.0001/2.; // conversion from tot length in um to half in cm
416 dchip1 = dchip1*0.0001/2.;// conversion from tot length in um to half in cm
417 dchip2 = dchip2*0.0001/2.;// conversion from tot length in um to half in cm
418 dbus = dbus*0.0001/2.; // conversion from tot length in um to half in cm
419
420 Float_t deltax, deltay;
421
422 Int_t thickness = fMinorVersion/10;
423 Int_t option = fMinorVersion - 10*thickness;
424
425
426 // Define some variables for SDD
427 // SDD detector ladder
428
429 Float_t ySDD;
430 Float_t I302dits[3], I402dits[3], I004dits[3], I005dits[3];
431 Float_t Y_SDD_sep = 0.20;
432 Float_t Z_SDD_lay3[6] = {18.55, 10.95, 3.70, -3.70, -11.20, -18.35};
433 Float_t Z_SDD_lay4[8] = {25.75, 18.60, 11.00, 3.70, -3.70, -11.20, -18.45, -26.05};
434
435 // Rotation matrices
436
437 // SPD - option 'a'
438
439 if (option == 1) {
440
1266e9b4 441 new TRotMatrix("itsrot238","itsrot238",90.0,144.0,90.0,234.0,0.0,0.0);
442 new TRotMatrix("itsrot236","itsrot236",90.0,180.013702,90.0,270.013702,0.0,0.0);
443 new TRotMatrix("itsrot239","itsrot239",90.0,216.0,90.0,306.0,0.0,0.0);
444 new TRotMatrix("itsrot233","itsrot233",90.0,252.000504,90.0,342.000488,0.0,0.0 );
445 new TRotMatrix("itsrot240","itsrot240",90.0,288.0,90.0,18.0,0.0,0.0);
446 new TRotMatrix("itsrot241","itsrot241",90.0,324.0,90.0,54.0,0.0,0.0);
447 new TRotMatrix("itsrot242","itsrot242",90.0,36.0,90.0,126.0,0.0,0.0);
448 new TRotMatrix("itsrot234","itsrot234",90.0,71.9991,90.0,161.9991,0.0,0.0);
449 new TRotMatrix("itsrot243","itsrot243",90.0,108.0,90.0,198.0,0.0,0.0);
450 new TRotMatrix("itsrot244","itsrot244",90.0,180.0,90.0,270.0,0.0,0.0);
451 new TRotMatrix("itsrot245","itsrot245",90.0,162.0,90.0,252.0,0.0,0.0);
452 new TRotMatrix("itsrot246","itsrot246",90.0,310.0,90.0,40.0,0.0,0.0);
453 new TRotMatrix("itsrot247","itsrot247",90.0,319.0,90.0,49.0,0.0,0.0);
454 new TRotMatrix("itsrot248","itsrot248",90.0,328.0,90.0,58.0,0.0,0.0);
455 new TRotMatrix("itsrot249","itsrot249",90.0,337.0,90.0,67.0,0.0,0.0);
1f99c14b 456
457 }
458
459 // SPD - option 'b' (this is the default)
460
461 if (option == 2) {
462
1266e9b4 463 new TRotMatrix("itsrot233","itsrot233",90.0,252.000504,90.0,342.000488,0.0,0.0);
464 new TRotMatrix("itsrot244","itsrot244",90.0,216.0,90.0,306.0,0.0,0.0);
465 new TRotMatrix("itsrot236","itsrot236",90.0,180.013702,90.0,270.013702,0.0,0.0);
466 new TRotMatrix("itsrot245","itsrot245",90.0,36.0,90.0,126.0,0.0,0.0);
467 new TRotMatrix("itsrot234","itsrot234",90.0,71.9991,90.0,161.9991,0.0,0.0);
468 new TRotMatrix("itsrot246","itsrot246",90.0,108.0,90.0,198.0,0.0,0.0);
469 new TRotMatrix("itsrot247","itsrot247",90.0,144.0,90.0,234.0,0.0,0.0);
470 new TRotMatrix("itsrot248","itsrot248",90.0,288.0,90.0,18.0,0.0,0.0);
471 new TRotMatrix("itsrot249","itsrot249",90.0,324.0,90.0,54.0,0.0,0.0);
472 new TRotMatrix("itsrot238","itsrot238",90.0,180.0,90.0,270.0,0.0,0.0);
473 new TRotMatrix("itsrot239","itsrot239",90.0,162.0,90.0,252.0,0.0,0.0);
474 new TRotMatrix("itsrot240","itsrot240",90.0,310.0,90.0,40.0,0.0,0.0);
475 new TRotMatrix("itsrot241","itsrot241",90.0,319.0,90.0,49.0,0.0,0.0);
476 new TRotMatrix("itsrot242","itsrot242",90.0,328.0,90.0,58.0,0.0,0.0);
477 new TRotMatrix("itsrot243","itsrot243",90.0,337.0,90.0,67.0,0.0,0.0);
1f99c14b 478
479 }
480
481 // SDD
482
1266e9b4 483 new TRotMatrix("itsrot321","itsrot321",90.0,12.86,90.0,102.86,0.0,0.0);
484 new TRotMatrix("itsrot333","itsrot333",90.0,38.57,90.0,128.57,0.0,0.0);
485 new TRotMatrix("itsrot336","itsrot336",90.0,64.29,90.0,154.29,0.0,0.0);
486 new TRotMatrix("itsrot350","itsrot350",90.0,90.0,90.0,180.0,0.0,0.0);
487 new TRotMatrix("itsrot313","itsrot313",90.0,115.71,90.0,205.71,0.0,0.0);
488 new TRotMatrix("itsrot311","itsrot311",90.0,141.43,90.0,231.43,0.0,0.0);
489 new TRotMatrix("itsrot310","itsrot310",90.0,167.14,90.0,257.14,0.0,0.0);
490 new TRotMatrix("itsrot386","itsrot386",90.0,192.86,90.0,282.86,0.0,0.0);
491 new TRotMatrix("itsrot309","itsrot309",90.0,218.57,90.0,308.57,0.0,0.0);
492 new TRotMatrix("itsrot308","itsrot308",90.0,244.29,90.0,334.29,0.0,0.0);
493 new TRotMatrix("itsrot356","itsrot356",90.0,270.0,90.0,0.0,0.0,0.0);
494 new TRotMatrix("itsrot307","itsrot307",90.0,295.71,90.0,25.71,0.0,0.0);
495 new TRotMatrix("itsrot306","itsrot306",90.0,321.43,90.0,51.43,0.0,0.0);
496 new TRotMatrix("itsrot305","itsrot305",90.0,347.14,90.0,77.14,0.0,0.0);
497 new TRotMatrix("itsrot335","itsrot335",90.0,8.18,90.0,98.18,0.0,0.0);
498 new TRotMatrix("itsrot332","itsrot332",90.0,24.55,90.0,114.55,0.0,0.0);
499 new TRotMatrix("itsrot331","itsrot331",90.0,40.91,90.0,130.91,0.0,0.0);
500 new TRotMatrix("itsrot366","itsrot366",90.0,57.27,90.0,147.27,0.0,0.0);
501 new TRotMatrix("itsrot330","itsrot330",90.0,73.64,90.0,163.64,0.0,0.0);
502 new TRotMatrix("itsrot350","itsrot350",90.0,90.0,90.0,180.0,0.0,0.0);
503 new TRotMatrix("itsrot329","itsrot329",90.0,106.36,90.0,196.36,0.0,0.0);
504 new TRotMatrix("itsrot328","itsrot328",90.0,122.73,90.0,212.73,0.0,0.0);
505 new TRotMatrix("itsrot327","itsrot327",90.0,139.09,90.0,229.09,0.0,0.0);
506 new TRotMatrix("itsrot326","itsrot326",90.0,155.45,90.0,245.45,0.0,0.0);
507 new TRotMatrix("itsrot325","itsrot325",90.0,171.82,90.0,261.82,0.0,0.0);
508 new TRotMatrix("itsrot324","itsrot324",90.0,188.18,90.0,278.18,0.0,0.0);
509 new TRotMatrix("itsrot323","itsrot323",90.0,204.55,90.0,294.55,0.0,0.0);
510 new TRotMatrix("itsrot322","itsrot322",90.0,220.91,90.0,310.91,0.0,0.0);
511 new TRotMatrix("itsrot320","itsrot320",90.0,237.27,90.0,327.27,0.0,0.0);
512 new TRotMatrix("itsrot319","itsrot319",90.0,253.64,90.0,343.64,0.0,0.0);
513 new TRotMatrix("itsrot318","itsrot318",90.0,270.0,90.0,360.0,0.0,0.0);
514 new TRotMatrix("itsrot317","itsrot317",90.0,286.36,90.0,16.36,0.0,0.0);
515 new TRotMatrix("itsrot316","itsrot316",90.0,302.73,90.0,32.73,0.0,0.0);
516 new TRotMatrix("itsrot315","itsrot315",90.0,319.09,90.0,49.09,0.0,0.0);
517 new TRotMatrix("itsrot314","itsrot314",90.0,335.45,90.0,65.45,0.0,0.0);
518 new TRotMatrix("itsrot334","itsrot334",90.0,351.82,90.0,81.82,0.0,0.0);
1f99c14b 519
520 //SSD
521
1266e9b4 522 new TRotMatrix("itsrot504","itsrot504",90.0,127.06,90.0,217.06,0.0,0.0);
523 new TRotMatrix("itsrot505","itsrot505",90.0,116.47,90.0,206.47,0.0,0.0);
524 new TRotMatrix("itsrot506","itsrot506",90.0,105.88,90.0,195.88,0.0,0.0);
525 new TRotMatrix("itsrot507","itsrot507",90.0,95.29,90.0,185.29,0.0,0.0);
526 new TRotMatrix("itsrot508","itsrot508",90.0,84.71,90.0,174.71,0.0,0.0);
527 new TRotMatrix("itsrot509","itsrot509",90.0,74.12,90.0,164.12,0.0,0.0);
528 new TRotMatrix("itsrot510","itsrot510",90.0,63.53,90.0,153.53,0.0,0.0);
529 new TRotMatrix("itsrot511","itsrot511",90.0,52.94,90.0,142.94,0.0,0.0);
530 new TRotMatrix("itsrot512","itsrot512",90.0,42.35,90.0,132.35,0.0,0.0);
531 new TRotMatrix("itsrot513","itsrot513",90.0,31.76,90.0,121.76,0.0,0.0);
532 new TRotMatrix("itsrot653","itsrot653",90.0,21.18,90.0,111.18,0.0,0.0);
533 new TRotMatrix("itsrot514","itsrot514",90.0,10.59,90.0,100.59,0.0,0.0);
534 new TRotMatrix("itsrot515","itsrot515",90.0,349.41,90.0,79.41,0.0,0.0);
535 new TRotMatrix("itsrot516","itsrot516",90.0,338.82,90.0,68.82,0.0,0.0);
536 new TRotMatrix("itsrot517","itsrot517",90.0,328.24,90.0,58.24,0.0,0.0);
537 new TRotMatrix("itsrot518","itsrot518",90.0,317.65,90.0,47.65,0.0,0.0);
538 new TRotMatrix("itsrot519","itsrot519",90.0,307.06,90.0,37.06,0.0,0.0);
539 new TRotMatrix("itsrot520","itsrot520",90.0,296.47,90.0,26.47,0.0,0.0);
540 new TRotMatrix("itsrot521","itsrot521",90.0,285.88,90.0,15.88,0.0,0.0);
541 new TRotMatrix("itsrot522","itsrot522",90.0,275.29,90.0,5.29,0.0,0.0);
542 new TRotMatrix("itsrot523","itsrot523",90.0,264.71,90.0,354.71,0.0,0.0);
543 new TRotMatrix("itsrot524","itsrot524",90.0,254.12,90.0,344.12,0.0,0.0);
544 new TRotMatrix("itsrot525","itsrot525",90.0,243.53,90.0,333.53,0.0,0.0);
545 new TRotMatrix("itsrot526","itsrot526",90.0,232.94,90.0,322.94,0.0,0.0);
546 new TRotMatrix("itsrot527","itsrot527",90.0,222.35,90.0,312.35,0.0,0.0);
547 new TRotMatrix("itsrot528","itsrot528",90.0,211.76,90.0,301.76,0.0,0.0);
548 new TRotMatrix("itsrot618","itsrot618",90.0,201.18,90.0,291.18,0.0,0.0);
549 new TRotMatrix("itsrot529","itsrot529",90.0,190.59,90.0,280.59,0.0,0.0);
550 new TRotMatrix("itsrot533","itsrot533",90.0,180.0,90.0,270.0,0.0,0.0);
551 new TRotMatrix("itsrot530","itsrot530",90.0,169.41,90.0,259.41,0.0,0.0);
552 new TRotMatrix("itsrot531","itsrot531",90.0,158.82,90.0,248.82,0.0,0.0);
553 new TRotMatrix("itsrot501","itsrot501",90.0,148.24,90.0,238.24,0.0,0.0);
554 new TRotMatrix("itsrot503","itsrot503",90.0,137.65,90.0,227.65,0.0,0.0);
555 new TRotMatrix("itsrot532","itsrot532",90.0,360.0,90.0,90.0,0.0,0.0);
556 new TRotMatrix("itsrot560","itsrot560",90.0,85.26,90.0,175.26,0.0,0.0);
557 new TRotMatrix("itsrot561","itsrot561",90.0,94.74,90.0,184.74,0.0,0.0);
558 new TRotMatrix("itsrot562","itsrot562",90.0,104.21,90.0,194.21,0.0,0.0);
559 new TRotMatrix("itsrot563","itsrot563",90.0,113.68,90.0,203.68,0.0,0.0);
560 new TRotMatrix("itsrot564","itsrot564",90.0,123.16,90.0,213.16,0.0,0.0);
561 new TRotMatrix("itsrot565","itsrot565",90.0,132.63,90.0,222.63,0.0,0.0);
562 new TRotMatrix("itsrot566","itsrot566",90.0,142.11,90.0,232.11,0.0,0.0);
563 new TRotMatrix("itsrot567","itsrot567",90.0,151.58,90.0,241.58,0.0,0.0);
564 new TRotMatrix("itsrot568","itsrot568",90.0,161.05,90.0,251.05,0.0,0.0);
565 new TRotMatrix("itsrot569","itsrot569",90.0,170.53,90.0,260.53,0.0,0.0);
566 new TRotMatrix("itsrot533","itsrot533",90.0,180.0,90.0,270.0,0.0,0.0);
567 new TRotMatrix("itsrot534","itsrot534",90.0,189.47,90.0,279.47,0.0,0.0);
568 new TRotMatrix("itsrot535","itsrot535",90.0,198.95,90.0,288.95,0.0,0.0);
569 new TRotMatrix("itsrot623","itsrot623",90.0,208.42,90.0,298.42,0.0,0.0);
570 new TRotMatrix("itsrot537","itsrot537",90.0,217.89,90.0,307.89,0.0,0.0);
571 new TRotMatrix("itsrot538","itsrot538",90.0,227.37,90.0,317.37,0.0,0.0);
572 new TRotMatrix("itsrot539","itsrot539",90.0,236.84,90.0,326.84,0.0,0.0);
573 new TRotMatrix("itsrot540","itsrot540",90.0,246.32,90.0,336.32,0.0,0.0);
574 new TRotMatrix("itsrot541","itsrot541",90.0,255.79,90.0,345.79,0.0,0.0);
575 new TRotMatrix("itsrot542","itsrot542",90.0,265.26,90.0,355.26,0.0,0.0);
576 new TRotMatrix("itsrot543","itsrot543",90.0,274.74,90.0,4.74,0.0,0.0);
577 new TRotMatrix("itsrot544","itsrot544",90.0,284.21,90.0,14.21,0.0,0.0);
578 new TRotMatrix("itsrot545","itsrot545",90.0,293.68,90.0,23.68,0.0,0.0);
579 new TRotMatrix("itsrot546","itsrot546",90.0,303.16,90.0,33.16,0.0,0.0);
580 new TRotMatrix("itsrot547","itsrot547",90.0,312.63,90.0,42.63,0.0,0.0);
581 new TRotMatrix("itsrot548","itsrot548",90.0,322.11,90.0,52.11,0.0,0.0);
582 new TRotMatrix("itsrot549","itsrot549",90.0,331.58,90.0,61.58,0.0,0.0);
583 new TRotMatrix("itsrot550","itsrot550",90.0,341.05,90.0,71.05,0.0,0.0);
584 new TRotMatrix("itsrot551","itsrot551",90.0,350.53,90.0,80.53,0.0,0.0);
585 new TRotMatrix("itsrot552","itsrot552",90.0,9.47,90.0,99.47,0.0,0.0);
586 new TRotMatrix("itsrot553","itsrot553",90.0,18.95,90.0,108.95,0.0,0.0);
587 new TRotMatrix("itsrot620","itsrot620",90.0,28.42,90.0,118.42,0.0,0.0);
588 new TRotMatrix("itsrot555","itsrot555",90.0,37.89,90.0,127.89,0.0,0.0);
589 new TRotMatrix("itsrot556","itsrot556",90.0,47.37,90.0,137.37,0.0,0.0);
590 new TRotMatrix("itsrot557","itsrot557",90.0,56.84,90.0,146.84,0.0,0.0);
591 new TRotMatrix("itsrot558","itsrot558",90.0,66.32,90.0,156.32,0.0,0.0);
592 new TRotMatrix("itsrot559","itsrot559",90.0,75.79,90.0,165.79,0.0,0.0);
1f99c14b 593
594
595 // --- Define SPD (option 'a') volumes ----------------------------
596
597 // SPD - option 'a'
598 // (this is NOT the default)
599
600 if (option == 1) {
601
602 dits1[0] = 0.64;
603 dits1[1] = ddet1;
604 dits1[2] = 3.48;
605 new TBRIK("ITS1","ITS1","void",dits1[0],dits1[1],dits1[2]);
606
607 dits2[0] = 0.64;
608 dits2[1] = ddet2;
609 dits2[2] = 3.48;
610 new TBRIK("ITS2","ITS2","void",dits2[0],dits2[1],dits2[2]);
611
612 di101[0] = 0.705;
613 di101[1] = ddet1;
614 di101[2] = 3.536;
615 new TBRIK("I101","I101","void",di101[0],di101[1],di101[2]);
616
617 di1d1[0] = 0.705;
618 di1d1[1] = ddet2;
619 di1d1[2] = 3.536;
620 new TBRIK("I1D1","I1D1","void",di1d1[0],di1d1[1],di1d1[2]);
621
622 di103[0] = 0.793;
623 di103[1] = ddet1+dchip1;
624 di103[2] = 3.536;
625 new TBRIK("I103","I103","void",di103[0],di103[1],di103[2]);
626
627 di1d3[0] = 0.793;
628 di1d3[1] = ddet2+dchip2;
629 di1d3[2] = 3.536;
630 new TBRIK("I1D3","I1D3","void",di1d3[0],di1d3[1],di1d3[2]);
631
632 di10a[0] = 0.843;
633 di10a[1] = ddet1+dchip1+dbus+0.0025;
634 di10a[2] = 19.344;
635 new TBRIK("I10A","I10A","void",di10a[0],di10a[1],di10a[2]);
636
637 di20a[0] = 0.843;
638 di20a[1] = ddet2+dchip2+dbus+0.0025;
639 di20a[2] = 19.344;
640 new TBRIK("I20A","I20A","void",di20a[0],di20a[1],di20a[2]);
641
642 dits[0] = 3.7;
643 dits[1] = 7.7;
644 dits[2] = 24;
645 dits[3] = 57;
646 dits[4] = 100;
647 new TTUBS("I12A","I12A","void",dits[0],dits[1],dits[2],dits[3],dits[4]);
648
649 dits[0] = 3.7;
650 dits[1] = 7.75;
651 dits[2] = 26.1;
652 new TTUBE("IT12","IT12","void",dits[0],dits[1],dits[2]);
653
654 }
655
656 // --- Define SPD (option 'b') volumes ----------------------------
657
658 // SPD - option 'b'
659 // (this is the default)
660
661 if (option == 2) {
662
663 dits1[0] = 0.64;
664 dits1[1] = ddet1;
665 dits1[2] = 3.48;
666 new TBRIK("ITS1","ITS1","void",dits1[0],dits1[1],dits1[2]);
667
668 dits2[0] = 0.64;
669 dits2[1] = ddet2;
670 dits2[2] = 3.48;
671 new TBRIK("ITS2","ITS2","void",dits2[0],dits2[1],dits2[2]);
672
673 di101[0] = 0.705;
674 di101[1] = ddet1;
675 di101[2] = 3.536;
676 new TBRIK("I101","I101","void",di101[0],di101[1],di101[2]);
677
678 di1d1[0] = 0.705;
679 di1d1[1] = ddet2;
680 di1d1[2] = 3.536;
681 new TBRIK("I1D1","I1D1","void",di1d1[0],di1d1[1],di1d1[2]);
682
683 di107[0] = 0.793;
684 di107[1] = ddet1+dchip1;
685 di107[2] = 3.536;
686 new TBRIK("I107","I107","void",di107[0],di107[1],di107[2]);
687
688 di1d7[0] = 0.7975;
689 di1d7[1] = ddet2+dchip2;
690 di1d7[2] = 3.536;
691 new TBRIK("I1D7","I1D7","void",di1d7[0],di1d7[1],di1d7[2]);
692
693 di10b[0] = 0.843;
694 di10b[1] = ddet1+dchip1+dbus+0.0025;
695 di10b[2] = 19.344;
696 new TBRIK("I10B","I10B","void",di10b[0],di10b[1],di10b[2]);
697
698 di20b[0] = 0.843;
699 di20b[1] = ddet2+dchip2+dbus+0.0025;
700 di20b[2] = 19.344;
701 new TBRIK("I20B","I20B","void",di20b[0],di20b[1],di20b[2]);
702
703 dits[0] = 3.7;
704 dits[1] = 7.7;
705 dits[2] = 24;
706 dits[3] = 57;
707 dits[4] = 100;
708 new TTUBS("I12B","I12B","void",dits[0],dits[1],dits[2],dits[3],dits[4]);
709
710 dits[0] = 3.7;
711 dits[1] = 7.75;
712 dits[2] = 26.1;
713 new TTUBE("IT12","IT12","void",dits[0],dits[1],dits[2]);
714
715
716 }
717
718 // --- Define SDD volumes ------------------------------------------
719
720 TPCON *it34 = new TPCON("IT34","IT34","void",0.,360.,6);
1d8d6507 721 it34->DefineSection(0,-34.6,23.49,28.);
722 it34->DefineSection(1,-23.65,23.49,28.);
723 it34->DefineSection(2,-23.65,14.59,28.);
724 it34->DefineSection(3,23.65,14.59,28.);
725 it34->DefineSection(4,23.65,23.49,28.);
726 it34->DefineSection(5,34.6,23.49,28.);
1f99c14b 727
728 I302dits[0] = 3.6250;
729 I302dits[1] = 0.0150;
730 I302dits[2] = 4.3794;
731 new TBRIK("I302","I302","void",I302dits[0],I302dits[1],I302dits[2]);
732
733 I004dits[0] = I302dits[0]+0.005;
734 I004dits[1] = 2*I302dits[1]+Y_SDD_sep/2.;
735 I004dits[2] = TMath::Abs(Z_SDD_lay3[0]);
736 if (I004dits[2] < TMath::Abs(Z_SDD_lay3[5])) {
737 I004dits[2] = TMath::Abs(Z_SDD_lay3[5]);
738 }
739 I004dits[2] = I004dits[2] + I302dits[2];
740 new TBRIK("I004","I004","void",I004dits[0],I004dits[1],I004dits[2]);
741
742 dits[0] = 3.50850;
743 dits[1] = 0.01499;
744 dits[2] = 3.76320;
745 new TBRIK("ITS3","ITS3","void",dits[0],dits[1],dits[2]);
746
747 I402dits[0] = 3.6250;
748 I402dits[1] = 0.0150;
749 I402dits[2] = 4.3794;
750 new TBRIK("I402","I402","void",I402dits[0],I402dits[1],I402dits[2]);
751
752 I005dits[0] = I402dits[0]+0.005;
753 I005dits[1] = 2*I402dits[1]+Y_SDD_sep/2.;
754 I005dits[2] = TMath::Abs(Z_SDD_lay4[0]);
755 if (I005dits[2] < TMath::Abs(Z_SDD_lay4[7])) {
756 I005dits[2] = TMath::Abs(Z_SDD_lay4[7]);
757 }
758 I005dits[2] = I005dits[2] + I402dits[2];
759 new TBRIK("I005","I005","void",I005dits[0],I005dits[1],I005dits[2]);
760
761 dits[0] = 3.50850;
762 dits[1] = 0.01499;
763 dits[2] = 3.76320;
764 new TBRIK("ITS4","ITS4","void",dits[0],dits[1],dits[2]);
765
766
767 // --- Define SSD volumes ------------------------------------------
768
769
770 TPCON *it56 = new TPCON("IT56","IT56","void",0.,360.,6);
1d8d6507 771 it56->DefineSection(0,-57.45,43.6,48.);
772 it56->DefineSection(1,-49.15,43.6,48.);
773 it56->DefineSection(2,-49.15,36.9,48.);
774 it56->DefineSection(3,50.55,36.9,48.);
775 it56->DefineSection(4,50.55,43.6,48.);
776 it56->DefineSection(5,57.45,43.6,48.);
1f99c14b 777
778 dits[0] = 3.75;
779 dits[1] = 0.045;
780 dits[2] = 43.3;
781 new TBRIK("I565","I565","void",dits[0],dits[1],dits[2]);
782
783 dits[0] = 3.75;
784 dits[1] = 0.045;
785 dits[2] = 50.975;
786 new TBRIK("I569","I569","void",dits[0],dits[1],dits[2]);
787
788 dits[0] = 3.75;
789 dits[1] = 0.015;
790 dits[2] = 2.1;
791 new TBRIK("I562","I562","void",dits[0],dits[1],dits[2]);
792
793 dits[0] = 3.75;
794 dits[1] = 0.015;
795 dits[2] = 2.1;
796 new TBRIK("I566","I566","void",dits[0],dits[1],dits[2]);
797
798 dits[0] = 3.65;
799 dits[1] = 0.015;
800 dits[2] = 2;
801 new TBRIK("ITS5","ITS5","void",dits[0],dits[1],dits[2]);
802
803 dits[0] = 3.65;
804 dits[1] = 0.015;
805 dits[2] = 2;
806 new TBRIK("ITS6","ITS6","void",dits[0],dits[1],dits[2]);
807
808 //
809
810 top->cd();
811
812 // --- Place SPD (option 'a') volumes into their mother volume
813
814 // SPD - option 'a'
815 // (this is NOT the default)
816
817 if (option == 1) {
818
819
820 }
821
822
823 // --- Place SPD (option 'b') volumes into their mother volume
824
825 // SPD - option 'b'
826 // (this is the default)
827
828 if (option == 2) {
829
830 // Place IT12 in Alice
831 //
832 node = new TNode("IT12","IT12","IT12",0.,0.,0.,"");
833 node->SetLineColor(kColorITS);
834 node->SetVisibility(0);
835 node->cd();
836 //
837 // Place copy #1 of I12B in IT12
838 //
839 sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"");
840 sub1node->SetLineColor(kColorITS);
841 sub1node->SetVisibility(0);
842 sub1node->cd();
843 //
844 // Place copy #1 of I10B in I12B
845 //
846 deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);
847 deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
1266e9b4 848 sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
1f99c14b 849 sub2node->SetLineColor(kColorITS);
850 sub2node->SetVisibility(0);
851 sub2node->cd();
852 //
853 // Place copy #1 of I107 in I10B
854 //
855 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
856 sub3node->SetLineColor(kColorITS);
857 sub3node->SetVisibility(0);
858 sub3node->cd();
859 //
860 // Place copy #1 of I101 in I107
861 //
862 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
863 sub4node->SetLineColor(kColorITS);
864 sub4node->SetVisibility(0);
865 sub4node->cd();
866 //
867 // Place copy #1 of ITS1 in I101
868 //
869 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
870 sub5node->SetLineColor(kColorITS);
871 fNodes->Add(sub5node);
872 sub4node->cd();
873 fNodes->Add(sub4node);
874 sub3node->cd();
875 fNodes->Add(sub3node);
876 sub2node->cd();
877 //
878 // Place copy #2 of I107 in I10B
879 //
880 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
881 sub3node->SetLineColor(kColorITS);
882 sub3node->SetVisibility(0);
883 sub3node->cd();
884 //
885 // Place copy #1 of I101 in I107
886 //
887 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
888 sub4node->SetLineColor(kColorITS);
889 sub4node->SetVisibility(0);
890 sub4node->cd();
891 //
892 // Place copy #1 of ITS1 in I101
893 //
894 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
895 sub5node->SetLineColor(kColorITS);
896 fNodes->Add(sub5node);
897 sub4node->cd();
898 fNodes->Add(sub4node);
899 sub3node->cd();
900 fNodes->Add(sub3node);
901 sub2node->cd();
902 //
903 // Place copy #3 of I107 in I10B
904 //
905 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
906 sub3node->SetLineColor(kColorITS);
907 sub3node->SetVisibility(0);
908 sub3node->cd();
909 //
910 // Place copy #1 of I101 in I107
911 //
912 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
913 sub4node->SetLineColor(kColorITS);
914 sub4node->SetVisibility(0);
915 sub4node->cd();
916 //
917 // Place copy #1 of ITS1 in I101
918 //
919 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
920 sub5node->SetLineColor(kColorITS);
921 fNodes->Add(sub5node);
922 sub4node->cd();
923 fNodes->Add(sub4node);
924 sub3node->cd();
925 fNodes->Add(sub3node);
926 sub2node->cd();
927 //
928 // Place copy #4 of I107 in I10B
929 //
930 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
931 sub3node->SetLineColor(kColorITS);
932 sub3node->SetVisibility(0);
933 sub3node->cd();
934 //
935 // Place copy #1 of I101 in I107
936 //
937 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
938 sub4node->SetLineColor(kColorITS);
939 sub4node->SetVisibility(0);
940 sub4node->cd();
941 //
942 // Place copy #1 of ITS1 in I101
943 //
944 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
945 sub5node->SetLineColor(kColorITS);
946 fNodes->Add(sub5node);
947 sub4node->cd();
948 fNodes->Add(sub4node);
949 sub3node->cd();
950 fNodes->Add(sub3node);
951 sub2node->cd();
952 fNodes->Add(sub2node);
953 sub1node->cd();
954 //
955 // Place copy #2 of I10B in I12B
956 //
957 deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);
958 deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
1266e9b4 959 sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
1f99c14b 960 sub2node->SetLineColor(kColorITS);
961 sub2node->SetVisibility(0);
962 sub2node->cd();
963 //
964 // Place copy #1 of I107 in I10B
965 //
966 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
967 sub3node->SetLineColor(kColorITS);
968 sub3node->SetVisibility(0);
969 sub3node->cd();
970 //
971 // Place copy #1 of I101 in I107
972 //
973 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
974 sub4node->SetLineColor(kColorITS);
975 sub4node->SetVisibility(0);
976 sub4node->cd();
977 //
978 // Place copy #1 of ITS1 in I101
979 //
980 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
981 sub5node->SetLineColor(kColorITS);
982 fNodes->Add(sub5node);
983 sub4node->cd();
984 fNodes->Add(sub4node);
985 sub3node->cd();
986 fNodes->Add(sub3node);
987 sub2node->cd();
988 //
989 // Place copy #2 of I107 in I10B
990 //
991 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
992 sub3node->SetLineColor(kColorITS);
993 sub3node->SetVisibility(0);
994 sub3node->cd();
995 //
996 // Place copy #1 of I101 in I107
997 //
998 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
999 sub4node->SetLineColor(kColorITS);
1000 sub4node->SetVisibility(0);
1001 sub4node->cd();
1002 //
1003 // Place copy #1 of ITS1 in I101
1004 //
1005 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1006 sub5node->SetLineColor(kColorITS);
1007 fNodes->Add(sub5node);
1008 sub4node->cd();
1009 fNodes->Add(sub4node);
1010 sub3node->cd();
1011 fNodes->Add(sub3node);
1012 sub2node->cd();
1013 //
1014 // Place copy #3 of I107 in I10B
1015 //
1016 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
1017 sub3node->SetLineColor(kColorITS);
1018 sub3node->SetVisibility(0);
1019 sub3node->cd();
1020 //
1021 // Place copy #1 of I101 in I107
1022 //
1023 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
1024 sub4node->SetLineColor(kColorITS);
1025 sub4node->SetVisibility(0);
1026 sub4node->cd();
1027 //
1028 // Place copy #1 of ITS1 in I101
1029 //
1030 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1031 sub5node->SetLineColor(kColorITS);
1032 fNodes->Add(sub5node);
1033 sub4node->cd();
1034 fNodes->Add(sub4node);
1035 sub3node->cd();
1036 fNodes->Add(sub3node);
1037 sub2node->cd();
1038 //
1039 // Place copy #4 of I107 in I10B
1040 //
1041 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
1042 sub3node->SetLineColor(kColorITS);
1043 sub3node->SetVisibility(0);
1044 sub3node->cd();
1045 //
1046 // Place copy #1 of I101 in I107
1047 //
1048 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
1049 sub4node->SetLineColor(kColorITS);
1050 sub4node->SetVisibility(0);
1051 sub4node->cd();
1052 //
1053 // Place copy #1 of ITS1 in I101
1054 //
1055 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1056 sub5node->SetLineColor(kColorITS);
1057 fNodes->Add(sub5node);
1058 sub4node->cd();
1059 fNodes->Add(sub4node);
1060 sub3node->cd();
1061 fNodes->Add(sub3node);
1062 sub2node->cd();
1063 fNodes->Add(sub2node);
1064 sub1node->cd();
1065 //
1066 // Place copy #1 of I20B in I12B
1067 //
1068 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);
1069 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
1266e9b4 1070 sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
1f99c14b 1071 sub2node->SetLineColor(kColorITS);
1072 sub2node->SetVisibility(0);
1073 sub2node->cd();
1074 //
1075 // Place copy #1 of I1D7 in I20B
1076 //
1077 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
1078 sub3node->SetLineColor(kColorITS);
1079 sub3node->SetVisibility(0);
1080 sub3node->cd();
1081 //
1082 // Place copy #1 of I1D1 in I1D7
1083 //
1084 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1085 sub4node->SetLineColor(kColorITS);
1086 sub4node->SetVisibility(0);
1087 sub4node->cd();
1088 //
1089 // Place copy #1 of ITS2 in I1D1
1090 //
1091 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1092 sub5node->SetLineColor(kColorITS);
1093 fNodes->Add(sub5node);
1094 sub4node->cd();
1095 fNodes->Add(sub4node);
1096 sub3node->cd();
1097 fNodes->Add(sub3node);
1098 sub2node->cd();
1099 //
1100 // Place copy #2 of I1D7 in I20B
1101 //
1102 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
1103 sub3node->SetLineColor(kColorITS);
1104 sub3node->SetVisibility(0);
1105 sub3node->cd();
1106 //
1107 // Place copy #1 of I1D1 in I1D7
1108 //
1109 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1110 sub4node->SetLineColor(kColorITS);
1111 sub4node->SetVisibility(0);
1112 sub4node->cd();
1113 //
1114 // Place copy #1 of ITS2 in I1D1
1115 //
1116 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1117 sub5node->SetLineColor(kColorITS);
1118 fNodes->Add(sub5node);
1119 sub4node->cd();
1120 fNodes->Add(sub4node);
1121 sub3node->cd();
1122 fNodes->Add(sub3node);
1123 sub2node->cd();
1124 //
1125 // Place copy #3 of I1D7 in I20B
1126 //
1127 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
1128 sub3node->SetLineColor(kColorITS);
1129 sub3node->SetVisibility(0);
1130 sub3node->cd();
1131 //
1132 // Place copy #1 of I1D1 in I1D7
1133 //
1134 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1135 sub4node->SetLineColor(kColorITS);
1136 sub4node->SetVisibility(0);
1137 sub4node->cd();
1138 //
1139 // Place copy #1 of ITS2 in I1D1
1140 //
1141 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1142 sub5node->SetLineColor(kColorITS);
1143 fNodes->Add(sub5node);
1144 sub4node->cd();
1145 fNodes->Add(sub4node);
1146 sub3node->cd();
1147 fNodes->Add(sub3node);
1148 sub2node->cd();
1149 //
1150 // Place copy #4 of I1D7 in I20B
1151 //
1152 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
1153 sub3node->SetLineColor(kColorITS);
1154 sub3node->SetVisibility(0);
1155 sub3node->cd();
1156 //
1157 // Place copy #1 of I1D1 in I1D7
1158 //
1159 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1160 sub4node->SetLineColor(kColorITS);
1161 sub4node->SetVisibility(0);
1162 sub4node->cd();
1163 //
1164 // Place copy #1 of ITS2 in I1D1
1165 //
1166 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1167 sub5node->SetLineColor(kColorITS);
1168 fNodes->Add(sub5node);
1169 sub4node->cd();
1170 fNodes->Add(sub4node);
1171 sub3node->cd();
1172 fNodes->Add(sub3node);
1173 sub2node->cd();
1174 fNodes->Add(sub2node);
1175 sub1node->cd();
1176 //
1177 // Place copy #2 of I20B in I12B
1178 //
1179 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);
1180 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
1266e9b4 1181 sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
1f99c14b 1182 sub2node->SetLineColor(kColorITS);
1183 sub2node->SetVisibility(0);
1184 sub2node->cd();
1185 //
1186 // Place copy #1 of I1D7 in I20B
1187 //
1188 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
1189 sub3node->SetLineColor(kColorITS);
1190 sub3node->SetVisibility(0);
1191 sub3node->cd();
1192 //
1193 // Place copy #1 of I1D1 in I1D7
1194 //
1195 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1196 sub4node->SetLineColor(kColorITS);
1197 sub4node->SetVisibility(0);
1198 sub4node->cd();
1199 //
1200 // Place copy #1 of ITS2 in I1D1
1201 //
1202 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1203 sub5node->SetLineColor(kColorITS);
1204 fNodes->Add(sub5node);
1205 sub4node->cd();
1206 fNodes->Add(sub4node);
1207 sub3node->cd();
1208 fNodes->Add(sub3node);
1209 sub2node->cd();
1210 //
1211 // Place copy #2 of I1D7 in I20B
1212 //
1213 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
1214 sub3node->SetLineColor(kColorITS);
1215 sub3node->SetVisibility(0);
1216 sub3node->cd();
1217 //
1218 // Place copy #1 of I1D1 in I1D7
1219 //
1220 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1221 sub4node->SetLineColor(kColorITS);
1222 sub4node->SetVisibility(0);
1223 sub4node->cd();
1224 //
1225 // Place copy #1 of ITS2 in I1D1
1226 //
1227 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1228 sub5node->SetLineColor(kColorITS);
1229 fNodes->Add(sub5node);
1230 sub4node->cd();
1231 fNodes->Add(sub4node);
1232 sub3node->cd();
1233 fNodes->Add(sub3node);
1234 sub2node->cd();
1235 //
1236 // Place copy #3 of I1D7 in I20B
1237 //
1238 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
1239 sub3node->SetLineColor(kColorITS);
1240 sub3node->SetVisibility(0);
1241 sub3node->cd();
1242 //
1243 // Place copy #1 of I1D1 in I1D7
1244 //
1245 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1246 sub4node->SetLineColor(kColorITS);
1247 sub4node->SetVisibility(0);
1248 sub4node->cd();
1249 //
1250 // Place copy #1 of ITS2 in I1D1
1251 //
1252 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1253 sub5node->SetLineColor(kColorITS);
1254 fNodes->Add(sub5node);
1255 sub4node->cd();
1256 fNodes->Add(sub4node);
1257 sub3node->cd();
1258 fNodes->Add(sub3node);
1259 sub2node->cd();
1260 //
1261 // Place copy #4 of I1D7 in I20B
1262 //
1263 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
1264 sub3node->SetLineColor(kColorITS);
1265 sub3node->SetVisibility(0);
1266 sub3node->cd();
1267 //
1268 // Place copy #1 of I1D1 in I1D7
1269 //
1270 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1271 sub4node->SetLineColor(kColorITS);
1272 sub4node->SetVisibility(0);
1273 sub4node->cd();
1274 //
1275 // Place copy #1 of ITS2 in I1D1
1276 //
1277 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1278 sub5node->SetLineColor(kColorITS);
1279 fNodes->Add(sub5node);
1280 sub4node->cd();
1281 fNodes->Add(sub4node);
1282 sub3node->cd();
1283 fNodes->Add(sub3node);
1284 sub2node->cd();
1285 fNodes->Add(sub2node);
1286 sub1node->cd();
1287 //
1288 // Place copy #3 of I20B in I12B
1289 //
1290 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);
1291 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
1266e9b4 1292 sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
1f99c14b 1293 sub2node->SetLineColor(kColorITS);
1294 sub2node->SetVisibility(0);
1295 sub2node->cd();
1296 //
1297 // Place copy #1 of I1D7 in I20B
1298 //
1299 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
1300 sub3node->SetLineColor(kColorITS);
1301 sub3node->SetVisibility(0);
1302 sub3node->cd();
1303 //
1304 // Place copy #1 of I1D1 in I1D7
1305 //
1306 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1307 sub4node->SetLineColor(kColorITS);
1308 sub4node->SetVisibility(0);
1309 sub4node->cd();
1310 //
1311 // Place copy #1 of ITS2 in I1D1
1312 //
1313 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1314 sub5node->SetLineColor(kColorITS);
1315 fNodes->Add(sub5node);
1316 sub4node->cd();
1317 fNodes->Add(sub4node);
1318 sub3node->cd();
1319 fNodes->Add(sub3node);
1320 sub2node->cd();
1321 //
1322 // Place copy #2 of I1D7 in I20B
1323 //
1324 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
1325 sub3node->SetLineColor(kColorITS);
1326 sub3node->SetVisibility(0);
1327 sub3node->cd();
1328 //
1329 // Place copy #1 of I1D1 in I1D7
1330 //
1331 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1332 sub4node->SetLineColor(kColorITS);
1333 sub4node->SetVisibility(0);
1334 sub4node->cd();
1335 //
1336 // Place copy #1 of ITS2 in I1D1
1337 //
1338 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1339 sub5node->SetLineColor(kColorITS);
1340 fNodes->Add(sub5node);
1341 sub4node->cd();
1342 fNodes->Add(sub4node);
1343 sub3node->cd();
1344 fNodes->Add(sub3node);
1345 sub2node->cd();
1346 //
1347 // Place copy #3 of I1D7 in I20B
1348 //
1349 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
1350 sub3node->SetLineColor(kColorITS);
1351 sub3node->SetVisibility(0);
1352 sub3node->cd();
1353 //
1354 // Place copy #1 of I1D1 in I1D7
1355 //
1356 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1357 sub4node->SetLineColor(kColorITS);
1358 sub4node->SetVisibility(0);
1359 sub4node->cd();
1360 //
1361 // Place copy #1 of ITS2 in I1D1
1362 //
1363 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1364 sub5node->SetLineColor(kColorITS);
1365 fNodes->Add(sub5node);
1366 sub4node->cd();
1367 fNodes->Add(sub4node);
1368 sub3node->cd();
1369 fNodes->Add(sub3node);
1370 sub2node->cd();
1371 //
1372 // Place copy #4 of I1D7 in I20B
1373 //
1374 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
1375 sub3node->SetLineColor(kColorITS);
1376 sub3node->SetVisibility(0);
1377 sub3node->cd();
1378 //
1379 // Place copy #1 of I1D1 in I1D7
1380 //
1381 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1382 sub4node->SetLineColor(kColorITS);
1383 sub4node->SetVisibility(0);
1384 sub4node->cd();
1385 //
1386 // Place copy #1 of ITS2 in I1D1
1387 //
1388 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1389 sub5node->SetLineColor(kColorITS);
1390 fNodes->Add(sub5node);
1391 sub4node->cd();
1392 fNodes->Add(sub4node);
1393 sub3node->cd();
1394 fNodes->Add(sub3node);
1395 sub2node->cd();
1396 fNodes->Add(sub2node);
1397 sub1node->cd();
1398 //
1399 // Place copy #4 of I20B in I12B
1400 //
1401 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);
1402 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
1266e9b4 1403 sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
1f99c14b 1404 sub2node->SetLineColor(kColorITS);
1405 sub2node->SetVisibility(0);
1406 sub2node->cd();
1407 //
1408 // Place copy #1 of I1D7 in I20B
1409 //
1410 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
1411 sub3node->SetLineColor(kColorITS);
1412 sub3node->SetVisibility(0);
1413 sub3node->cd();
1414 //
1415 // Place copy #1 of I1D1 in I1D7
1416 //
1417 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1418 sub4node->SetLineColor(kColorITS);
1419 sub4node->SetVisibility(0);
1420 sub4node->cd();
1421 //
1422 // Place copy #1 of ITS2 in I1D1
1423 //
1424 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1425 sub5node->SetLineColor(kColorITS);
1426 fNodes->Add(sub5node);
1427 sub4node->cd();
1428 fNodes->Add(sub4node);
1429 sub3node->cd();
1430 fNodes->Add(sub3node);
1431 sub2node->cd();
1432 //
1433 // Place copy #2 of I1D7 in I20B
1434 //
1435 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
1436 sub3node->SetLineColor(kColorITS);
1437 sub3node->SetVisibility(0);
1438 sub3node->cd();
1439 //
1440 // Place copy #1 of I1D1 in I1D7
1441 //
1442 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1443 sub4node->SetLineColor(kColorITS);
1444 sub4node->SetVisibility(0);
1445 sub4node->cd();
1446 //
1447 // Place copy #1 of ITS2 in I1D1
1448 //
1449 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1450 sub5node->SetLineColor(kColorITS);
1451 fNodes->Add(sub5node);
1452 sub4node->cd();
1453 fNodes->Add(sub4node);
1454 sub3node->cd();
1455 fNodes->Add(sub3node);
1456 sub2node->cd();
1457 //
1458 // Place copy #3 of I1D7 in I20B
1459 //
1460 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
1461 sub3node->SetLineColor(kColorITS);
1462 sub3node->SetVisibility(0);
1463 sub3node->cd();
1464 //
1465 // Place copy #1 of I1D1 in I1D7
1466 //
1467 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1468 sub4node->SetLineColor(kColorITS);
1469 sub4node->SetVisibility(0);
1470 sub4node->cd();
1471 //
1472 // Place copy #1 of ITS2 in I1D1
1473 //
1474 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1475 sub5node->SetLineColor(kColorITS);
1476 fNodes->Add(sub5node);
1477 sub4node->cd();
1478 fNodes->Add(sub4node);
1479 sub3node->cd();
1480 fNodes->Add(sub3node);
1481 sub2node->cd();
1482 //
1483 // Place copy #4 of I1D7 in I20B
1484 //
1485 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
1486 sub3node->SetLineColor(kColorITS);
1487 sub3node->SetVisibility(0);
1488 sub3node->cd();
1489 //
1490 // Place copy #1 of I1D1 in I1D7
1491 //
1492 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1493 sub4node->SetLineColor(kColorITS);
1494 sub4node->SetVisibility(0);
1495 sub4node->cd();
1496 //
1497 // Place copy #1 of ITS2 in I1D1
1498 //
1499 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1500 sub5node->SetLineColor(kColorITS);
1501 fNodes->Add(sub5node);
1502 sub4node->cd();
1503 fNodes->Add(sub4node);
1504 sub3node->cd();
1505 fNodes->Add(sub3node);
1506 sub2node->cd();
1507 fNodes->Add(sub2node);
1508 sub1node->cd();
1509 fNodes->Add(sub1node);
1510 node->cd();
1511 //
1512 // Place copy #2 of I12B in IT12
1513 //
1266e9b4 1514 sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot245");
1f99c14b 1515 sub1node->SetLineColor(kColorITS);
1516 sub1node->SetVisibility(0);
1517 sub1node->cd();
1518 //
1519 // Place copy #1 of I10B in I12B
1520 //
1521 deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);
1522 deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
1266e9b4 1523 sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
1f99c14b 1524 sub2node->SetLineColor(kColorITS);
1525 sub2node->SetVisibility(0);
1526 sub2node->cd();
1527 //
1528 // Place copy #1 of I107 in I10B
1529 //
1530 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
1531 sub3node->SetLineColor(kColorITS);
1532 sub3node->SetVisibility(0);
1533 sub3node->cd();
1534 //
1535 // Place copy #1 of I101 in I107
1536 //
1537 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
1538 sub4node->SetLineColor(kColorITS);
1539 sub4node->SetVisibility(0);
1540 sub4node->cd();
1541 //
1542 // Place copy #1 of ITS1 in I101
1543 //
1544 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1545 sub5node->SetLineColor(kColorITS);
1546 fNodes->Add(sub5node);
1547 sub4node->cd();
1548 fNodes->Add(sub4node);
1549 sub3node->cd();
1550 fNodes->Add(sub3node);
1551 sub2node->cd();
1552 //
1553 // Place copy #2 of I107 in I10B
1554 //
1555 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
1556 sub3node->SetLineColor(kColorITS);
1557 sub3node->SetVisibility(0);
1558 sub3node->cd();
1559 //
1560 // Place copy #1 of I101 in I107
1561 //
1562 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
1563 sub4node->SetLineColor(kColorITS);
1564 sub4node->SetVisibility(0);
1565 sub4node->cd();
1566 //
1567 // Place copy #1 of ITS1 in I101
1568 //
1569 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1570 sub5node->SetLineColor(kColorITS);
1571 fNodes->Add(sub5node);
1572 sub4node->cd();
1573 fNodes->Add(sub4node);
1574 sub3node->cd();
1575 fNodes->Add(sub3node);
1576 sub2node->cd();
1577 //
1578 // Place copy #3 of I107 in I10B
1579 //
1580 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
1581 sub3node->SetLineColor(kColorITS);
1582 sub3node->SetVisibility(0);
1583 sub3node->cd();
1584 //
1585 // Place copy #1 of I101 in I107
1586 //
1587 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
1588 sub4node->SetLineColor(kColorITS);
1589 sub4node->SetVisibility(0);
1590 sub4node->cd();
1591 //
1592 // Place copy #1 of ITS1 in I101
1593 //
1594 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1595 sub5node->SetLineColor(kColorITS);
1596 fNodes->Add(sub5node);
1597 sub4node->cd();
1598 fNodes->Add(sub4node);
1599 sub3node->cd();
1600 fNodes->Add(sub3node);
1601 sub2node->cd();
1602 //
1603 // Place copy #4 of I107 in I10B
1604 //
1605 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
1606 sub3node->SetLineColor(kColorITS);
1607 sub3node->SetVisibility(0);
1608 sub3node->cd();
1609 //
1610 // Place copy #1 of I101 in I107
1611 //
1612 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
1613 sub4node->SetLineColor(kColorITS);
1614 sub4node->SetVisibility(0);
1615 sub4node->cd();
1616 //
1617 // Place copy #1 of ITS1 in I101
1618 //
1619 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1620 sub5node->SetLineColor(kColorITS);
1621 fNodes->Add(sub5node);
1622 sub4node->cd();
1623 fNodes->Add(sub4node);
1624 sub3node->cd();
1625 fNodes->Add(sub3node);
1626 sub2node->cd();
1627 fNodes->Add(sub2node);
1628 sub1node->cd();
1629 //
1630 // Place copy #2 of I10B in I12B
1631 //
1632 deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);
1633 deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
1266e9b4 1634 sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
1f99c14b 1635 sub2node->SetLineColor(kColorITS);
1636 sub2node->SetVisibility(0);
1637 sub2node->cd();
1638 //
1639 // Place copy #1 of I107 in I10B
1640 //
1641 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
1642 sub3node->SetLineColor(kColorITS);
1643 sub3node->SetVisibility(0);
1644 sub3node->cd();
1645 //
1646 // Place copy #1 of I101 in I107
1647 //
1648 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
1649 sub4node->SetLineColor(kColorITS);
1650 sub4node->SetVisibility(0);
1651 sub4node->cd();
1652 //
1653 // Place copy #1 of ITS1 in I101
1654 //
1655 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1656 sub5node->SetLineColor(kColorITS);
1657 fNodes->Add(sub5node);
1658 sub4node->cd();
1659 fNodes->Add(sub4node);
1660 sub3node->cd();
1661 fNodes->Add(sub3node);
1662 sub2node->cd();
1663 //
1664 // Place copy #2 of I107 in I10B
1665 //
1666 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
1667 sub3node->SetLineColor(kColorITS);
1668 sub3node->SetVisibility(0);
1669 sub3node->cd();
1670 //
1671 // Place copy #1 of I101 in I107
1672 //
1673 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
1674 sub4node->SetLineColor(kColorITS);
1675 sub4node->SetVisibility(0);
1676 sub4node->cd();
1677 //
1678 // Place copy #1 of ITS1 in I101
1679 //
1680 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1681 sub5node->SetLineColor(kColorITS);
1682 fNodes->Add(sub5node);
1683 sub4node->cd();
1684 fNodes->Add(sub4node);
1685 sub3node->cd();
1686 fNodes->Add(sub3node);
1687 sub2node->cd();
1688 //
1689 // Place copy #3 of I107 in I10B
1690 //
1691 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
1692 sub3node->SetLineColor(kColorITS);
1693 sub3node->SetVisibility(0);
1694 sub3node->cd();
1695 //
1696 // Place copy #1 of I101 in I107
1697 //
1698 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
1699 sub4node->SetLineColor(kColorITS);
1700 sub4node->SetVisibility(0);
1701 sub4node->cd();
1702 //
1703 // Place copy #1 of ITS1 in I101
1704 //
1705 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1706 sub5node->SetLineColor(kColorITS);
1707 fNodes->Add(sub5node);
1708 sub4node->cd();
1709 fNodes->Add(sub4node);
1710 sub3node->cd();
1711 fNodes->Add(sub3node);
1712 sub2node->cd();
1713 //
1714 // Place copy #4 of I107 in I10B
1715 //
1716 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
1717 sub3node->SetLineColor(kColorITS);
1718 sub3node->SetVisibility(0);
1719 sub3node->cd();
1720 //
1721 // Place copy #1 of I101 in I107
1722 //
1723 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
1724 sub4node->SetLineColor(kColorITS);
1725 sub4node->SetVisibility(0);
1726 sub4node->cd();
1727 //
1728 // Place copy #1 of ITS1 in I101
1729 //
1730 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
1731 sub5node->SetLineColor(kColorITS);
1732 fNodes->Add(sub5node);
1733 sub4node->cd();
1734 fNodes->Add(sub4node);
1735 sub3node->cd();
1736 fNodes->Add(sub3node);
1737 sub2node->cd();
1738 fNodes->Add(sub2node);
1739 sub1node->cd();
1740 //
1741 // Place copy #1 of I20B in I12B
1742 //
1743 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);
1744 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
1266e9b4 1745 sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
1f99c14b 1746 sub2node->SetLineColor(kColorITS);
1747 sub2node->SetVisibility(0);
1748 sub2node->cd();
1749 //
1750 // Place copy #1 of I1D7 in I20B
1751 //
1752 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
1753 sub3node->SetLineColor(kColorITS);
1754 sub3node->SetVisibility(0);
1755 sub3node->cd();
1756 //
1757 // Place copy #1 of I1D1 in I1D7
1758 //
1759 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1760 sub4node->SetLineColor(kColorITS);
1761 sub4node->SetVisibility(0);
1762 sub4node->cd();
1763 //
1764 // Place copy #1 of ITS2 in I1D1
1765 //
1766 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1767 sub5node->SetLineColor(kColorITS);
1768 fNodes->Add(sub5node);
1769 sub4node->cd();
1770 fNodes->Add(sub4node);
1771 sub3node->cd();
1772 fNodes->Add(sub3node);
1773 sub2node->cd();
1774 //
1775 // Place copy #2 of I1D7 in I20B
1776 //
1777 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
1778 sub3node->SetLineColor(kColorITS);
1779 sub3node->SetVisibility(0);
1780 sub3node->cd();
1781 //
1782 // Place copy #1 of I1D1 in I1D7
1783 //
1784 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1785 sub4node->SetLineColor(kColorITS);
1786 sub4node->SetVisibility(0);
1787 sub4node->cd();
1788 //
1789 // Place copy #1 of ITS2 in I1D1
1790 //
1791 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1792 sub5node->SetLineColor(kColorITS);
1793 fNodes->Add(sub5node);
1794 sub4node->cd();
1795 fNodes->Add(sub4node);
1796 sub3node->cd();
1797 fNodes->Add(sub3node);
1798 sub2node->cd();
1799 //
1800 // Place copy #3 of I1D7 in I20B
1801 //
1802 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
1803 sub3node->SetLineColor(kColorITS);
1804 sub3node->SetVisibility(0);
1805 sub3node->cd();
1806 //
1807 // Place copy #1 of I1D1 in I1D7
1808 //
1809 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1810 sub4node->SetLineColor(kColorITS);
1811 sub4node->SetVisibility(0);
1812 sub4node->cd();
1813 //
1814 // Place copy #1 of ITS2 in I1D1
1815 //
1816 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1817 sub5node->SetLineColor(kColorITS);
1818 fNodes->Add(sub5node);
1819 sub4node->cd();
1820 fNodes->Add(sub4node);
1821 sub3node->cd();
1822 fNodes->Add(sub3node);
1823 sub2node->cd();
1824 //
1825 // Place copy #4 of I1D7 in I20B
1826 //
1827 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
1828 sub3node->SetLineColor(kColorITS);
1829 sub3node->SetVisibility(0);
1830 sub3node->cd();
1831 //
1832 // Place copy #1 of I1D1 in I1D7
1833 //
1834 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1835 sub4node->SetLineColor(kColorITS);
1836 sub4node->SetVisibility(0);
1837 sub4node->cd();
1838 //
1839 // Place copy #1 of ITS2 in I1D1
1840 //
1841 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1842 sub5node->SetLineColor(kColorITS);
1843 fNodes->Add(sub5node);
1844 sub4node->cd();
1845 fNodes->Add(sub4node);
1846 sub3node->cd();
1847 fNodes->Add(sub3node);
1848 sub2node->cd();
1849 fNodes->Add(sub2node);
1850 sub1node->cd();
1851 //
1852 // Place copy #2 of I20B in I12B
1853 //
1854 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);
1855 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
1266e9b4 1856 sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
1f99c14b 1857 sub2node->SetLineColor(kColorITS);
1858 sub2node->SetVisibility(0);
1859 sub2node->cd();
1860 //
1861 // Place copy #1 of I1D7 in I20B
1862 //
1863 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
1864 sub3node->SetLineColor(kColorITS);
1865 sub3node->SetVisibility(0);
1866 sub3node->cd();
1867 //
1868 // Place copy #1 of I1D1 in I1D7
1869 //
1870 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1871 sub4node->SetLineColor(kColorITS);
1872 sub4node->SetVisibility(0);
1873 sub4node->cd();
1874 //
1875 // Place copy #1 of ITS2 in I1D1
1876 //
1877 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1878 sub5node->SetLineColor(kColorITS);
1879 fNodes->Add(sub5node);
1880 sub4node->cd();
1881 fNodes->Add(sub4node);
1882 sub3node->cd();
1883 fNodes->Add(sub3node);
1884 sub2node->cd();
1885 //
1886 // Place copy #2 of I1D7 in I20B
1887 //
1888 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
1889 sub3node->SetLineColor(kColorITS);
1890 sub3node->SetVisibility(0);
1891 sub3node->cd();
1892 //
1893 // Place copy #1 of I1D1 in I1D7
1894 //
1895 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1896 sub4node->SetLineColor(kColorITS);
1897 sub4node->SetVisibility(0);
1898 sub4node->cd();
1899 //
1900 // Place copy #1 of ITS2 in I1D1
1901 //
1902 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1903 sub5node->SetLineColor(kColorITS);
1904 fNodes->Add(sub5node);
1905 sub4node->cd();
1906 fNodes->Add(sub4node);
1907 sub3node->cd();
1908 fNodes->Add(sub3node);
1909 sub2node->cd();
1910 //
1911 // Place copy #3 of I1D7 in I20B
1912 //
1913 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
1914 sub3node->SetLineColor(kColorITS);
1915 sub3node->SetVisibility(0);
1916 sub3node->cd();
1917 //
1918 // Place copy #1 of I1D1 in I1D7
1919 //
1920 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1921 sub4node->SetLineColor(kColorITS);
1922 sub4node->SetVisibility(0);
1923 sub4node->cd();
1924 //
1925 // Place copy #1 of ITS2 in I1D1
1926 //
1927 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1928 sub5node->SetLineColor(kColorITS);
1929 fNodes->Add(sub5node);
1930 sub4node->cd();
1931 fNodes->Add(sub4node);
1932 sub3node->cd();
1933 fNodes->Add(sub3node);
1934 sub2node->cd();
1935 //
1936 // Place copy #4 of I1D7 in I20B
1937 //
1938 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
1939 sub3node->SetLineColor(kColorITS);
1940 sub3node->SetVisibility(0);
1941 sub3node->cd();
1942 //
1943 // Place copy #1 of I1D1 in I1D7
1944 //
1945 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1946 sub4node->SetLineColor(kColorITS);
1947 sub4node->SetVisibility(0);
1948 sub4node->cd();
1949 //
1950 // Place copy #1 of ITS2 in I1D1
1951 //
1952 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1953 sub5node->SetLineColor(kColorITS);
1954 fNodes->Add(sub5node);
1955 sub4node->cd();
1956 fNodes->Add(sub4node);
1957 sub3node->cd();
1958 fNodes->Add(sub3node);
1959 sub2node->cd();
1960 fNodes->Add(sub2node);
1961 sub1node->cd();
1962 //
1963 // Place copy #3 of I20B in I12B
1964 //
1965 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);
1966 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
1266e9b4 1967 sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
1f99c14b 1968 sub2node->SetLineColor(kColorITS);
1969 sub2node->SetVisibility(0);
1970 sub2node->cd();
1971 //
1972 // Place copy #1 of I1D7 in I20B
1973 //
1974 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
1975 sub3node->SetLineColor(kColorITS);
1976 sub3node->SetVisibility(0);
1977 sub3node->cd();
1978 //
1979 // Place copy #1 of I1D1 in I1D7
1980 //
1981 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
1982 sub4node->SetLineColor(kColorITS);
1983 sub4node->SetVisibility(0);
1984 sub4node->cd();
1985 //
1986 // Place copy #1 of ITS2 in I1D1
1987 //
1988 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
1989 sub5node->SetLineColor(kColorITS);
1990 fNodes->Add(sub5node);
1991 sub4node->cd();
1992 fNodes->Add(sub4node);
1993 sub3node->cd();
1994 fNodes->Add(sub3node);
1995 sub2node->cd();
1996 //
1997 // Place copy #2 of I1D7 in I20B
1998 //
1999 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
2000 sub3node->SetLineColor(kColorITS);
2001 sub3node->SetVisibility(0);
2002 sub3node->cd();
2003 //
2004 // Place copy #1 of I1D1 in I1D7
2005 //
2006 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2007 sub4node->SetLineColor(kColorITS);
2008 sub4node->SetVisibility(0);
2009 sub4node->cd();
2010 //
2011 // Place copy #1 of ITS2 in I1D1
2012 //
2013 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2014 sub5node->SetLineColor(kColorITS);
2015 fNodes->Add(sub5node);
2016 sub4node->cd();
2017 fNodes->Add(sub4node);
2018 sub3node->cd();
2019 fNodes->Add(sub3node);
2020 sub2node->cd();
2021 //
2022 // Place copy #3 of I1D7 in I20B
2023 //
2024 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
2025 sub3node->SetLineColor(kColorITS);
2026 sub3node->SetVisibility(0);
2027 sub3node->cd();
2028 //
2029 // Place copy #1 of I1D1 in I1D7
2030 //
2031 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2032 sub4node->SetLineColor(kColorITS);
2033 sub4node->SetVisibility(0);
2034 sub4node->cd();
2035 //
2036 // Place copy #1 of ITS2 in I1D1
2037 //
2038 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2039 sub5node->SetLineColor(kColorITS);
2040 fNodes->Add(sub5node);
2041 sub4node->cd();
2042 fNodes->Add(sub4node);
2043 sub3node->cd();
2044 fNodes->Add(sub3node);
2045 sub2node->cd();
2046 //
2047 // Place copy #4 of I1D7 in I20B
2048 //
2049 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
2050 sub3node->SetLineColor(kColorITS);
2051 sub3node->SetVisibility(0);
2052 sub3node->cd();
2053 //
2054 // Place copy #1 of I1D1 in I1D7
2055 //
2056 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2057 sub4node->SetLineColor(kColorITS);
2058 sub4node->SetVisibility(0);
2059 sub4node->cd();
2060 //
2061 // Place copy #1 of ITS2 in I1D1
2062 //
2063 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2064 sub5node->SetLineColor(kColorITS);
2065 fNodes->Add(sub5node);
2066 sub4node->cd();
2067 fNodes->Add(sub4node);
2068 sub3node->cd();
2069 fNodes->Add(sub3node);
2070 sub2node->cd();
2071 fNodes->Add(sub2node);
2072 sub1node->cd();
2073 //
2074 // Place copy #4 of I20B in I12B
2075 //
2076 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);
2077 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
1266e9b4 2078 sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
1f99c14b 2079 sub2node->SetLineColor(kColorITS);
2080 sub2node->SetVisibility(0);
2081 sub2node->cd();
2082 //
2083 // Place copy #1 of I1D7 in I20B
2084 //
2085 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
2086 sub3node->SetLineColor(kColorITS);
2087 sub3node->SetVisibility(0);
2088 sub3node->cd();
2089 //
2090 // Place copy #1 of I1D1 in I1D7
2091 //
2092 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2093 sub4node->SetLineColor(kColorITS);
2094 sub4node->SetVisibility(0);
2095 sub4node->cd();
2096 //
2097 // Place copy #1 of ITS2 in I1D1
2098 //
2099 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2100 sub5node->SetLineColor(kColorITS);
2101 fNodes->Add(sub5node);
2102 sub4node->cd();
2103 fNodes->Add(sub4node);
2104 sub3node->cd();
2105 fNodes->Add(sub3node);
2106 sub2node->cd();
2107 //
2108 // Place copy #2 of I1D7 in I20B
2109 //
2110 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
2111 sub3node->SetLineColor(kColorITS);
2112 sub3node->SetVisibility(0);
2113 sub3node->cd();
2114 //
2115 // Place copy #1 of I1D1 in I1D7
2116 //
2117 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2118 sub4node->SetLineColor(kColorITS);
2119 sub4node->SetVisibility(0);
2120 sub4node->cd();
2121 //
2122 // Place copy #1 of ITS2 in I1D1
2123 //
2124 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2125 sub5node->SetLineColor(kColorITS);
2126 fNodes->Add(sub5node);
2127 sub4node->cd();
2128 fNodes->Add(sub4node);
2129 sub3node->cd();
2130 fNodes->Add(sub3node);
2131 sub2node->cd();
2132 //
2133 // Place copy #3 of I1D7 in I20B
2134 //
2135 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
2136 sub3node->SetLineColor(kColorITS);
2137 sub3node->SetVisibility(0);
2138 sub3node->cd();
2139 //
2140 // Place copy #1 of I1D1 in I1D7
2141 //
2142 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2143 sub4node->SetLineColor(kColorITS);
2144 sub4node->SetVisibility(0);
2145 sub4node->cd();
2146 //
2147 // Place copy #1 of ITS2 in I1D1
2148 //
2149 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2150 sub5node->SetLineColor(kColorITS);
2151 fNodes->Add(sub5node);
2152 sub4node->cd();
2153 fNodes->Add(sub4node);
2154 sub3node->cd();
2155 fNodes->Add(sub3node);
2156 sub2node->cd();
2157 //
2158 // Place copy #4 of I1D7 in I20B
2159 //
2160 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
2161 sub3node->SetLineColor(kColorITS);
2162 sub3node->SetVisibility(0);
2163 sub3node->cd();
2164 //
2165 // Place copy #1 of I1D1 in I1D7
2166 //
2167 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2168 sub4node->SetLineColor(kColorITS);
2169 sub4node->SetVisibility(0);
2170 sub4node->cd();
2171 //
2172 // Place copy #1 of ITS2 in I1D1
2173 //
2174 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2175 sub5node->SetLineColor(kColorITS);
2176 fNodes->Add(sub5node);
2177 sub4node->cd();
2178 fNodes->Add(sub4node);
2179 sub3node->cd();
2180 fNodes->Add(sub3node);
2181 sub2node->cd();
2182 fNodes->Add(sub2node);
2183 sub1node->cd();
2184 fNodes->Add(sub1node);
2185 node->cd();
2186 //
2187 // Place copy #3 of I12B in IT12
2188 //
1266e9b4 2189 sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot234");
1f99c14b 2190 sub1node->SetLineColor(kColorITS);
2191 sub1node->SetVisibility(0);
2192 sub1node->cd();
2193 //
2194 // Place copy #1 of I10B in I12B
2195 //
2196 deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);
2197 deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
1266e9b4 2198 sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
1f99c14b 2199 sub2node->SetLineColor(kColorITS);
2200 sub2node->SetVisibility(0);
2201 sub2node->cd();
2202 //
2203 // Place copy #1 of I107 in I10B
2204 //
2205 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
2206 sub3node->SetLineColor(kColorITS);
2207 sub3node->SetVisibility(0);
2208 sub3node->cd();
2209 //
2210 // Place copy #1 of I101 in I107
2211 //
2212 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2213 sub4node->SetLineColor(kColorITS);
2214 sub4node->SetVisibility(0);
2215 sub4node->cd();
2216 //
2217 // Place copy #1 of ITS1 in I101
2218 //
2219 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2220 sub5node->SetLineColor(kColorITS);
2221 fNodes->Add(sub5node);
2222 sub4node->cd();
2223 fNodes->Add(sub4node);
2224 sub3node->cd();
2225 fNodes->Add(sub3node);
2226 sub2node->cd();
2227 //
2228 // Place copy #2 of I107 in I10B
2229 //
2230 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
2231 sub3node->SetLineColor(kColorITS);
2232 sub3node->SetVisibility(0);
2233 sub3node->cd();
2234 //
2235 // Place copy #1 of I101 in I107
2236 //
2237 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2238 sub4node->SetLineColor(kColorITS);
2239 sub4node->SetVisibility(0);
2240 sub4node->cd();
2241 //
2242 // Place copy #1 of ITS1 in I101
2243 //
2244 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2245 sub5node->SetLineColor(kColorITS);
2246 fNodes->Add(sub5node);
2247 sub4node->cd();
2248 fNodes->Add(sub4node);
2249 sub3node->cd();
2250 fNodes->Add(sub3node);
2251 sub2node->cd();
2252 //
2253 // Place copy #3 of I107 in I10B
2254 //
2255 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
2256 sub3node->SetLineColor(kColorITS);
2257 sub3node->SetVisibility(0);
2258 sub3node->cd();
2259 //
2260 // Place copy #1 of I101 in I107
2261 //
2262 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2263 sub4node->SetLineColor(kColorITS);
2264 sub4node->SetVisibility(0);
2265 sub4node->cd();
2266 //
2267 // Place copy #1 of ITS1 in I101
2268 //
2269 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2270 sub5node->SetLineColor(kColorITS);
2271 fNodes->Add(sub5node);
2272 sub4node->cd();
2273 fNodes->Add(sub4node);
2274 sub3node->cd();
2275 fNodes->Add(sub3node);
2276 sub2node->cd();
2277 //
2278 // Place copy #4 of I107 in I10B
2279 //
2280 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
2281 sub3node->SetLineColor(kColorITS);
2282 sub3node->SetVisibility(0);
2283 sub3node->cd();
2284 //
2285 // Place copy #1 of I101 in I107
2286 //
2287 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2288 sub4node->SetLineColor(kColorITS);
2289 sub4node->SetVisibility(0);
2290 sub4node->cd();
2291 //
2292 // Place copy #1 of ITS1 in I101
2293 //
2294 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2295 sub5node->SetLineColor(kColorITS);
2296 fNodes->Add(sub5node);
2297 sub4node->cd();
2298 fNodes->Add(sub4node);
2299 sub3node->cd();
2300 fNodes->Add(sub3node);
2301 sub2node->cd();
2302 fNodes->Add(sub2node);
2303 sub1node->cd();
2304 //
2305 // Place copy #2 of I10B in I12B
2306 //
2307 deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);
2308 deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
1266e9b4 2309 sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
1f99c14b 2310 sub2node->SetLineColor(kColorITS);
2311 sub2node->SetVisibility(0);
2312 sub2node->cd();
2313 //
2314 // Place copy #1 of I107 in I10B
2315 //
2316 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
2317 sub3node->SetLineColor(kColorITS);
2318 sub3node->SetVisibility(0);
2319 sub3node->cd();
2320 //
2321 // Place copy #1 of I101 in I107
2322 //
2323 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2324 sub4node->SetLineColor(kColorITS);
2325 sub4node->SetVisibility(0);
2326 sub4node->cd();
2327 //
2328 // Place copy #1 of ITS1 in I101
2329 //
2330 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2331 sub5node->SetLineColor(kColorITS);
2332 fNodes->Add(sub5node);
2333 sub4node->cd();
2334 fNodes->Add(sub4node);
2335 sub3node->cd();
2336 fNodes->Add(sub3node);
2337 sub2node->cd();
2338 //
2339 // Place copy #2 of I107 in I10B
2340 //
2341 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
2342 sub3node->SetLineColor(kColorITS);
2343 sub3node->SetVisibility(0);
2344 sub3node->cd();
2345 //
2346 // Place copy #1 of I101 in I107
2347 //
2348 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2349 sub4node->SetLineColor(kColorITS);
2350 sub4node->SetVisibility(0);
2351 sub4node->cd();
2352 //
2353 // Place copy #1 of ITS1 in I101
2354 //
2355 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2356 sub5node->SetLineColor(kColorITS);
2357 fNodes->Add(sub5node);
2358 sub4node->cd();
2359 fNodes->Add(sub4node);
2360 sub3node->cd();
2361 fNodes->Add(sub3node);
2362 sub2node->cd();
2363 //
2364 // Place copy #3 of I107 in I10B
2365 //
2366 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
2367 sub3node->SetLineColor(kColorITS);
2368 sub3node->SetVisibility(0);
2369 sub3node->cd();
2370 //
2371 // Place copy #1 of I101 in I107
2372 //
2373 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2374 sub4node->SetLineColor(kColorITS);
2375 sub4node->SetVisibility(0);
2376 sub4node->cd();
2377 //
2378 // Place copy #1 of ITS1 in I101
2379 //
2380 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2381 sub5node->SetLineColor(kColorITS);
2382 fNodes->Add(sub5node);
2383 sub4node->cd();
2384 fNodes->Add(sub4node);
2385 sub3node->cd();
2386 fNodes->Add(sub3node);
2387 sub2node->cd();
2388 //
2389 // Place copy #4 of I107 in I10B
2390 //
2391 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
2392 sub3node->SetLineColor(kColorITS);
2393 sub3node->SetVisibility(0);
2394 sub3node->cd();
2395 //
2396 // Place copy #1 of I101 in I107
2397 //
2398 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2399 sub4node->SetLineColor(kColorITS);
2400 sub4node->SetVisibility(0);
2401 sub4node->cd();
2402 //
2403 // Place copy #1 of ITS1 in I101
2404 //
2405 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2406 sub5node->SetLineColor(kColorITS);
2407 fNodes->Add(sub5node);
2408 sub4node->cd();
2409 fNodes->Add(sub4node);
2410 sub3node->cd();
2411 fNodes->Add(sub3node);
2412 sub2node->cd();
2413 fNodes->Add(sub2node);
2414 sub1node->cd();
2415 //
2416 // Place copy #1 of I20B in I12B
2417 //
2418 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);
2419 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
1266e9b4 2420 sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
1f99c14b 2421 sub2node->SetLineColor(kColorITS);
2422 sub2node->SetVisibility(0);
2423 sub2node->cd();
2424 //
2425 // Place copy #1 of I1D7 in I20B
2426 //
2427 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
2428 sub3node->SetLineColor(kColorITS);
2429 sub3node->SetVisibility(0);
2430 sub3node->cd();
2431 //
2432 // Place copy #1 of I1D1 in I1D7
2433 //
2434 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2435 sub4node->SetLineColor(kColorITS);
2436 sub4node->SetVisibility(0);
2437 sub4node->cd();
2438 //
2439 // Place copy #1 of ITS2 in I1D1
2440 //
2441 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2442 sub5node->SetLineColor(kColorITS);
2443 fNodes->Add(sub5node);
2444 sub4node->cd();
2445 fNodes->Add(sub4node);
2446 sub3node->cd();
2447 fNodes->Add(sub3node);
2448 sub2node->cd();
2449 //
2450 // Place copy #2 of I1D7 in I20B
2451 //
2452 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
2453 sub3node->SetLineColor(kColorITS);
2454 sub3node->SetVisibility(0);
2455 sub3node->cd();
2456 //
2457 // Place copy #1 of I1D1 in I1D7
2458 //
2459 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2460 sub4node->SetLineColor(kColorITS);
2461 sub4node->SetVisibility(0);
2462 sub4node->cd();
2463 //
2464 // Place copy #1 of ITS2 in I1D1
2465 //
2466 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2467 sub5node->SetLineColor(kColorITS);
2468 fNodes->Add(sub5node);
2469 sub4node->cd();
2470 fNodes->Add(sub4node);
2471 sub3node->cd();
2472 fNodes->Add(sub3node);
2473 sub2node->cd();
2474 //
2475 // Place copy #3 of I1D7 in I20B
2476 //
2477 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
2478 sub3node->SetLineColor(kColorITS);
2479 sub3node->SetVisibility(0);
2480 sub3node->cd();
2481 //
2482 // Place copy #1 of I1D1 in I1D7
2483 //
2484 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2485 sub4node->SetLineColor(kColorITS);
2486 sub4node->SetVisibility(0);
2487 sub4node->cd();
2488 //
2489 // Place copy #1 of ITS2 in I1D1
2490 //
2491 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2492 sub5node->SetLineColor(kColorITS);
2493 fNodes->Add(sub5node);
2494 sub4node->cd();
2495 fNodes->Add(sub4node);
2496 sub3node->cd();
2497 fNodes->Add(sub3node);
2498 sub2node->cd();
2499 //
2500 // Place copy #4 of I1D7 in I20B
2501 //
2502 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
2503 sub3node->SetLineColor(kColorITS);
2504 sub3node->SetVisibility(0);
2505 sub3node->cd();
2506 //
2507 // Place copy #1 of I1D1 in I1D7
2508 //
2509 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2510 sub4node->SetLineColor(kColorITS);
2511 sub4node->SetVisibility(0);
2512 sub4node->cd();
2513 //
2514 // Place copy #1 of ITS2 in I1D1
2515 //
2516 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2517 sub5node->SetLineColor(kColorITS);
2518 fNodes->Add(sub5node);
2519 sub4node->cd();
2520 fNodes->Add(sub4node);
2521 sub3node->cd();
2522 fNodes->Add(sub3node);
2523 sub2node->cd();
2524 fNodes->Add(sub2node);
2525 sub1node->cd();
2526 //
2527 // Place copy #2 of I20B in I12B
2528 //
2529 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);
2530 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
1266e9b4 2531 sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
1f99c14b 2532 sub2node->SetLineColor(kColorITS);
2533 sub2node->SetVisibility(0);
2534 sub2node->cd();
2535 //
2536 // Place copy #1 of I1D7 in I20B
2537 //
2538 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
2539 sub3node->SetLineColor(kColorITS);
2540 sub3node->SetVisibility(0);
2541 sub3node->cd();
2542 //
2543 // Place copy #1 of I1D1 in I1D7
2544 //
2545 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2546 sub4node->SetLineColor(kColorITS);
2547 sub4node->SetVisibility(0);
2548 sub4node->cd();
2549 //
2550 // Place copy #1 of ITS2 in I1D1
2551 //
2552 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2553 sub5node->SetLineColor(kColorITS);
2554 fNodes->Add(sub5node);
2555 sub4node->cd();
2556 fNodes->Add(sub4node);
2557 sub3node->cd();
2558 fNodes->Add(sub3node);
2559 sub2node->cd();
2560 //
2561 // Place copy #2 of I1D7 in I20B
2562 //
2563 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
2564 sub3node->SetLineColor(kColorITS);
2565 sub3node->SetVisibility(0);
2566 sub3node->cd();
2567 //
2568 // Place copy #1 of I1D1 in I1D7
2569 //
2570 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2571 sub4node->SetLineColor(kColorITS);
2572 sub4node->SetVisibility(0);
2573 sub4node->cd();
2574 //
2575 // Place copy #1 of ITS2 in I1D1
2576 //
2577 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2578 sub5node->SetLineColor(kColorITS);
2579 fNodes->Add(sub5node);
2580 sub4node->cd();
2581 fNodes->Add(sub4node);
2582 sub3node->cd();
2583 fNodes->Add(sub3node);
2584 sub2node->cd();
2585 //
2586 // Place copy #3 of I1D7 in I20B
2587 //
2588 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
2589 sub3node->SetLineColor(kColorITS);
2590 sub3node->SetVisibility(0);
2591 sub3node->cd();
2592 //
2593 // Place copy #1 of I1D1 in I1D7
2594 //
2595 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2596 sub4node->SetLineColor(kColorITS);
2597 sub4node->SetVisibility(0);
2598 sub4node->cd();
2599 //
2600 // Place copy #1 of ITS2 in I1D1
2601 //
2602 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2603 sub5node->SetLineColor(kColorITS);
2604 fNodes->Add(sub5node);
2605 sub4node->cd();
2606 fNodes->Add(sub4node);
2607 sub3node->cd();
2608 fNodes->Add(sub3node);
2609 sub2node->cd();
2610 //
2611 // Place copy #4 of I1D7 in I20B
2612 //
2613 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
2614 sub3node->SetLineColor(kColorITS);
2615 sub3node->SetVisibility(0);
2616 sub3node->cd();
2617 //
2618 // Place copy #1 of I1D1 in I1D7
2619 //
2620 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2621 sub4node->SetLineColor(kColorITS);
2622 sub4node->SetVisibility(0);
2623 sub4node->cd();
2624 //
2625 // Place copy #1 of ITS2 in I1D1
2626 //
2627 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2628 sub5node->SetLineColor(kColorITS);
2629 fNodes->Add(sub5node);
2630 sub4node->cd();
2631 fNodes->Add(sub4node);
2632 sub3node->cd();
2633 fNodes->Add(sub3node);
2634 sub2node->cd();
2635 fNodes->Add(sub2node);
2636 sub1node->cd();
2637 //
2638 // Place copy #3 of I20B in I12B
2639 //
2640 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);
2641 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
1266e9b4 2642 sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
1f99c14b 2643 sub2node->SetLineColor(kColorITS);
2644 sub2node->SetVisibility(0);
2645 sub2node->cd();
2646 //
2647 // Place copy #1 of I1D7 in I20B
2648 //
2649 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
2650 sub3node->SetLineColor(kColorITS);
2651 sub3node->SetVisibility(0);
2652 sub3node->cd();
2653 //
2654 // Place copy #1 of I1D1 in I1D7
2655 //
2656 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2657 sub4node->SetLineColor(kColorITS);
2658 sub4node->SetVisibility(0);
2659 sub4node->cd();
2660 //
2661 // Place copy #1 of ITS2 in I1D1
2662 //
2663 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2664 sub5node->SetLineColor(kColorITS);
2665 fNodes->Add(sub5node);
2666 sub4node->cd();
2667 fNodes->Add(sub4node);
2668 sub3node->cd();
2669 fNodes->Add(sub3node);
2670 sub2node->cd();
2671 //
2672 // Place copy #2 of I1D7 in I20B
2673 //
2674 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
2675 sub3node->SetLineColor(kColorITS);
2676 sub3node->SetVisibility(0);
2677 sub3node->cd();
2678 //
2679 // Place copy #1 of I1D1 in I1D7
2680 //
2681 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2682 sub4node->SetLineColor(kColorITS);
2683 sub4node->SetVisibility(0);
2684 sub4node->cd();
2685 //
2686 // Place copy #1 of ITS2 in I1D1
2687 //
2688 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2689 sub5node->SetLineColor(kColorITS);
2690 fNodes->Add(sub5node);
2691 sub4node->cd();
2692 fNodes->Add(sub4node);
2693 sub3node->cd();
2694 fNodes->Add(sub3node);
2695 sub2node->cd();
2696 //
2697 // Place copy #3 of I1D7 in I20B
2698 //
2699 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
2700 sub3node->SetLineColor(kColorITS);
2701 sub3node->SetVisibility(0);
2702 sub3node->cd();
2703 //
2704 // Place copy #1 of I1D1 in I1D7
2705 //
2706 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2707 sub4node->SetLineColor(kColorITS);
2708 sub4node->SetVisibility(0);
2709 sub4node->cd();
2710 //
2711 // Place copy #1 of ITS2 in I1D1
2712 //
2713 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2714 sub5node->SetLineColor(kColorITS);
2715 fNodes->Add(sub5node);
2716 sub4node->cd();
2717 fNodes->Add(sub4node);
2718 sub3node->cd();
2719 fNodes->Add(sub3node);
2720 sub2node->cd();
2721 //
2722 // Place copy #4 of I1D7 in I20B
2723 //
2724 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
2725 sub3node->SetLineColor(kColorITS);
2726 sub3node->SetVisibility(0);
2727 sub3node->cd();
2728 //
2729 // Place copy #1 of I1D1 in I1D7
2730 //
2731 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2732 sub4node->SetLineColor(kColorITS);
2733 sub4node->SetVisibility(0);
2734 sub4node->cd();
2735 //
2736 // Place copy #1 of ITS2 in I1D1
2737 //
2738 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2739 sub5node->SetLineColor(kColorITS);
2740 fNodes->Add(sub5node);
2741 sub4node->cd();
2742 fNodes->Add(sub4node);
2743 sub3node->cd();
2744 fNodes->Add(sub3node);
2745 sub2node->cd();
2746 fNodes->Add(sub2node);
2747 sub1node->cd();
2748 //
2749 // Place copy #4 of I20B in I12B
2750 //
2751 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);
2752 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
1266e9b4 2753 sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
1f99c14b 2754 sub2node->SetLineColor(kColorITS);
2755 sub2node->SetVisibility(0);
2756 sub2node->cd();
2757 //
2758 // Place copy #1 of I1D7 in I20B
2759 //
2760 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
2761 sub3node->SetLineColor(kColorITS);
2762 sub3node->SetVisibility(0);
2763 sub3node->cd();
2764 //
2765 // Place copy #1 of I1D1 in I1D7
2766 //
2767 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2768 sub4node->SetLineColor(kColorITS);
2769 sub4node->SetVisibility(0);
2770 sub4node->cd();
2771 //
2772 // Place copy #1 of ITS2 in I1D1
2773 //
2774 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2775 sub5node->SetLineColor(kColorITS);
2776 fNodes->Add(sub5node);
2777 sub4node->cd();
2778 fNodes->Add(sub4node);
2779 sub3node->cd();
2780 fNodes->Add(sub3node);
2781 sub2node->cd();
2782 //
2783 // Place copy #2 of I1D7 in I20B
2784 //
2785 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
2786 sub3node->SetLineColor(kColorITS);
2787 sub3node->SetVisibility(0);
2788 sub3node->cd();
2789 //
2790 // Place copy #1 of I1D1 in I1D7
2791 //
2792 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2793 sub4node->SetLineColor(kColorITS);
2794 sub4node->SetVisibility(0);
2795 sub4node->cd();
2796 //
2797 // Place copy #1 of ITS2 in I1D1
2798 //
2799 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2800 sub5node->SetLineColor(kColorITS);
2801 fNodes->Add(sub5node);
2802 sub4node->cd();
2803 fNodes->Add(sub4node);
2804 sub3node->cd();
2805 fNodes->Add(sub3node);
2806 sub2node->cd();
2807 //
2808 // Place copy #3 of I1D7 in I20B
2809 //
2810 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
2811 sub3node->SetLineColor(kColorITS);
2812 sub3node->SetVisibility(0);
2813 sub3node->cd();
2814 //
2815 // Place copy #1 of I1D1 in I1D7
2816 //
2817 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2818 sub4node->SetLineColor(kColorITS);
2819 sub4node->SetVisibility(0);
2820 sub4node->cd();
2821 //
2822 // Place copy #1 of ITS2 in I1D1
2823 //
2824 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2825 sub5node->SetLineColor(kColorITS);
2826 fNodes->Add(sub5node);
2827 sub4node->cd();
2828 fNodes->Add(sub4node);
2829 sub3node->cd();
2830 fNodes->Add(sub3node);
2831 sub2node->cd();
2832 //
2833 // Place copy #4 of I1D7 in I20B
2834 //
2835 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
2836 sub3node->SetLineColor(kColorITS);
2837 sub3node->SetVisibility(0);
2838 sub3node->cd();
2839 //
2840 // Place copy #1 of I1D1 in I1D7
2841 //
2842 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
2843 sub4node->SetLineColor(kColorITS);
2844 sub4node->SetVisibility(0);
2845 sub4node->cd();
2846 //
2847 // Place copy #1 of ITS2 in I1D1
2848 //
2849 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
2850 sub5node->SetLineColor(kColorITS);
2851 fNodes->Add(sub5node);
2852 sub4node->cd();
2853 fNodes->Add(sub4node);
2854 sub3node->cd();
2855 fNodes->Add(sub3node);
2856 sub2node->cd();
2857 fNodes->Add(sub2node);
2858 sub1node->cd();
2859 fNodes->Add(sub1node);
2860 node->cd();
2861 //
2862 // Place copy #4 of I12B in IT12
2863 //
1266e9b4 2864 sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot246");
1f99c14b 2865 sub1node->SetLineColor(kColorITS);
2866 sub1node->SetVisibility(0);
2867 sub1node->cd();
2868 //
2869 // Place copy #1 of I10B in I12B
2870 //
2871 deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);
2872 deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
1266e9b4 2873 sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
1f99c14b 2874 sub2node->SetLineColor(kColorITS);
2875 sub2node->SetVisibility(0);
2876 sub2node->cd();
2877 //
2878 // Place copy #1 of I107 in I10B
2879 //
2880 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
2881 sub3node->SetLineColor(kColorITS);
2882 sub3node->SetVisibility(0);
2883 sub3node->cd();
2884 //
2885 // Place copy #1 of I101 in I107
2886 //
2887 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2888 sub4node->SetLineColor(kColorITS);
2889 sub4node->SetVisibility(0);
2890 sub4node->cd();
2891 //
2892 // Place copy #1 of ITS1 in I101
2893 //
2894 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2895 sub5node->SetLineColor(kColorITS);
2896 fNodes->Add(sub5node);
2897 sub4node->cd();
2898 fNodes->Add(sub4node);
2899 sub3node->cd();
2900 fNodes->Add(sub3node);
2901 sub2node->cd();
2902 //
2903 // Place copy #2 of I107 in I10B
2904 //
2905 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
2906 sub3node->SetLineColor(kColorITS);
2907 sub3node->SetVisibility(0);
2908 sub3node->cd();
2909 //
2910 // Place copy #1 of I101 in I107
2911 //
2912 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2913 sub4node->SetLineColor(kColorITS);
2914 sub4node->SetVisibility(0);
2915 sub4node->cd();
2916 //
2917 // Place copy #1 of ITS1 in I101
2918 //
2919 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2920 sub5node->SetLineColor(kColorITS);
2921 fNodes->Add(sub5node);
2922 sub4node->cd();
2923 fNodes->Add(sub4node);
2924 sub3node->cd();
2925 fNodes->Add(sub3node);
2926 sub2node->cd();
2927 //
2928 // Place copy #3 of I107 in I10B
2929 //
2930 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
2931 sub3node->SetLineColor(kColorITS);
2932 sub3node->SetVisibility(0);
2933 sub3node->cd();
2934 //
2935 // Place copy #1 of I101 in I107
2936 //
2937 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2938 sub4node->SetLineColor(kColorITS);
2939 sub4node->SetVisibility(0);
2940 sub4node->cd();
2941 //
2942 // Place copy #1 of ITS1 in I101
2943 //
2944 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2945 sub5node->SetLineColor(kColorITS);
2946 fNodes->Add(sub5node);
2947 sub4node->cd();
2948 fNodes->Add(sub4node);
2949 sub3node->cd();
2950 fNodes->Add(sub3node);
2951 sub2node->cd();
2952 //
2953 // Place copy #4 of I107 in I10B
2954 //
2955 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
2956 sub3node->SetLineColor(kColorITS);
2957 sub3node->SetVisibility(0);
2958 sub3node->cd();
2959 //
2960 // Place copy #1 of I101 in I107
2961 //
2962 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2963 sub4node->SetLineColor(kColorITS);
2964 sub4node->SetVisibility(0);
2965 sub4node->cd();
2966 //
2967 // Place copy #1 of ITS1 in I101
2968 //
2969 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
2970 sub5node->SetLineColor(kColorITS);
2971 fNodes->Add(sub5node);
2972 sub4node->cd();
2973 fNodes->Add(sub4node);
2974 sub3node->cd();
2975 fNodes->Add(sub3node);
2976 sub2node->cd();
2977 fNodes->Add(sub2node);
2978 sub1node->cd();
2979 //
2980 // Place copy #2 of I10B in I12B
2981 //
2982 deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);
2983 deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
1266e9b4 2984 sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
1f99c14b 2985 sub2node->SetLineColor(kColorITS);
2986 sub2node->SetVisibility(0);
2987 sub2node->cd();
2988 //
2989 // Place copy #1 of I107 in I10B
2990 //
2991 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
2992 sub3node->SetLineColor(kColorITS);
2993 sub3node->SetVisibility(0);
2994 sub3node->cd();
2995 //
2996 // Place copy #1 of I101 in I107
2997 //
2998 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
2999 sub4node->SetLineColor(kColorITS);
3000 sub4node->SetVisibility(0);
3001 sub4node->cd();
3002 //
3003 // Place copy #1 of ITS1 in I101
3004 //
3005 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
3006 sub5node->SetLineColor(kColorITS);
3007 fNodes->Add(sub5node);
3008 sub4node->cd();
3009 fNodes->Add(sub4node);
3010 sub3node->cd();
3011 fNodes->Add(sub3node);
3012 sub2node->cd();
3013 //
3014 // Place copy #2 of I107 in I10B
3015 //
3016 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
3017 sub3node->SetLineColor(kColorITS);
3018 sub3node->SetVisibility(0);
3019 sub3node->cd();
3020 //
3021 // Place copy #1 of I101 in I107
3022 //
3023 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
3024 sub4node->SetLineColor(kColorITS);
3025 sub4node->SetVisibility(0);
3026 sub4node->cd();
3027 //
3028 // Place copy #1 of ITS1 in I101
3029 //
3030 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
3031 sub5node->SetLineColor(kColorITS);
3032 fNodes->Add(sub5node);
3033 sub4node->cd();
3034 fNodes->Add(sub4node);
3035 sub3node->cd();
3036 fNodes->Add(sub3node);
3037 sub2node->cd();
3038 //
3039 // Place copy #3 of I107 in I10B
3040 //
3041 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
3042 sub3node->SetLineColor(kColorITS);
3043 sub3node->SetVisibility(0);
3044 sub3node->cd();
3045 //
3046 // Place copy #1 of I101 in I107
3047 //
3048 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
3049 sub4node->SetLineColor(kColorITS);
3050 sub4node->SetVisibility(0);
3051 sub4node->cd();
3052 //
3053 // Place copy #1 of ITS1 in I101
3054 //
3055 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
3056 sub5node->SetLineColor(kColorITS);
3057 fNodes->Add(sub5node);
3058 sub4node->cd();
3059 fNodes->Add(sub4node);
3060 sub3node->cd();
3061 fNodes->Add(sub3node);
3062 sub2node->cd();
3063 //
3064 // Place copy #4 of I107 in I10B
3065 //
3066 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
3067 sub3node->SetLineColor(kColorITS);
3068 sub3node->SetVisibility(0);
3069 sub3node->cd();
3070 //
3071 // Place copy #1 of I101 in I107
3072 //
3073 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
3074 sub4node->SetLineColor(kColorITS);
3075 sub4node->SetVisibility(0);
3076 sub4node->cd();
3077 //
3078 // Place copy #1 of ITS1 in I101
3079 //
3080 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
3081 sub5node->SetLineColor(kColorITS);
3082 fNodes->Add(sub5node);
3083 sub4node->cd();
3084 fNodes->Add(sub4node);
3085 sub3node->cd();
3086 fNodes->Add(sub3node);
3087 sub2node->cd();
3088 fNodes->Add(sub2node);
3089 sub1node->cd();
3090 //
3091 // Place copy #1 of I20B in I12B
3092 //
3093 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(40.*TMath::Pi()/180.);
3094 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(40.*TMath::Pi()/180.);
1266e9b4 3095 sub2node = new TNode("I20B","I20B","I20B",3.0174+deltax,6.5143+deltay,0.,"itsrot240");
1f99c14b 3096 sub2node->SetLineColor(kColorITS);
3097 sub2node->SetVisibility(0);
3098 sub2node->cd();
3099 //
3100 // Place copy #1 of I1D7 in I20B
3101 //
3102 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
3103 sub3node->SetLineColor(kColorITS);
3104 sub3node->SetVisibility(0);
3105 sub3node->cd();
3106 //
3107 // Place copy #1 of I1D1 in I1D7
3108 //
3109 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3110 sub4node->SetLineColor(kColorITS);
3111 sub4node->SetVisibility(0);
3112 sub4node->cd();
3113 //
3114 // Place copy #1 of ITS2 in I1D1
3115 //
3116 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3117 sub5node->SetLineColor(kColorITS);
3118 fNodes->Add(sub5node);
3119 sub4node->cd();
3120 fNodes->Add(sub4node);
3121 sub3node->cd();
3122 fNodes->Add(sub3node);
3123 sub2node->cd();
3124 //
3125 // Place copy #2 of I1D7 in I20B
3126 //
3127 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
3128 sub3node->SetLineColor(kColorITS);
3129 sub3node->SetVisibility(0);
3130 sub3node->cd();
3131 //
3132 // Place copy #1 of I1D1 in I1D7
3133 //
3134 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3135 sub4node->SetLineColor(kColorITS);
3136 sub4node->SetVisibility(0);
3137 sub4node->cd();
3138 //
3139 // Place copy #1 of ITS2 in I1D1
3140 //
3141 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3142 sub5node->SetLineColor(kColorITS);
3143 fNodes->Add(sub5node);
3144 sub4node->cd();
3145 fNodes->Add(sub4node);
3146 sub3node->cd();
3147 fNodes->Add(sub3node);
3148 sub2node->cd();
3149 //
3150 // Place copy #3 of I1D7 in I20B
3151 //
3152 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
3153 sub3node->SetLineColor(kColorITS);
3154 sub3node->SetVisibility(0);
3155 sub3node->cd();
3156 //
3157 // Place copy #1 of I1D1 in I1D7
3158 //
3159 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3160 sub4node->SetLineColor(kColorITS);
3161 sub4node->SetVisibility(0);
3162 sub4node->cd();
3163 //
3164 // Place copy #1 of ITS2 in I1D1
3165 //
3166 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3167 sub5node->SetLineColor(kColorITS);
3168 fNodes->Add(sub5node);
3169 sub4node->cd();
3170 fNodes->Add(sub4node);
3171 sub3node->cd();
3172 fNodes->Add(sub3node);
3173 sub2node->cd();
3174 //
3175 // Place copy #4 of I1D7 in I20B
3176 //
3177 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
3178 sub3node->SetLineColor(kColorITS);
3179 sub3node->SetVisibility(0);
3180 sub3node->cd();
3181 //
3182 // Place copy #1 of I1D1 in I1D7
3183 //
3184 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3185 sub4node->SetLineColor(kColorITS);
3186 sub4node->SetVisibility(0);
3187 sub4node->cd();
3188 //
3189 // Place copy #1 of ITS2 in I1D1
3190 //
3191 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3192 sub5node->SetLineColor(kColorITS);
3193 fNodes->Add(sub5node);
3194 sub4node->cd();
3195 fNodes->Add(sub4node);
3196 sub3node->cd();
3197 fNodes->Add(sub3node);
3198 sub2node->cd();
3199 fNodes->Add(sub2node);
3200 sub1node->cd();
3201 //
3202 // Place copy #2 of I20B in I12B
3203 //
3204 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(49.*TMath::Pi()/180.);
3205 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(49.*TMath::Pi()/180.);
1266e9b4 3206 sub2node = new TNode("I20B","I20B","I20B",1.9612+deltax,6.9062+deltay,0.,"itsrot241");
1f99c14b 3207 sub2node->SetLineColor(kColorITS);
3208 sub2node->SetVisibility(0);
3209 sub2node->cd();
3210 //
3211 // Place copy #1 of I1D7 in I20B
3212 //
3213 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
3214 sub3node->SetLineColor(kColorITS);
3215 sub3node->SetVisibility(0);
3216 sub3node->cd();
3217 //
3218 // Place copy #1 of I1D1 in I1D7
3219 //
3220 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3221 sub4node->SetLineColor(kColorITS);
3222 sub4node->SetVisibility(0);
3223 sub4node->cd();
3224 //
3225 // Place copy #1 of ITS2 in I1D1
3226 //
3227 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3228 sub5node->SetLineColor(kColorITS);
3229 fNodes->Add(sub5node);
3230 sub4node->cd();
3231 fNodes->Add(sub4node);
3232 sub3node->cd();
3233 fNodes->Add(sub3node);
3234 sub2node->cd();
3235 //
3236 // Place copy #2 of I1D7 in I20B
3237 //
3238 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
3239 sub3node->SetLineColor(kColorITS);
3240 sub3node->SetVisibility(0);
3241 sub3node->cd();
3242 //
3243 // Place copy #1 of I1D1 in I1D7
3244 //
3245 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3246 sub4node->SetLineColor(kColorITS);
3247 sub4node->SetVisibility(0);
3248 sub4node->cd();
3249 //
3250 // Place copy #1 of ITS2 in I1D1
3251 //
3252 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3253 sub5node->SetLineColor(kColorITS);
3254 fNodes->Add(sub5node);
3255 sub4node->cd();
3256 fNodes->Add(sub4node);
3257 sub3node->cd();
3258 fNodes->Add(sub3node);
3259 sub2node->cd();
3260 //
3261 // Place copy #3 of I1D7 in I20B
3262 //
3263 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
3264 sub3node->SetLineColor(kColorITS);
3265 sub3node->SetVisibility(0);
3266 sub3node->cd();
3267 //
3268 // Place copy #1 of I1D1 in I1D7
3269 //
3270 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3271 sub4node->SetLineColor(kColorITS);
3272 sub4node->SetVisibility(0);
3273 sub4node->cd();
3274 //
3275 // Place copy #1 of ITS2 in I1D1
3276 //
3277 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3278 sub5node->SetLineColor(kColorITS);
3279 fNodes->Add(sub5node);
3280 sub4node->cd();
3281 fNodes->Add(sub4node);
3282 sub3node->cd();
3283 fNodes->Add(sub3node);
3284 sub2node->cd();
3285 //
3286 // Place copy #4 of I1D7 in I20B
3287 //
3288 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
3289 sub3node->SetLineColor(kColorITS);
3290 sub3node->SetVisibility(0);
3291 sub3node->cd();
3292 //
3293 // Place copy #1 of I1D1 in I1D7
3294 //
3295 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3296 sub4node->SetLineColor(kColorITS);
3297 sub4node->SetVisibility(0);
3298 sub4node->cd();
3299 //
3300 // Place copy #1 of ITS2 in I1D1
3301 //
3302 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3303 sub5node->SetLineColor(kColorITS);
3304 fNodes->Add(sub5node);
3305 sub4node->cd();
3306 fNodes->Add(sub4node);
3307 sub3node->cd();
3308 fNodes->Add(sub3node);
3309 sub2node->cd();
3310 fNodes->Add(sub2node);
3311 sub1node->cd();
3312 //
3313 // Place copy #3 of I20B in I12B
3314 //
3315 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(58.*TMath::Pi()/180.);
3316 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(58.*TMath::Pi()/180.);
1266e9b4 3317 sub2node = new TNode("I20B","I20B","I20B",0.8567+deltax,7.1279+deltay,0.,"itsrot242");
1f99c14b 3318 sub2node->SetLineColor(kColorITS);
3319 sub2node->SetVisibility(0);
3320 sub2node->cd();
3321 //
3322 // Place copy #1 of I1D7 in I20B
3323 //
3324 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
3325 sub3node->SetLineColor(kColorITS);
3326 sub3node->SetVisibility(0);
3327 sub3node->cd();
3328 //
3329 // Place copy #1 of I1D1 in I1D7
3330 //
3331 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3332 sub4node->SetLineColor(kColorITS);
3333 sub4node->SetVisibility(0);
3334 sub4node->cd();
3335 //
3336 // Place copy #1 of ITS2 in I1D1
3337 //
3338 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3339 sub5node->SetLineColor(kColorITS);
3340 fNodes->Add(sub5node);
3341 sub4node->cd();
3342 fNodes->Add(sub4node);
3343 sub3node->cd();
3344 fNodes->Add(sub3node);
3345 sub2node->cd();
3346 //
3347 // Place copy #2 of I1D7 in I20B
3348 //
3349 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
3350 sub3node->SetLineColor(kColorITS);
3351 sub3node->SetVisibility(0);
3352 sub3node->cd();
3353 //
3354 // Place copy #1 of I1D1 in I1D7
3355 //
3356 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3357 sub4node->SetLineColor(kColorITS);
3358 sub4node->SetVisibility(0);
3359 sub4node->cd();
3360 //
3361 // Place copy #1 of ITS2 in I1D1
3362 //
3363 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3364 sub5node->SetLineColor(kColorITS);
3365 fNodes->Add(sub5node);
3366 sub4node->cd();
3367 fNodes->Add(sub4node);
3368 sub3node->cd();
3369 fNodes->Add(sub3node);
3370 sub2node->cd();
3371 //
3372 // Place copy #3 of I1D7 in I20B
3373 //
3374 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
3375 sub3node->SetLineColor(kColorITS);
3376 sub3node->SetVisibility(0);
3377 sub3node->cd();
3378 //
3379 // Place copy #1 of I1D1 in I1D7
3380 //
3381 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3382 sub4node->SetLineColor(kColorITS);
3383 sub4node->SetVisibility(0);
3384 sub4node->cd();
3385 //
3386 // Place copy #1 of ITS2 in I1D1
3387 //
3388 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3389 sub5node->SetLineColor(kColorITS);
3390 fNodes->Add(sub5node);
3391 sub4node->cd();
3392 fNodes->Add(sub4node);
3393 sub3node->cd();
3394 fNodes->Add(sub3node);
3395 sub2node->cd();
3396 //
3397 // Place copy #4 of I1D7 in I20B
3398 //
3399 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
3400 sub3node->SetLineColor(kColorITS);
3401 sub3node->SetVisibility(0);
3402 sub3node->cd();
3403 //
3404 // Place copy #1 of I1D1 in I1D7
3405 //
3406 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3407 sub4node->SetLineColor(kColorITS);
3408 sub4node->SetVisibility(0);
3409 sub4node->cd();
3410 //
3411 // Place copy #1 of ITS2 in I1D1
3412 //
3413 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3414 sub5node->SetLineColor(kColorITS);
3415 fNodes->Add(sub5node);
3416 sub4node->cd();
3417 fNodes->Add(sub4node);
3418 sub3node->cd();
3419 fNodes->Add(sub3node);
3420 sub2node->cd();
3421 fNodes->Add(sub2node);
3422 sub1node->cd();
3423 //
3424 // Place copy #4 of I20B in I12B
3425 //
3426 deltax=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Cos(67.*TMath::Pi()/180.);
3427 deltay=((ddet2-0.01/2.)+(dchip2-0.015/2.))*TMath::Sin(67.*TMath::Pi()/180.);
1266e9b4 3428 sub2node = new TNode("I20B","I20B","I20B",-0.2689+deltax,7.1742+deltay,0.,"itsrot243");
1f99c14b 3429 sub2node->SetLineColor(kColorITS);
3430 sub2node->SetVisibility(0);
3431 sub2node->cd();
3432 //
3433 // Place copy #1 of I1D7 in I20B
3434 //
3435 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],10.708,"");
3436 sub3node->SetLineColor(kColorITS);
3437 sub3node->SetVisibility(0);
3438 sub3node->cd();
3439 //
3440 // Place copy #1 of I1D1 in I1D7
3441 //
3442 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3443 sub4node->SetLineColor(kColorITS);
3444 sub4node->SetVisibility(0);
3445 sub4node->cd();
3446 //
3447 // Place copy #1 of ITS2 in I1D1
3448 //
3449 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3450 sub5node->SetLineColor(kColorITS);
3451 fNodes->Add(sub5node);
3452 sub4node->cd();
3453 fNodes->Add(sub4node);
3454 sub3node->cd();
3455 fNodes->Add(sub3node);
3456 sub2node->cd();
3457 //
3458 // Place copy #2 of I1D7 in I20B
3459 //
3460 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],3.536,"");
3461 sub3node->SetLineColor(kColorITS);
3462 sub3node->SetVisibility(0);
3463 sub3node->cd();
3464 //
3465 // Place copy #1 of I1D1 in I1D7
3466 //
3467 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3468 sub4node->SetLineColor(kColorITS);
3469 sub4node->SetVisibility(0);
3470 sub4node->cd();
3471 //
3472 // Place copy #1 of ITS2 in I1D1
3473 //
3474 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3475 sub5node->SetLineColor(kColorITS);
3476 fNodes->Add(sub5node);
3477 sub4node->cd();
3478 fNodes->Add(sub4node);
3479 sub3node->cd();
3480 fNodes->Add(sub3node);
3481 sub2node->cd();
3482 //
3483 // Place copy #3 of I1D7 in I20B
3484 //
3485 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-3.536,"");
3486 sub3node->SetLineColor(kColorITS);
3487 sub3node->SetVisibility(0);
3488 sub3node->cd();
3489 //
3490 // Place copy #1 of I1D1 in I1D7
3491 //
3492 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3493 sub4node->SetLineColor(kColorITS);
3494 sub4node->SetVisibility(0);
3495 sub4node->cd();
3496 //
3497 // Place copy #1 of ITS2 in I1D1
3498 //
3499 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3500 sub5node->SetLineColor(kColorITS);
3501 fNodes->Add(sub5node);
3502 sub4node->cd();
3503 fNodes->Add(sub4node);
3504 sub3node->cd();
3505 fNodes->Add(sub3node);
3506 sub2node->cd();
3507 //
3508 // Place copy #4 of I1D7 in I20B
3509 //
3510 sub3node = new TNode("I1D7","I1D7","I1D7",-0.0455,-di20b[1]+di1d7[1],-10.708,"");
3511 sub3node->SetLineColor(kColorITS);
3512 sub3node->SetVisibility(0);
3513 sub3node->cd();
3514 //
3515 // Place copy #1 of I1D1 in I1D7
3516 //
3517 sub4node = new TNode("I1D1","I1D1","I1D1",0.,ddet2,0.,"");
3518 sub4node->SetLineColor(kColorITS);
3519 sub4node->SetVisibility(0);
3520 sub4node->cd();
3521 //
3522 // Place copy #1 of ITS2 in I1D1
3523 //
3524 sub5node = new TNode("ITS2","ITS2","ITS2",0.,0.,0.,"");
3525 sub5node->SetLineColor(kColorITS);
3526 fNodes->Add(sub5node);
3527 sub4node->cd();
3528 fNodes->Add(sub4node);
3529 sub3node->cd();
3530 fNodes->Add(sub3node);
3531 sub2node->cd();
3532 fNodes->Add(sub2node);
3533 sub1node->cd();
3534 fNodes->Add(sub1node);
3535 node->cd();
3536 //
3537 // Place copy #5 of I12B in IT12
3538 //
1266e9b4 3539 sub1node = new TNode("I12B","I12B","I12B",0.,0.,0.,"itsrot247");
1f99c14b 3540 sub1node->SetLineColor(kColorITS);
3541 sub1node->SetVisibility(0);
3542 sub1node->cd();
3543 //
3544 // Place copy #1 of I10B in I12B
3545 //
3546 deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(252.*TMath::Pi()/180.);
3547 deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(252.*TMath::Pi()/180.);
1266e9b4 3548 sub2node = new TNode("I10B","I10B","I10B",1.4531+deltax,3.8152+deltay,0.,"itsrot239");
1f99c14b 3549 sub2node->SetLineColor(kColorITS);
3550 sub2node->SetVisibility(0);
3551 sub2node->cd();
3552 //
3553 // Place copy #1 of I107 in I10B
3554 //
3555 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
3556 sub3node->SetLineColor(kColorITS);
3557 sub3node->SetVisibility(0);
3558 sub3node->cd();
3559 //
3560 // Place copy #1 of I101 in I107
3561 //
3562 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
3563 sub4node->SetLineColor(kColorITS);
3564 sub4node->SetVisibility(0);
3565 sub4node->cd();
3566 //
3567 // Place copy #1 of ITS1 in I101
3568 //
3569 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
3570 sub5node->SetLineColor(kColorITS);
3571 fNodes->Add(sub5node);
3572 sub4node->cd();
3573 fNodes->Add(sub4node);
3574 sub3node->cd();
3575 fNodes->Add(sub3node);
3576 sub2node->cd();
3577 //
3578 // Place copy #2 of I107 in I10B
3579 //
3580 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],3.536,"");
3581 sub3node->SetLineColor(kColorITS);
3582 sub3node->SetVisibility(0);
3583 sub3node->cd();
3584 //
3585 // Place copy #1 of I101 in I107
3586 //
3587 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
3588 sub4node->SetLineColor(kColorITS);
3589 sub4node->SetVisibility(0);
3590 sub4node->cd();
3591 //
3592 // Place copy #1 of ITS1 in I101
3593 //
3594 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
3595 sub5node->SetLineColor(kColorITS);
3596 fNodes->Add(sub5node);
3597 sub4node->cd();
3598 fNodes->Add(sub4node);
3599 sub3node->cd();
3600 fNodes->Add(sub3node);
3601 sub2node->cd();
3602 //
3603 // Place copy #3 of I107 in I10B
3604 //
3605 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-3.536,"");
3606 sub3node->SetLineColor(kColorITS);
3607 sub3node->SetVisibility(0);
3608 sub3node->cd();
3609 //
3610 // Place copy #1 of I101 in I107
3611 //
3612 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
3613 sub4node->SetLineColor(kColorITS);
3614 sub4node->SetVisibility(0);
3615 sub4node->cd();
3616 //
3617 // Place copy #1 of ITS1 in I101
3618 //
3619 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
3620 sub5node->SetLineColor(kColorITS);
3621 fNodes->Add(sub5node);
3622 sub4node->cd();
3623 fNodes->Add(sub4node);
3624 sub3node->cd();
3625 fNodes->Add(sub3node);
3626 sub2node->cd();
3627 //
3628 // Place copy #4 of I107 in I10B
3629 //
3630 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],-10.708,"");
3631 sub3node->SetLineColor(kColorITS);
3632 sub3node->SetVisibility(0);
3633 sub3node->cd();
3634 //
3635 // Place copy #1 of I101 in I107
3636 //
3637 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
3638 sub4node->SetLineColor(kColorITS);
3639 sub4node->SetVisibility(0);
3640 sub4node->cd();
3641 //
3642 // Place copy #1 of ITS1 in I101
3643 //
3644 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
3645 sub5node->SetLineColor(kColorITS);
3646 fNodes->Add(sub5node);
3647 sub4node->cd();
3648 fNodes->Add(sub4node);
3649 sub3node->cd();
3650 fNodes->Add(sub3node);
3651 sub2node->cd();
3652 fNodes->Add(sub2node);
3653 sub1node->cd();
3654 //
3655 // Place copy #2 of I10B in I12B
3656 //
3657 deltax=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Cos(270.*TMath::Pi()/180.);
3658 deltay=((ddet1-0.01/2.)+(dchip1-0.015/2.))*TMath::Sin(270.*TMath::Pi()/180.);
1266e9b4 3659 sub2node = new TNode("I10B","I10B","I10B",0.203+deltax,3.8206+deltay,0.,"itsrot238");
1f99c14b 3660 sub2node->SetLineColor(kColorITS);
3661 sub2node->SetVisibility(0);
3662 sub2node->cd();
3663 //
3664 // Place copy #1 of I107 in I10B
3665 //
3666 sub3node = new TNode("I107","I107","I107",-0.0455,-di10b[1]+di107[1],10.708,"");
3667 sub3node->SetLineColor(kColorITS);
3668 sub3node->SetVisibility(0);
3669 sub3node->cd();
3670 //
3671 // Place copy #1 of I101 in I107
3672 //
3673 sub4node = new TNode("I101","I101","I101",0.,ddet1,0.,"");
3674 sub4node->SetLineColor(kColorITS);
3675 sub4node->SetVisibility(0);
3676 sub4node->cd();
3677 //
3678 // Place copy #1 of ITS1 in I101
3679 //
3680 sub5node = new TNode("ITS1","ITS1","ITS1",0.,0.,0.,"");
3681 sub5node->SetLineColor(kColorITS);
3682 fNodes->Add(sub5node);