25 class RectangleBounds;
26 class TrapezoidBounds;
72 double halez) noexcept(
false);
82 double alpha,
double beta) noexcept(
false);
105 std::vector<double>
values() const final;
135 const
Vector3& envelope = {0, 0, 0},
136 const Volume* entity =
nullptr)
const final;
139 std::ostream&
toStream(std::ostream& sl)
const override;
169 template <class stream_t>
170 stream_t&
dumpT(stream_t& dt) const;
173 template <class stream_t>
175 dt << std::setiosflags(std::ios::fixed);
176 dt << std::setprecision(5);
177 dt <<
"Acts::TrapezoidVolumeBounds: (minhalfX, halfY, halfZ, alpha, beta) "
181 dt <<
", " <<
get(
eAlpha) <<
", " <<
get(
eBeta) <<
")";
186 std::vector<double> valvector;
193 throw std::invalid_argument(
194 "TrapezoidVolumeBounds: invalid trapezoid parameters in x.");
197 throw std::invalid_argument(
"TrapezoidVolumeBounds: invalid y extrusion.");
200 throw std::invalid_argument(
"TrapezoidVolumeBounds: invalid z extrusion.");