mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-07-24 11:22:07 +00:00
ENH: precise tree support wall count
Change the behavior of "tree support wall count" option, let it control precisely. 0 means auto. jira: STUDIO-8068 github: 4780 Change-Id: I6d1a64cff9b121f5c0a3e910c5ddbfe6db198687 (cherry picked from commit a557bbe758cd352fa9bb48323995ed2c90737577)
This commit is contained in:
@@ -153,7 +153,9 @@ struct SupportParameters {
|
||||
independent_layer_height = print_config.independent_support_layer_height;
|
||||
|
||||
// force double walls everywhere if wall count is larger than 1
|
||||
tree_branch_diameter_double_wall_area_scaled = object_config.tree_support_wall_count.value > 1 ? 0.1 : 0.25 * sqr(scaled<double>(5.0)) * M_PI;
|
||||
tree_branch_diameter_double_wall_area_scaled = object_config.tree_support_wall_count.value > 1 ? 0.1 :
|
||||
object_config.tree_support_wall_count.value == 0 ? 0.25 * sqr(scaled<double>(5.0)) * M_PI :
|
||||
std::numeric_limits<double>::max();
|
||||
|
||||
support_style = object_config.support_style;
|
||||
if (support_style == smsDefault) {
|
||||
|
||||
@@ -1540,17 +1540,7 @@ void TreeSupport::generate_toolpaths()
|
||||
erSupportMaterial, filler_support.get(), support_density);
|
||||
}
|
||||
else {
|
||||
size_t walls = wall_count;
|
||||
//if (area_group.need_extra_wall && walls < 2) walls += 1;
|
||||
//for (size_t i = 1; i < walls; i++) {
|
||||
// Polygons contour_new = offset(poly.contour, -(i - 0.5f) * flow.scaled_spacing(), jtSquare);
|
||||
// loops.insert(loops.end(), contour_new.begin(), contour_new.end());
|
||||
//}
|
||||
//fill_expolygons_with_sheath_generate_paths(ts_layer->support_fills.entities, loops, nullptr, 0, erSupportMaterial, flow, true, false);
|
||||
SupportParameters support_params = m_support_params;
|
||||
if(walls>1)
|
||||
support_params.tree_branch_diameter_double_wall_area_scaled=0.1;
|
||||
tree_supports_generate_paths(ts_layer->support_fills.entities, loops, flow, support_params);
|
||||
tree_supports_generate_paths(ts_layer->support_fills.entities, loops, flow, m_support_params);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user