21 m_values({halex, haley, halez}),
22 m_xyBounds(std::make_shared<const RectangleBounds>(halex, haley)),
23 m_yzBounds(std::make_shared<const RectangleBounds>(haley, halez)),
24 m_zxBounds(std::make_shared<const RectangleBounds>(halez, halex)) {
30 m_values(bobo.m_values),
50 (transformPtr ==
nullptr) ? Transform3D::Identity() : (*transformPtr);
60 rSurfaces.push_back(Surface::makeShared<PlaneSurface>(
61 std::shared_ptr<const Transform3D>(tTransform),
m_xyBounds));
65 rSurfaces.push_back(Surface::makeShared<PlaneSurface>(
66 std::shared_ptr<const Transform3D>(tTransform),
m_xyBounds));
75 rSurfaces.push_back(Surface::makeShared<PlaneSurface>(
76 std::shared_ptr<const Transform3D>(tTransform),
m_yzBounds));
82 rSurfaces.push_back(Surface::makeShared<PlaneSurface>(
83 std::shared_ptr<const Transform3D>(tTransform),
m_yzBounds));
91 rSurfaces.push_back(Surface::makeShared<PlaneSurface>(
92 std::shared_ptr<const Transform3D>(tTransform),
m_zxBounds));
98 rSurfaces.push_back(Surface::makeShared<PlaneSurface>(
99 std::shared_ptr<const Transform3D>(tTransform),
m_zxBounds));
110 const Volume* entity)
const {
111 Vector3D vmin(-
get(eHalfLengthX), -
get(eHalfLengthY), -
get(eHalfLengthZ));
112 Vector3D vmax(
get(eHalfLengthX),
get(eHalfLengthY),
get(eHalfLengthZ));
115 return trf ==
nullptr ? box : box.
transformed(*trf);