Ported clip_end(), length(), is_perimeter(), is_fill(), is_bridge() to XS

This commit is contained in:
Alessandro Ranellucci 2013-11-21 18:03:40 +01:00
parent 761f261a68
commit ac88fbcbb0
5 changed files with 50 additions and 36 deletions

View file

@ -36,6 +36,9 @@ class ExtrusionEntity
virtual void reverse() = 0;
virtual Point* first_point() const = 0;
virtual Point* last_point() const = 0;
bool is_perimeter() const;
bool is_fill() const;
bool is_bridge() const;
};
typedef std::vector<ExtrusionEntity*> ExtrusionEntitiesPtr;
@ -50,6 +53,8 @@ class ExtrusionPath : public ExtrusionEntity
Point* last_point() const;
ExtrusionEntityCollection* intersect_expolygons(ExPolygonCollection* collection) const;
ExtrusionEntityCollection* subtract_expolygons(ExPolygonCollection* collection) const;
void clip_end(double distance);
double length() const;
private:
ExtrusionEntityCollection* _inflate_collection(const Polylines &polylines) const;
};