#pragma once #include #include #include "Shape.h" #include "J3ML/LinearAlgebra.h" namespace J3ML::Geometry { class Polygon : public Shape { public: std::vector vertices; AABB MinimalEnclosingAABB() const; int NumVertices() const { return (int)vertices.size(); } Vector3 Vertex(int vertexIndex) const { assert(vertexIndex >= 0); assert(vertexIndex < (int) vertices.size()); return vertices[vertexIndex]; } protected: private: }; }