7 enum class PolygonOrder
22 template <
typename TVertex>
33 PolygonOrder
order = PolygonOrder::TriangleFanFromFirst;
48 return {.order = PolygonOrder::TriangleFanFromFirst, .points = {p_a, p_b, p_c}};
60 static IPolygon<TVertex> makeQuad(
const TVertex &p_a,
const TVertex &p_b,
const TVertex &p_c,
const TVertex &p_d,
const PolygonOrder p_order = PolygonOrder::TriangleFanFromFirst)
62 return {.order = p_order, .points = {p_a, p_b, p_c, p_d}};
Stores vertex points and winding order for polygon triangulation.
Definition spk_polygon.hpp:24
PolygonOrder Order
Alias for polygon ordering enumeration.
Definition spk_polygon.hpp:28
std::vector< TVertex > points
Polygon vertex points.
Definition spk_polygon.hpp:37
static IPolygon< TVertex > makeTriangle(const TVertex &p_a, const TVertex &p_b, const TVertex &p_c)
Creates a triangle polygon.
Definition spk_polygon.hpp:46
static IPolygon< TVertex > makeQuad(const TVertex &p_a, const TVertex &p_b, const TVertex &p_c, const TVertex &p_d, const PolygonOrder p_order=PolygonOrder::TriangleFanFromFirst)
Creates a quad polygon.
Definition spk_polygon.hpp:60
PolygonOrder order
Polygon triangulation order.
Definition spk_polygon.hpp:33