15 gROOT->Macro(
"$VMCWORKDIR/gconfig/rootlogon.C");
18 gSystem->Load(
"libGeoBase");
19 gSystem->Load(
"libParBase");
20 gSystem->Load(
"libBase");
21 gSystem->Load(
"libPndData");
22 gSystem->Load(
"libPassive");
23 gSystem->Load(
"libHypGe");
29 outfile += outfileWithoutPath;
31 TFile*
fi =
new TFile(outfile,
"RECREATE");
33 FairGeoLoader*
geoLoad =
new FairGeoLoader(
"TGeo",
"FairGeoLoader");
34 FairGeoInterface *
geoFace = geoLoad->getGeoInterface();
35 geoFace->setMediaFile(
"../../../../geometry/media_pnd.geo");
39 FairGeoMedia *
Media = geoFace->getMedia();
40 FairGeoBuilder *
geobuild=geoLoad->getGeoBuilder();
42 FairGeoMedium *medGe = Media->getMedium(
"germanium");
43 Int_t nmedGe=geobuild->createMedium(medGe);
46 FairGeoMedium *medcap = Media->getMedium(
"HYPaluminium");
47 Int_t nmedcap=geobuild->createMedium(medcap);
49 TGeoMedium *Ge =
gGeoManager->GetMedium(
"germanium");
52 TGeoMedium *Al =
gGeoManager->GetMedium(
"HYPaluminium");
56 TGeoManager *
geom = (TGeoManager*)gROOT->FindObject(
"FAIRGeom");
57 TGeoVolume *
top =
new TGeoVolumeAssembly(
"hpGe");
58 TGeoVolume *Realtop =
new TGeoVolumeAssembly(
"Realtop");
61 geom->SetTopVolume(top);
63 Int_t CrystalNumber = 1;
65 Double_t ClusterRadius = ClusterRadius_ext;
78 SingleCluster ->
PlaceCluster(Realtop, GlobalZOffset,ClusterRadius, 0,30,0,&CrystalNumber);
79 SingleCluster ->
PlaceCluster(Realtop, GlobalZOffset,ClusterRadius, 0,60,0,&CrystalNumber);
81 top->AddNode(Realtop,0);
82 Realtop->PrintNodes();
83 geom->CloseGeometry();
84 cout <<
"# of Nodes: " << Realtop->CountNodes(10,1) << endl;
88 cout <<
"Wrote geometry to file: " << outfileWithoutPath << endl;
TString BuildOutputNameDetector(Double_t ClusterRadius)
TGeoManager * gGeoManager
void PrintNodes(Int_t nLevels)
FairGeoBuilder * geobuild
void PlaceCluster(TGeoVolume *top, TGeoMatrix *ClusterPlaceAndDirectionTranslation, Int_t *CrystalNumber)
FairGeoInterface * geoFace