diff --git a/include/TreeSupportSettings.h b/include/TreeSupportSettings.h index fe4c0367f4..a43a92f094 100644 --- a/include/TreeSupportSettings.h +++ b/include/TreeSupportSettings.h @@ -321,7 +321,7 @@ struct TreeSupportSettings && support_rest_preference == other.support_rest_preference && max_radius == other.max_radius // The infill class now wants the settings object and reads a lot of settings, and as the infill class is used to calculate support roof lines for interface-preference. Not all of these may be required to be identical, but as I am not sure, better safe than sorry && (interface_preference == InterfacePreference::INTERFACE_AREA_OVERWRITES_SUPPORT || interface_preference == InterfacePreference::SUPPORT_AREA_OVERWRITES_INTERFACE - || (settings.get("fill_outline_gaps") == other.settings.get("fill_outline_gaps") && settings.get("min_bead_width") == other.settings.get("min_bead_width") && settings.get("wall_transition_angle") == other.settings.get("wall_transition_angle") && settings.get("wall_transition_length") == other.settings.get("wall_transition_length") && settings.get("wall_split_middle_threshold") == other.settings.get("wall_split_middle_threshold") && settings.get("wall_add_middle_threshold") == other.settings.get("wall_add_middle_threshold") && settings.get("wall_distribution_count") == other.settings.get("wall_distribution_count") && settings.get("wall_transition_filter_distance") == other.settings.get("wall_transition_filter_distance") && settings.get("wall_transition_filter_deviation") == other.settings.get("wall_transition_filter_deviation") && settings.get("wall_line_width_x") == other.settings.get("wall_line_width_x") + || (settings.get("fill_outline_gaps") == other.settings.get("fill_outline_gaps") && settings.get("min_bead_width") == other.settings.get("min_bead_width") && settings.get("wall_transition_angle") == other.settings.get("wall_transition_angle") && settings.get("wall_transition_length") == other.settings.get("wall_transition_length") && settings.get("min_odd_wall_line_width") == other.settings.get("min_odd_wall_line_width") && settings.get("min_even_wall_line_width") == other.settings.get("min_even_wall_line_width") && settings.get("wall_distribution_count") == other.settings.get("wall_distribution_count") && settings.get("wall_transition_filter_distance") == other.settings.get("wall_transition_filter_distance") && settings.get("wall_transition_filter_deviation") == other.settings.get("wall_transition_filter_deviation") && settings.get("wall_line_width_x") == other.settings.get("wall_line_width_x") && settings.get("meshfix_maximum_extrusion_area_deviation") == other.settings.get("meshfix_maximum_extrusion_area_deviation"))); } diff --git a/src/support.cpp b/src/support.cpp index bd57da348a..05ad7e2a4e 100644 --- a/src/support.cpp +++ b/src/support.cpp @@ -212,14 +212,6 @@ void AreaSupport::generateGradualSupport(SliceDataStorage& storage) } Settings wall_settings=infill_extruder.settings; - if(tree_support_enabled){ - // For some reason having a 0.4mm wall with 0.4mm line width means the result will be two 0.2mm lines, but no matter the minimum wall thickness setting it seems to always draw one line. - // TreeSupport would rather have one line of 0.4 mm than two of 0.2mm. - // This was the best way I found to make SURE it actually adheres to this. - // This causes errors and warnings down the road (when generating the wallToolPaths), BUT i did not see any issues with the result, so this stays as some kind of stop-gap solution. - wall_settings.add("wall_split_middle_threshold","100"); - wall_settings.add("wall_add_middle_threshold","100"); - } // NOTE: This both generates the walls _and_ returns the _actual_ infill area (the one _without_ walls) for use in the rest of the method. const Polygons infill_area = Infill::generateWallToolPaths(support_infill_part.wall_toolpaths, original_area, wall_count, wall_width, 0, wall_settings);