#ifndef slic3r_Polygon_hpp_ #define slic3r_Polygon_hpp_ extern "C" { #include "EXTERN.h" #include "perl.h" #include "XSUB.h" #include "ppport.h" } #include #include "Polyline.hpp" namespace Slic3r { class Polygon : public MultiPoint { public: Lines lines(); }; typedef std::vector Polygons; Lines Polygon::lines() { Lines lines; for (int i = 0; i < this->points.size()-1; i++) { lines.push_back(Line(this->points[i], this->points[i+1])); } lines.push_back(Line(this->points.back(), this->points.front())); return lines; } } #endif