diff options
Diffstat (limited to 'xs/src/libslic3r/Polyline.hpp')
-rw-r--r-- | xs/src/libslic3r/Polyline.hpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/xs/src/libslic3r/Polyline.hpp b/xs/src/libslic3r/Polyline.hpp new file mode 100644 index 000000000..5462425cf --- /dev/null +++ b/xs/src/libslic3r/Polyline.hpp @@ -0,0 +1,33 @@ +#ifndef slic3r_Polyline_hpp_ +#define slic3r_Polyline_hpp_ + +#include "Line.hpp" +#include "MultiPoint.hpp" + +namespace Slic3r { + +class Polyline; +typedef std::vector<Polyline> Polylines; + +class Polyline : public MultiPoint { + public: + operator Polylines() const; + Point last_point() const; + Point leftmost_point() const; + Lines lines() const; + void clip_end(double distance); + void clip_start(double distance); + void extend_end(double distance); + void extend_start(double distance); + void equally_spaced_points(double distance, Points* points) const; + void simplify(double tolerance); + void split_at(const Point &point, Polyline* p1, Polyline* p2) const; + + #ifdef SLIC3RXS + void from_SV_check(SV* poly_sv); + #endif +}; + +} + +#endif |