Small supports now go through the pad to always reach the bed
They will not hang in the air if they end up in the gap between the "around object pad" and the object
This commit is contained in:
parent
4620dd5a3d
commit
d6fe5767e0
@ -469,8 +469,10 @@ inline long build_ground_connection(SupportTreeBuilder &builder,
|
|||||||
gp.z() = ground_level(sm);
|
gp.z() = ground_level(sm);
|
||||||
double h = conn.path.back().pos.z() - gp.z();
|
double h = conn.path.back().pos.z() - gp.z();
|
||||||
|
|
||||||
if (conn.pillar_base->r_top < sm.cfg.head_back_radius_mm)
|
if (conn.pillar_base->r_top < sm.cfg.head_back_radius_mm) {
|
||||||
h += sm.pad_cfg.wall_thickness_mm;
|
h += sm.pad_cfg.wall_thickness_mm;
|
||||||
|
gp.z() -= sm.pad_cfg.wall_thickness_mm;
|
||||||
|
}
|
||||||
|
|
||||||
// TODO: does not work yet
|
// TODO: does not work yet
|
||||||
// if (conn.path.back().id < 0) {
|
// if (conn.path.back().id < 0) {
|
||||||
@ -478,7 +480,8 @@ inline long build_ground_connection(SupportTreeBuilder &builder,
|
|||||||
// long head_id = std::abs(conn.path.back().id);
|
// long head_id = std::abs(conn.path.back().id);
|
||||||
// ret = builder.add_pillar(head_id, h);
|
// ret = builder.add_pillar(head_id, h);
|
||||||
// } else
|
// } else
|
||||||
ret = builder.add_pillar(gp, h, conn.path.back().r, conn.pillar_base->r_top);
|
|
||||||
|
ret = builder.add_pillar(gp, h, conn.path.back().r, conn.pillar_base->r_top);
|
||||||
|
|
||||||
if (conn.pillar_base->r_top >= sm.cfg.head_back_radius_mm)
|
if (conn.pillar_base->r_top >= sm.cfg.head_back_radius_mm)
|
||||||
builder.add_pillar_base(ret, conn.pillar_base->height, conn.pillar_base->r_bottom);
|
builder.add_pillar_base(ret, conn.pillar_base->height, conn.pillar_base->r_bottom);
|
||||||
|
Loading…
Reference in New Issue
Block a user