2013-07-14 12:56:43 +00:00
|
|
|
#ifndef slic3r_SurfaceCollection_hpp_
|
|
|
|
#define slic3r_SurfaceCollection_hpp_
|
|
|
|
|
|
|
|
#include "Surface.hpp"
|
2013-11-22 23:07:04 +00:00
|
|
|
#include <vector>
|
2013-07-14 12:56:43 +00:00
|
|
|
|
|
|
|
namespace Slic3r {
|
|
|
|
|
|
|
|
class SurfaceCollection
|
|
|
|
{
|
|
|
|
public:
|
2013-08-08 00:10:34 +00:00
|
|
|
Surfaces surfaces;
|
2014-08-03 16:41:09 +00:00
|
|
|
|
|
|
|
operator Polygons() const;
|
|
|
|
operator ExPolygons() const;
|
2013-11-22 01:16:10 +00:00
|
|
|
void simplify(double tolerance);
|
2014-02-10 12:19:44 +00:00
|
|
|
void group(std::vector<SurfacesPtr> *retval);
|
2014-12-09 00:08:58 +00:00
|
|
|
template <class T> bool any_internal_contains(const T &item) const;
|
2015-01-06 10:29:34 +00:00
|
|
|
template <class T> bool any_bottom_contains(const T &item) const;
|
2014-12-24 09:20:55 +00:00
|
|
|
SurfacesPtr filter_by_type(SurfaceType type);
|
|
|
|
void filter_by_type(SurfaceType type, Polygons* polygons);
|
2013-07-14 12:56:43 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|