diff options
author | Alessandro Ranellucci <aar@cpan.org> | 2016-03-19 17:33:58 +0300 |
---|---|---|
committer | Alessandro Ranellucci <aar@cpan.org> | 2016-03-19 21:20:04 +0300 |
commit | 6dc42ee902ec630ef21c1f50c96b726a8b56105b (patch) | |
tree | b25c4a5c0468905c92c46202526d863b4cac8859 /xs/src/libslic3r/Line.hpp | |
parent | 5ff7511a148bcfcd42c579f5c8e80306376c97d7 (diff) |
Variable-width gap fill. Yay! #2960
Diffstat (limited to 'xs/src/libslic3r/Line.hpp')
-rw-r--r-- | xs/src/libslic3r/Line.hpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/xs/src/libslic3r/Line.hpp b/xs/src/libslic3r/Line.hpp index c4438792a..ae1f4cb7d 100644 --- a/xs/src/libslic3r/Line.hpp +++ b/xs/src/libslic3r/Line.hpp @@ -9,7 +9,9 @@ namespace Slic3r { class Line; class Linef3; class Polyline; +class ThickLine; typedef std::vector<Line> Lines; +typedef std::vector<ThickLine> ThickLines; class Line { @@ -39,6 +41,18 @@ class Line double direction() const; Vector vector() const; Vector normal() const; + void extend_end(double distance); + void extend_start(double distance); + bool intersection(const Line& line, Point* intersection) const; +}; + +class ThickLine : public Line +{ + public: + coordf_t a_width, b_width; + + ThickLine() : a_width(0), b_width(0) {}; + ThickLine(Point _a, Point _b) : a_width(0), b_width(0), Line(_a, _b) {}; }; class Linef |