#pragma once #include #include namespace hpr::geometry { template class Polytope { public: enum class Type { Nullitope = -1, Monon, Dion, Polygon, Polyhedron, Polychoron, Unknown }; protected: const int p_dimension; const int p_space; Type p_type; darray> p_points; public: Polytope() : p_dimension {Dim}, p_space {Space}, p_type {Type::Unknown}, p_points {} {} virtual ~Polytope() = default; }; }