Snug supports: Extrude interface layers 45 degrees from the base layer,
flip direction of the infill layer with each interface layer. Unfortunately the flipping of support interface directions may not work reliably due to base support layer heights growing at different rate from the interface layers.
This commit is contained in:
parent
c838aabf1d
commit
a6f4b9b71f
5 changed files with 64 additions and 22 deletions
|
@ -188,17 +188,23 @@ public:
|
|||
// Extrusion paths for the support base and for the support interface and contacts.
|
||||
ExtrusionEntityCollection support_fills;
|
||||
|
||||
|
||||
// Is there any valid extrusion assigned to this LayerRegion?
|
||||
virtual bool has_extrusions() const { return ! support_fills.empty(); }
|
||||
|
||||
// Zero based index of an interface layer, used for alternating direction of interface / contact layers.
|
||||
size_t interface_id() const { return m_interface_id; }
|
||||
|
||||
protected:
|
||||
friend class PrintObject;
|
||||
|
||||
// The constructor has been made public to be able to insert additional support layers for the skirt or a wipe tower
|
||||
// between the raft and the object first layer.
|
||||
SupportLayer(size_t id, PrintObject *object, coordf_t height, coordf_t print_z, coordf_t slice_z) :
|
||||
Layer(id, object, height, print_z, slice_z) {}
|
||||
SupportLayer(size_t id, size_t interface_id, PrintObject *object, coordf_t height, coordf_t print_z, coordf_t slice_z) :
|
||||
Layer(id, object, height, print_z, slice_z), m_interface_id(interface_id) {}
|
||||
virtual ~SupportLayer() = default;
|
||||
|
||||
size_t m_interface_id;
|
||||
};
|
||||
|
||||
template<typename LayerContainer>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue