1 #include "DD4hep/DetFactoryHelper.h"
14 double eta =
args.value<
double>(
"Eta");
16 double shiftY =
args.value<
double>(
"ShiftX");
17 double shiftX =
args.value<
double>(
"ShiftY");
18 double zoffset =
args.value<
double>(
"Zoffset");
19 double dist =
args.value<
double>(
"Distance");
20 double tilt =
args.value<
double>(
"TiltAngle");
21 int copyNumber =
args.value<
int>(
"Number");
24 childName = idNameSpace + childName;
30 <<
"axes; \tZoffest " <<
convertCmToMm(zoffset) <<
"\tRadial Distance "
33 edm::LogVerbatim(
"HCalGeom") <<
"DDHCalTBZposAlgo: Parent " <<
args.parentName() <<
"\tChild " << childName
34 <<
" NameSpace " << idNameSpace;
41 double thetax = 90._deg -
theta;
42 double z = zoffset + dist *
tan(thetax);
43 double x = shiftX - shiftY *
sin(tilt);
44 double y = shiftY *
cos(tilt);
46 dd4hep::Rotation3D
rot;
52 rot = dd4hep::RotationZ(tilt);
54 mother.placeVolume(
child, copyNumber, dd4hep::Transform3D(
rot, tran));
56 edm::LogVerbatim(
"HCalGeom") <<
"DDHCalTBZposAlgo: " <<
child.name() <<
" number " << copyNumber <<
" positioned in "