142 std::string getTypeName()
const override;
155 explicit Prism(
double height,
165 explicit Prism(
double height,
175 explicit Prism(
double height,
185 explicit Prism(
double height,
195 explicit Prism(
double height,
205 explicit Prism(
double height,
225 this->height = height;
233 const std::vector<LateralVec<double>>&
getVertices()
const {
return vertices; }
239 std::vector<LateralVec<double>>&
getVertices() {
return vertices; }
246 this->vertices = vertices;
255 this->vertices = std::move(vertices);
265 vertices.at(index) =
vertex;
275 vertices.insert(vertices.begin() + index,
vertex);
284 vertices.push_back(
vertex);
293 vertices.erase(vertices.begin() + index);
321 void validate()
const override;
323 Box getBoundingBox()
const override;
325 bool contains(
const DVec& p)
const override;
329 void addPointsAlongToSet(std::set<double>& points,
332 double min_step_size)
const override;
336 double min_step_size)
const override;