52 , chkOverlap(checkOverlap)
53 , layeredMaterialName(
"none")
54 , layeredMaterial(nullptr)
59 G4double hs[] = { half_size, half_size, half_size };
61 G4int nBin[] = { 1, 1, 1 };
73 std::size_t np =
posVec.size();
74 for(std::size_t i = 0; i < np; ++i)
93 assert(region !=
nullptr);
94 region->AddRootLogicalVolume(worldLog);
95 region->SetWorld(worldPhys);
102 std::size_t np =
posVec.size();
103 for(std::size_t i = 0; i < np; ++i)
110 wisatt->SetVisibility(
false);
111 worldLog->SetVisAttributes(wisatt);
113 visatt->SetVisibility(
true);
150 assert(region !=
nullptr);
151 region->UpdateMaterialList();
#define G4MUTEX_INITIALIZER
G4GLOB_DLL std::ostream G4cout
G4LogicalVolume * GetVolume(const G4String &name, G4bool verbose=true, G4bool reverseSearch=false) const
static G4LogicalVolumeStore * GetInstance()
void SetVisAttributes(const G4VisAttributes *pVA)
void SetSensitiveDetector(G4VSensitiveDetector *pSDetector)
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
static G4NistManager * Instance()
static G4RegionStore * GetInstance()
G4Region * GetRegion(const G4String &name, G4bool verbose=true) const
void SetupGeometry(G4VPhysicalVolume *) override
void List() const override
G4String layeredMaterialName
G4ScoringProbe(G4String lvName, G4double half_size, G4bool checkOverlap=false)
std::vector< G4ThreeVector > posVec
G4bool SetMaterial(G4String val)
G4Material * layeredMaterial
G4LogicalVolume * GetLogicalVolume() const
virtual void List() const
G4MultiFunctionalDetector * fMFD
G4LogicalVolume * fMeshElementLogical
void SetNumberOfSegments(G4int nSegment[3])
void SetSize(G4double size[3])