Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/supermerill/SuperSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'xs/src/libslic3r/Polyline.hpp')
-rw-r--r--xs/src/libslic3r/Polyline.hpp33
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