mirror of
https://git.mirrors.martin98.com/https://github.com/slic3r/Slic3r.git
synced 2025-08-14 18:55:59 +08:00
Fix infill projection
This commit is contained in:
parent
92845300be
commit
3232350ffd
@ -914,9 +914,10 @@ sub _repaint {
|
|||||||
if ($self->print->layer_solid($self->layer_num)) {
|
if ($self->print->layer_solid($self->layer_num)) {
|
||||||
$self->_paint_expolygon($_, $dc) for @{$self->print->layer_slices($self->layer_num)};
|
$self->_paint_expolygon($_, $dc) for @{$self->print->layer_slices($self->layer_num)};
|
||||||
} else {
|
} else {
|
||||||
|
# perimeters first, because their "hole" is painted black
|
||||||
$self->_paint_expolygon($_, $dc) for
|
$self->_paint_expolygon($_, $dc) for
|
||||||
@{$self->print->layer_solid_infill($self->layer_num)},
|
@{$self->print->layer_perimeters($self->layer_num)},
|
||||||
@{$self->print->layer_perimeters($self->layer_num)};
|
@{$self->print->layer_solid_infill($self->layer_num)};
|
||||||
|
|
||||||
$self->_paint_expolygon($_, $dc)
|
$self->_paint_expolygon($_, $dc)
|
||||||
for @{union_ex($self->print->layer_infill($self->layer_num)->grow)};
|
for @{union_ex($self->print->layer_infill($self->layer_num)->grow)};
|
||||||
|
@ -42,6 +42,7 @@ protected:
|
|||||||
class FillLine : public FillRectilinear
|
class FillLine : public FillRectilinear
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
virtual Fill* clone() const { return new FillLine(*this); };
|
||||||
virtual ~FillLine() {}
|
virtual ~FillLine() {}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
@ -62,6 +63,7 @@ protected:
|
|||||||
class FillGrid : public FillRectilinear
|
class FillGrid : public FillRectilinear
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
virtual Fill* clone() const { return new FillGrid(*this); };
|
||||||
virtual ~FillGrid() {}
|
virtual ~FillGrid() {}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
@ -74,11 +76,12 @@ protected:
|
|||||||
class FillAlignedRectilinear : public FillRectilinear
|
class FillAlignedRectilinear : public FillRectilinear
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
virtual Fill* clone() const { return new FillAlignedRectilinear(*this); };
|
||||||
virtual ~FillAlignedRectilinear() {};
|
virtual ~FillAlignedRectilinear() {};
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// Keep the angle constant in all layers.
|
// Keep the angle constant in all layers.
|
||||||
virtual float _layer_angle(size_t idx) const { printf("ALIGNED\n"); return 0.f; };
|
virtual float _layer_angle(size_t idx) const { return 0.f; };
|
||||||
};
|
};
|
||||||
|
|
||||||
}; // namespace Slic3r
|
}; // namespace Slic3r
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
ExPolygons layer_slices(size_t i)
|
ExPolygons layer_slices(size_t i)
|
||||||
%code%{ RETVAL = THIS->layers[i].slices; %};
|
%code%{ RETVAL = THIS->layers[i].slices; %};
|
||||||
ExPolygons layer_solid_infill(size_t i)
|
ExPolygons layer_solid_infill(size_t i)
|
||||||
%code%{ RETVAL = THIS->layers[i].solid_infill.expolygons; %};
|
%code%{ RETVAL = THIS->layers[i].solid_infill; %};
|
||||||
ExPolygons layer_perimeters(size_t i)
|
ExPolygons layer_perimeters(size_t i)
|
||||||
%code%{ RETVAL = THIS->layers[i].perimeters; %};
|
%code%{ RETVAL = THIS->layers[i].perimeters; %};
|
||||||
Ref<ExtrusionEntityCollection> layer_infill(size_t i)
|
Ref<ExtrusionEntityCollection> layer_infill(size_t i)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user