22ca927f12
direction over multiple regions. This allows a single bridge to be drawn over holes, which are too close to each other to allow for separate bridges. Fixes Bridging-Angle not optimal https://github.com/prusa3d/Slic3r/issues/12 Re-allowed adaptive infill line width for solid infills. The adaptive infill line width works in some circumstances, see Issue #15, but the original implementation often changed the line width too aggressively. The current implementation limits the line width change to 20%. Fixes Gaps between infill and perimeter leads to errors in laydown on following layer https://github.com/prusa3d/Slic3r/issues/15
44 lines
1.2 KiB
Plaintext
44 lines
1.2 KiB
Plaintext
%module{Slic3r::XS};
|
|
|
|
%{
|
|
#include <xsinit.h>
|
|
#include "libslic3r/BridgeDetector.hpp"
|
|
%}
|
|
|
|
%name{Slic3r::BridgeDetector} class BridgeDetector {
|
|
~BridgeDetector();
|
|
|
|
bool detect_angle();
|
|
Polygons coverage();
|
|
%name{coverage_by_angle} Polygons coverage(double angle);
|
|
Polylines unsupported_edges();
|
|
%name{unsupported_edges_by_angle} Polylines unsupported_edges(double angle);
|
|
double angle()
|
|
%code{% RETVAL = THIS->angle; %};
|
|
double resolution()
|
|
%code{% RETVAL = THIS->resolution; %};
|
|
%{
|
|
|
|
BridgeDetector*
|
|
BridgeDetector::new(expolygon, lower_slices, extrusion_width)
|
|
ExPolygon* expolygon;
|
|
ExPolygonCollection* lower_slices;
|
|
long extrusion_width;
|
|
CODE:
|
|
RETVAL = new BridgeDetector(*expolygon, *lower_slices, extrusion_width);
|
|
OUTPUT:
|
|
RETVAL
|
|
|
|
BridgeDetector*
|
|
BridgeDetector::new_expolygons(expolygons, lower_slices, extrusion_width)
|
|
ExPolygonCollection* expolygons;
|
|
ExPolygonCollection* lower_slices;
|
|
long extrusion_width;
|
|
CODE:
|
|
RETVAL = new BridgeDetector(expolygons->expolygons, *lower_slices, extrusion_width);
|
|
OUTPUT:
|
|
RETVAL
|
|
|
|
%}
|
|
};
|