mirror of
https://git.mirrors.martin98.com/https://github.com/slic3r/Slic3r.git
synced 2025-08-15 10:56:06 +08:00
Code/syntax sugar: let Collection types be treated more like a STL container with begin/end iterators.
This commit is contained in:
parent
ccb8204fae
commit
82f227d718
@ -41,6 +41,14 @@ class ExPolygonCollection
|
|||||||
/// ExPolygons and check if at least one contains the point.
|
/// ExPolygons and check if at least one contains the point.
|
||||||
bool contains(const Point &point) const;
|
bool contains(const Point &point) const;
|
||||||
|
|
||||||
|
size_t size() const { return expolygons.size(); }
|
||||||
|
ExPolygons::iterator begin() { return expolygons.begin(); }
|
||||||
|
ExPolygons::iterator end() { return expolygons.end(); }
|
||||||
|
ExPolygons::const_iterator cbegin() const { return expolygons.cbegin();}
|
||||||
|
ExPolygons::const_iterator cend() const { return expolygons.cend();}
|
||||||
|
ExPolygon& at(size_t i) { return expolygons.at(i); }
|
||||||
|
const ExPolygon& at(size_t i) const { return expolygons.at(i); }
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
inline ExPolygonCollection&
|
inline ExPolygonCollection&
|
||||||
|
@ -31,6 +31,7 @@ class ExtrusionEntityCollection : public ExtrusionEntity
|
|||||||
return this->entities.empty();
|
return this->entities.empty();
|
||||||
};
|
};
|
||||||
void clear();
|
void clear();
|
||||||
|
size_t size() const { return this->entities.size(); }
|
||||||
void swap (ExtrusionEntityCollection &c);
|
void swap (ExtrusionEntityCollection &c);
|
||||||
void append(const ExtrusionEntity &entity);
|
void append(const ExtrusionEntity &entity);
|
||||||
void append(const ExtrusionEntitiesPtr &entities);
|
void append(const ExtrusionEntitiesPtr &entities);
|
||||||
@ -53,6 +54,12 @@ class ExtrusionEntityCollection : public ExtrusionEntity
|
|||||||
CONFESS("Calling as_polyline() on a ExtrusionEntityCollection");
|
CONFESS("Calling as_polyline() on a ExtrusionEntityCollection");
|
||||||
return Polyline();
|
return Polyline();
|
||||||
};
|
};
|
||||||
|
ExtrusionEntitiesPtr::iterator begin() { return entities.begin(); }
|
||||||
|
ExtrusionEntitiesPtr::iterator end() { return entities.end(); }
|
||||||
|
ExtrusionEntitiesPtr::const_iterator cbegin() const { return entities.cbegin(); }
|
||||||
|
ExtrusionEntitiesPtr::const_iterator cend() const { return entities.cend(); }
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user