mirror of
https://git.mirrors.martin98.com/https://github.com/slic3r/Slic3r.git
synced 2025-10-04 15:16:33 +08:00
31 lines
784 B
C++
31 lines
784 B
C++
#ifndef slic3r_SurfaceCollection_hpp_
|
|
#define slic3r_SurfaceCollection_hpp_
|
|
|
|
#include "Surface.hpp"
|
|
#include <vector>
|
|
|
|
namespace Slic3r {
|
|
|
|
class SurfaceCollection
|
|
{
|
|
public:
|
|
Surfaces surfaces;
|
|
|
|
SurfaceCollection() {};
|
|
SurfaceCollection(const Surfaces &_surfaces)
|
|
: surfaces(_surfaces) {};
|
|
operator Polygons() const;
|
|
operator ExPolygons() const;
|
|
void simplify(double tolerance);
|
|
void group(std::vector<SurfacesPtr> *retval);
|
|
template <class T> bool any_internal_contains(const T &item) const;
|
|
template <class T> bool any_bottom_contains(const T &item) const;
|
|
SurfacesPtr filter_by_type(SurfaceType type);
|
|
void filter_by_type(SurfaceType type, Polygons* polygons);
|
|
void append(const SurfaceCollection &coll);
|
|
};
|
|
|
|
}
|
|
|
|
#endif
|