23 class ISurfaceMaterial;
48 std::shared_ptr<const CylinderBounds> cBounds,
double thickness,
49 std::shared_ptr<const ISurfaceMaterial>
material =
nullptr)
54 Surface::makeShared<CylinderSurface>(
std::move(cBounds), *
this);
68 std::shared_ptr<const ISurfaceMaterial>
material =
nullptr)
73 Surface::makeShared<PlaneSurface>(
std::move(pBounds), *
this);
87 std::shared_ptr<const ISurfaceMaterial>
material =
nullptr)
92 Surface::makeShared<LineSurfaceStub>(
std::move(lBounds), *
this);