7 #include "DD4hep/Shapes.h"
16 return (static_cast<int>(
val + 0.5) != 0);
44 const TGeoBBox *box = fv.getShapePtr<TGeoBBox>();
57 const TGeoConeSeg *coneSeg = fv.getShapePtr<TGeoConeSeg>();
58 dz_ = coneSeg->GetDZ();
64 rmin1_ = coneSeg->GetRmin1();
65 rmin2_ = coneSeg->GetRmin2();
66 rmax1_ = coneSeg->GetRmax1();
67 rmax2_ = coneSeg->GetRmax2();
96 const TGeoTrap *trap = fv.getShapePtr<TGeoTrap>();
97 halfZ_ = trap->GetDz();
100 x1_ = trap->GetBl1();
101 x2_ = trap->GetTl1();
104 x3_ = trap->GetBl2();
105 x4_ = trap->GetTl2();
117 const TGeoTubeSeg *tube = fv.getShapePtr<TGeoTubeSeg>();
118 zHalf_ = tube->GetDz();
119 rIn_ = tube->GetRmin();
120 rOut_ = tube->GetRmax();
135 auto tube = fv.solid();
136 std::vector<double>
params = tube.dimensions();
138 edm::LogError(
"DDShapes DDTruncTubs") <<
"Truncated tube parameters list too small: " <<
params.size();
141 LogTrace(
"DDShapes DDTruncTubs") <<
"DDTruncTubs zHalf = " <<
params[0];
142 LogTrace(
"DDShapes DDTruncTubs") <<
"DDTruncTubs rIn = " <<
params[1];
143 LogTrace(
"DDShapes DDTruncTubs") <<
"DDTruncTubs rOut = " <<
params[2];
144 LogTrace(
"DDShapes DDTruncTubs") <<
"DDTruncTubs startPhi = " <<
params[3];
145 LogTrace(
"DDShapes DDTruncTubs") <<
"DDTruncTubs deltaPhi = " <<
params[4];
146 LogTrace(
"DDShapes DDTruncTubs") <<
"DDTruncTubs cutAtStart = " <<
params[5];
147 LogTrace(
"DDShapes DDTruncTubs") <<
"DDTruncTubs cutAtDelta = " <<
params[6];
148 LogTrace(
"DDShapes DDTruncTubs") <<
"DDTruncTubs cutInside = " <<
params[7];
157 cutInside_ = (
params[7] != 0);