91 string flagSelector =
"Y";
95 for (
int iBlade = 0; iBlade <
nBlades; ++iBlade) {
100 double phiy = atan2(
cos(phi), -
sin(phi));
110 LogDebug(
"TrackerGeom") <<
"DDPixPhase1FwdDiskAlgo test: Creating a new "
111 <<
"rotation: " << rotstr <<
"\t" << thetx / CLHEP::deg <<
", " << phix / CLHEP::deg
112 <<
", " << thety / CLHEP::deg <<
", " << phiy / CLHEP::deg <<
", " << thetz / CLHEP::deg
113 <<
", " << phiz / CLHEP::deg;
114 LogDebug(
"TrackerGeom") <<
"Rotation Matrix (" << phi / CLHEP::deg <<
", " <<
bladeAngle / CLHEP::deg <<
", "
123 rot =
DDrot(
DDName(rotstr, rotns), thetx, phix, thety, phiy, thetz, phiz);
130 LogDebug(
"TrackerGeom") <<
"DDPixPhase1FwdDiskAlgo test: " <<
child <<
" number " << copy <<
" positioned in "
131 << mother <<
" at " << tran <<
" with " <<
rot;
void position(const DDLogicalPart &self, const DDLogicalPart &parent, const std::string ©no, const DDTranslation &trans, const DDRotation &rot, const DDDivision *div=nullptr)
Sin< T >::type sin(const T &t)
DDName is used to identify DDD entities uniquely.
std::string to_string(const V &value)
Represents a uniquely identifyable rotation matrix.
U second(std::pair< T, U > const &p)
Cos< T >::type cos(const T &t)
vector< double > bladeZShift
std::pair< std::string, std::string > DDSplit(const std::string &n)
split into (name,namespace), separator = ':'
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation