FIX: fix the bug of missing layers in SlimTree and HybridTree
jira: STUDIO-8756 Change-Id: I12c09ec2e3c1a2ee138472ff7c63675d0ee26ba0 (cherry picked from commit 36d80e7b24a4bdcce2d3957e0fd3ea61c8dc6bdc)
This commit is contained in:
parent
c054394177
commit
0d1bdab97d
|
@ -2202,22 +2202,22 @@ void TreeSupport::draw_circles()
|
||||||
}
|
}
|
||||||
auto &area_groups = ts_layer->area_groups;
|
auto &area_groups = ts_layer->area_groups;
|
||||||
for (auto& expoly : ts_layer->base_areas) {
|
for (auto& expoly : ts_layer->base_areas) {
|
||||||
if (area(expoly) < SQ(scale_(1))) continue;
|
//if (area(expoly) < SQ(scale_(1))) continue;
|
||||||
area_groups.emplace_back(&expoly, SupportLayer::BaseType, max_layers_above_base);
|
area_groups.emplace_back(&expoly, SupportLayer::BaseType, max_layers_above_base);
|
||||||
area_groups.back().need_infill = overlaps({ expoly }, area_poly);
|
area_groups.back().need_infill = overlaps({ expoly }, area_poly);
|
||||||
area_groups.back().need_extra_wall = need_extra_wall && !area_groups.back().need_infill;
|
area_groups.back().need_extra_wall = need_extra_wall && !area_groups.back().need_infill;
|
||||||
}
|
}
|
||||||
for (auto& expoly : ts_layer->roof_areas) {
|
for (auto& expoly : ts_layer->roof_areas) {
|
||||||
if (area(expoly) < SQ(scale_(1))) continue;
|
//if (area(expoly) < SQ(scale_(1))) continue;
|
||||||
area_groups.emplace_back(&expoly, SupportLayer::RoofType, max_layers_above_roof);
|
area_groups.emplace_back(&expoly, SupportLayer::RoofType, max_layers_above_roof);
|
||||||
area_groups.back().interface_id = interface_id;
|
area_groups.back().interface_id = interface_id;
|
||||||
}
|
}
|
||||||
for (auto &expoly : ts_layer->floor_areas) {
|
for (auto &expoly : ts_layer->floor_areas) {
|
||||||
if (area(expoly) < SQ(scale_(1))) continue;
|
//if (area(expoly) < SQ(scale_(1))) continue;
|
||||||
area_groups.emplace_back(&expoly, SupportLayer::FloorType, 10000);
|
area_groups.emplace_back(&expoly, SupportLayer::FloorType, 10000);
|
||||||
}
|
}
|
||||||
for (auto &expoly : ts_layer->roof_1st_layer) {
|
for (auto &expoly : ts_layer->roof_1st_layer) {
|
||||||
if (area(expoly) < SQ(scale_(1))) continue;
|
//if (area(expoly) < SQ(scale_(1))) continue;
|
||||||
area_groups.emplace_back(&expoly, SupportLayer::Roof1stLayer, max_layers_above_roof1);
|
area_groups.emplace_back(&expoly, SupportLayer::Roof1stLayer, max_layers_above_roof1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue