92void G4tgrSolid::FillSolidParams(
const std::vector<G4String>& wl)
95 std::map<G4String, std::set<G4int>> angleParams;
100 angleParams[
"TUBS"] = apar;
104 angleParams[
"CONS"] = apar;
109 angleParams[
"PARA"] = apar;
115 angleParams[
"TRAP"] = apar;
121 angleParams[
"SPHERE"] = apar;
125 angleParams[
"TORUS"] = apar;
129 angleParams[
"POLYCONE"] = apar;
133 angleParams[
"POLYHEDRA"] = apar;
137 angleParams[
"HYPE"] = apar;
140 angleParams[
"TWISTED_BOX"] = apar;
146 angleParams[
"TWISTED_TRAP"] = apar;
149 angleParams[
"TWISTED_TRD"] = apar;
153 angleParams[
"TWISTED_TUBS"] = apar;
155 std::vector<G4double>* vd =
new std::vector<G4double>;
157 std::size_t noParRead = wl.size() - 3;
161 for(
G4int ii = 0; ii < (
G4int)noParRead; ++ii)
164 std::map<G4String, std::set<G4int>>::const_iterator ite =
165 angleParams.find(solidType);
166 if(ite != angleParams.cend())
168 std::set<G4int> apar2 = (*ite).second;
169 if(apar2.find(ii) != apar2.cend())
176 G4cout <<
" G4tgrSolid::FillSolidParams() - Angle param found "
177 << solidType <<
" " << ii <<
G4endl;
197 for(std::size_t ii = 0; ii < solpar.size(); ++ii)
199 os << solpar[ii] <<
" ";
CLHEP::Hep3Vector G4ThreeVector
G4GLOB_DLL std::ostream G4cout
std::ostream & operator<<(std::ostream &os, const G4tgrSolid &sol)
static G4int GetVerboseLevel()
virtual const G4String & GetRelativeRotMatName() const
virtual G4ThreeVector GetRelativePlace() const
const std::vector< std::vector< G4double > * > GetSolidParams() const
std::vector< std::vector< G4double > * > theSolidParams
static G4String GetString(const G4String &str)
static G4double GetDouble(const G4String &str, G4double unitval=1.)
void RegisterMe(G4tgrSolid *vol)
static G4tgrVolumeMgr * GetInstance()