mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-08-03 16:50:44 +08:00
30 lines
881 B
C++
30 lines
881 B
C++
#ifndef SRC_LIBSLIC3R_TRIANGLESELECTORWRAPPER_HPP_
|
|
#define SRC_LIBSLIC3R_TRIANGLESELECTORWRAPPER_HPP_
|
|
|
|
#include "TriangleSelector.hpp"
|
|
#include "AABBTreeIndirect.hpp"
|
|
|
|
namespace Slic3r {
|
|
|
|
//NOTE: We need to replace the FacetsAnnotation struct for support storage (or extend/add another)
|
|
// Problems: Does not support negative volumes, strange usage for supports computed from extrusion -
|
|
// expensively converted back to triangles and then sliced again.
|
|
// Another problem is weird and very limited interface when painting supports via algorithms
|
|
|
|
|
|
class TriangleSelectorWrapper {
|
|
public:
|
|
const TriangleMesh &mesh;
|
|
TriangleSelector selector;
|
|
AABBTreeIndirect::Tree<3, float> triangles_tree;
|
|
|
|
TriangleSelectorWrapper(const TriangleMesh &mesh);
|
|
|
|
void enforce_spot(const Vec3f &point, float radius);
|
|
|
|
};
|
|
|
|
}
|
|
|
|
#endif /* SRC_LIBSLIC3R_TRIANGLESELECTORWRAPPER_HPP_ */
|