FIX: do not break bridges in tree support

jira: STUDIO-7424
github: #4318
Change-Id: Icccf56b129c4910f3b0a49d69871b8df1375a6d9
(cherry picked from commit 99211cde5f2114fd64e2724069540577793f889a)
(cherry picked from commit 6a130a19ef2e881a7853183123163ce67d63bc37)
This commit is contained in:
Arthur 2024-06-25 09:30:12 +08:00 committed by Noisyfox
parent 2332caa84c
commit fa11957c17
3 changed files with 5 additions and 5 deletions

View file

@ -1048,9 +1048,8 @@ void TreeSupport::detect_overhangs(bool check_support_necessity/* = false*/)
}
if (max_bridge_length > 0 && layer->loverhangs.size() > 0 && lower_layer) {
// do not break bridge for normal part in TreeHybrid, nor Tree Strong
bool break_bridge = !(m_support_params.support_style == smsTreeHybrid && area(layer->loverhangs) > m_support_params.thresh_big_overhang)
&& !(m_support_params.support_style==smsTreeStrong);
// do not break bridge as the interface will be poor, see #4318
bool break_bridge = false;
m_object->remove_bridges_from_contacts(lower_layer, layer, extrusion_width_scaled, &layer->loverhangs, max_bridge_length, break_bridge);
}

View file

@ -3447,7 +3447,7 @@ static void generate_support_areas(Print &print, const BuildVolume &build_volume
move_bounds, interface_placer, throw_on_cancel);
auto t_gen = std::chrono::high_resolution_clock::now();
#ifdef TREESUPPORT_DEBUG_SVG
#ifdef TREESUPPORT_DEBUG_SVG
for (size_t layer_idx = 0; layer_idx < move_bounds.size(); ++layer_idx) {
Polygons polys;
for (auto& area : move_bounds[layer_idx])

View file

@ -2125,7 +2125,8 @@ bool GUI_App::OnInit()
{
try {
return on_init_inner();
} catch (const std::exception&) {
} catch (const std::exception& e) {
BOOST_LOG_TRIVIAL(fatal) << "OnInit Got Fatal error: " << e.what();
generic_exception_handle();
return false;
}