mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-06-03 02:22:46 +00:00
Removed the deprecated VibrationLimit feature. Added triangle infill. The Prusa3D fork of Slic3r has been marked as "Slic3r Prusa Edition" with menus pointing to the prusa3d/slic3r github release page and Prusa3D drivers downloads page.
52 lines
1.4 KiB
C++
52 lines
1.4 KiB
C++
#ifndef slic3r_FillRectilinear2_hpp_
|
|
#define slic3r_FillRectilinear2_hpp_
|
|
|
|
#include "../libslic3r.h"
|
|
|
|
#include "FillBase.hpp"
|
|
|
|
namespace Slic3r {
|
|
|
|
class Surface;
|
|
|
|
class FillRectilinear2 : public Fill
|
|
{
|
|
public:
|
|
virtual ~FillRectilinear2() {}
|
|
virtual Polylines fill_surface(const Surface *surface, const FillParams ¶ms);
|
|
|
|
protected:
|
|
bool fill_surface_by_lines(const Surface *surface, const FillParams ¶ms, float angleBase, Polylines &polylines_out);
|
|
|
|
coord_t _min_spacing;
|
|
coord_t _line_spacing;
|
|
// distance threshold for allowing the horizontal infill lines to be connected into a continuous path
|
|
coord_t _diagonal_distance;
|
|
};
|
|
|
|
class FillGrid2 : public FillRectilinear2
|
|
{
|
|
public:
|
|
virtual ~FillGrid2() {}
|
|
virtual Polylines fill_surface(const Surface *surface, const FillParams ¶ms);
|
|
|
|
protected:
|
|
// The grid fill will keep the angle constant between the layers, see the implementation of Slic3r::Fill::Base.
|
|
virtual float _layer_angle(size_t idx) const { return 0.f; }
|
|
};
|
|
|
|
class FillTriangles : public FillRectilinear2
|
|
{
|
|
public:
|
|
virtual ~FillTriangles() {}
|
|
virtual Polylines fill_surface(const Surface *surface, const FillParams ¶ms);
|
|
|
|
protected:
|
|
// The grid fill will keep the angle constant between the layers, see the implementation of Slic3r::Fill::Base.
|
|
virtual float _layer_angle(size_t idx) const { return 0.f; }
|
|
};
|
|
|
|
}; // namespace Slic3r
|
|
|
|
#endif // slic3r_FillRectilinear2_hpp_
|