57           gROOT->Macro(
"$VMCWORKDIR/gconfig/rootlogon.C");
 
   60           gSystem->Load(
"libGeoBase");
 
   61           gSystem->Load(
"libParBase");
 
   62           gSystem->Load(
"libBase");
 
   63           gSystem->Load(
"libPndData");
 
   64           gSystem->Load(
"libPassive");
 
   69           FairGeoLoader* 
geoLoad = 
new FairGeoLoader(
"TGeo",
"FairGeoLoader");
 
   70           FairGeoInterface *
geoFace = geoLoad->getGeoInterface();
 
   71           geoFace->setMediaFile(
"../../../geometry/media_pnd.geo");
 
   77           FairGeoMedia *
Media =  geoFace->getMedia();
 
   78           FairGeoBuilder *
geobuild=geoLoad->getGeoBuilder();
 
   83           Int_t 
nmed=geobuild->createMedium(CbmMediumAir);
 
   84           nmed=geobuild->createMedium(CbmMediumSilicon);
 
   86           TGeoManager* 
gGeoMan = (TGeoManager*)gROOT->FindObject(
"FAIRGeom");
 
   88           TGeoVolume *
top = 
new TGeoVolumeAssembly(
"TS");
 
   90           gGeoMan->SetTopVolume(top);
 
   92           TGeoShape *
BoxDouble1 = 
new TGeoBBox(
"StripActiveTD1", kDx, kDy, kDz);
 
   93           TGeoShape *
BoxDouble2 = 
new TGeoBBox(
"StripActiveTD2", kDx, kDy, kDz);
 
   94           TGeoShape *
BoxSingle1 = 
new TGeoBBox(
"StripActiveTS1", kDx, kDy, kDz);
 
   95           TGeoShape *
BoxSingle2 = 
new TGeoBBox(
"StripActiveTS2", kDx, kDy, kDz);
 
   96           TGeoShape *
BoxSingle3 = 
new TGeoBBox(
"StripActiveTS3", kDx, kDy, kDz);
 
   97           TGeoShape *
BoxSingle4 = 
new TGeoBBox(
"StripActiveTS4", kDx, kDy, kDz);
 
   99           TGeoVolume* 
BoxVolDouble1 = 
new TGeoVolume(
"StripActiveTD1",BoxDouble1,gGeoMan->GetMedium(
"silicon"));
 
  100           TGeoVolume* 
BoxVolDouble2 = 
new TGeoVolume(
"StripActiveTD2",BoxDouble2,gGeoMan->GetMedium(
"silicon"));
 
  101           TGeoVolume* 
BoxVolSingle3a = 
new TGeoVolume(
"StripActiveTS3a",BoxSingle1,gGeoMan->GetMedium(
"silicon"));
 
  102           TGeoVolume* 
BoxVolSingle3b = 
new TGeoVolume(
"StripActiveTS3b",BoxSingle2,gGeoMan->GetMedium(
"silicon"));
 
  103           TGeoVolume* 
BoxVolSingle4a = 
new TGeoVolume(
"StripActiveTS4a",BoxSingle3,gGeoMan->GetMedium(
"silicon"));
 
  104           TGeoVolume* 
BoxVolSingle4b = 
new TGeoVolume(
"StripActiveTS4b",BoxSingle4,gGeoMan->GetMedium(
"silicon"));
 
  107           TGeoTranslation* 
trt1 = 
new TGeoTranslation(offs1x,offs1y,kPos1);
 
  108           TGeoTranslation* 
trt2 = 
new TGeoTranslation(offs2x,offs2y,kPos2);
 
  109           TGeoTranslation* 
trt3a = 
new TGeoTranslation(offs3x,offs3y,kPos3 - 0.5*kGap3 - kDz/2.);
 
  110           TGeoTranslation* 
trt3b = 
new TGeoTranslation(offs3x,offs3y,kPos3 + 0.5*kGap3 + kDz/2.);
 
  111           TGeoTranslation* 
trt4a = 
new TGeoTranslation(offs4x,offs4y,kPos4 - 0.5*kGap4 - kDz/2.);
 
  112           TGeoTranslation* 
trt4b = 
new TGeoTranslation(offs4x,offs4y,kPos4 + 0.5*kGap4 + kDz/2.);
 
  115           TGeoRotation* 
rot1 = 
new TGeoRotation(
"",90.,0.,0.);
 
  117           TGeoCombiTrans* 
trc1= 
new TGeoCombiTrans(*trt1,*dummyrot);
 
  118           trc1->SetName(
"Sensor1");
 
  119           trc1->RegisterYourself();
 
  121           TGeoCombiTrans* 
trc2= 
new TGeoCombiTrans(*trt2,*dummyrot);
 
  122           trc2->SetName(
"Sensor2");
 
  123           trc2->RegisterYourself();
 
  125           TGeoCombiTrans* 
trc3a= 
new TGeoCombiTrans(*trt3a,*dummyrot);
 
  126           trc3a->SetName(
"Sensor3a");
 
  127           trc3a->RegisterYourself();
 
  130           TGeoCombiTrans* 
trc3b= 
new TGeoCombiTrans(*trt3b,*rot1);
 
  131           trc3b->SetName(
"Sensor3b");
 
  132           trc3b->RegisterYourself();
 
  134           TGeoCombiTrans* 
trc4a= 
new TGeoCombiTrans(*trt4a,*dummyrot);
 
  135           trc4a->SetName(
"Sensor4a");
 
  136           trc4a->RegisterYourself();
 
  139           TGeoCombiTrans* 
trc4b= 
new TGeoCombiTrans(*trt4b,*rot1);
 
  140           trc4b->SetName(
"Sensor4b");
 
  141           trc4b->RegisterYourself();
 
  143           TGeoVolumeAssembly* 
SubunitVol = 
new TGeoVolumeAssembly(
"TTVol");
 
  147           SubunitDouble->AddNode(BoxVolDouble1,0,trc1);
 
  148           SubunitDouble->AddNode(BoxVolDouble2,0,trc2);
 
  152           SubunitSingle->AddNode(BoxVolSingle3a,0,trc3a);
 
  153           SubunitSingle->AddNode(BoxVolSingle3b,0,trc3b);
 
  154           SubunitSingle->AddNode(BoxVolSingle4a,0,trc4a);
 
  155           SubunitSingle->AddNode(BoxVolSingle4b,0,trc4b);
 
  157           SubunitVol->AddNode(SubunitDouble,0,
new TGeoCombiTrans());
 
  158           SubunitVol->AddNode(SubunitSingle,0,
new TGeoCombiTrans());
 
  160           top->AddNode(SubunitVol,0,
new TGeoCombiTrans());
 
  162           gGeoMan->CloseGeometry();
 
  163     gGeoMan->Export(outfile.Data());
 
TGeoVolumeAssembly * SubunitSingle
TGeoVolume * BoxVolDouble1
TGeoVolume * BoxVolSingle4a
TGeoVolumeAssembly * SubunitVol
TGeoVolumeAssembly * SubunitDouble
FairGeoInterface * geoFace
FairGeoBuilder * geobuild
FairGeoMedium * CbmMediumSilicon
FairGeoMedium * CbmMediumAir
TGeoVolume * BoxVolDouble2
TGeoVolume * BoxVolSingle4b
TGeoVolume * BoxVolSingle3b
TGeoVolume * BoxVolSingle3a