30 class IVisualization3D;
94 double halfphi =
M_PI,
95 double avgphi = 0.) noexcept(
false)
139 std::vector<double>
values() const final;
167 const
Vector3D& envelope = {0, 0, 0},
168 const Volume* entity =
nullptr)
const final;
181 std::ostream&
toStream(std::ostream& sl)
const override;
209 template <class stream_t>
210 stream_t&
dumpT(stream_t& dt) const;
217 double ros =
perp(pos);
219 bool insideR = insidePhi
220 ? ((ros >=
get(
eMinR) - tol) && (ros <=
get(
eMaxR) + tol))
224 return (insideZ && insideR && insidePhi);
245 template <
class stream_t>
247 dt << std::setiosflags(std::ios::fixed);
248 dt << std::setprecision(5);
249 dt <<
"Acts::CylinderVolumeBounds: (rMin, rMax, halfZ, halfPhi, "
257 std::vector<double> valvector;
264 throw std::invalid_argument(
"CylinderVolumeBounds: invalid radial input.");
267 throw std::invalid_argument(
268 "CylinderVolumeBounds: invalid longitudinal input.");
271 throw std::invalid_argument(
272 "CylinderVolumeBounds: invalid phi sector setup.");
275 throw std::invalid_argument(
276 "CylinderVolumeBounds: invalid phi positioning.");