FIX: generate process preset based on template
Jira: XXXX Change-Id: I50adf0790dc239307d236a4cebece860ef6beb16 Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>
This commit is contained in:
parent
0c7f991e5f
commit
727db50593
|
@ -7,20 +7,8 @@
|
||||||
],
|
],
|
||||||
"process_list": [
|
"process_list": [
|
||||||
{
|
{
|
||||||
"name": "process_0.2_nozzle_template",
|
"name": "process template",
|
||||||
"sub_path": "process/process_0.2_nozzle_template.json"
|
"sub_path": "process/process template.json"
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "process_0.4_nozzle_template",
|
|
||||||
"sub_path": "process/process_0.4_nozzle_template.json"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "process_0.6_nozzle_template",
|
|
||||||
"sub_path": "process/process_0.6_nozzle_template.json"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "process_0.8_nozzle_template",
|
|
||||||
"sub_path": "process/process_0.8_nozzle_template.json"
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"filament_list": [
|
"filament_list": [
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"type": "process",
|
"type": "process",
|
||||||
"name": "process_0.4_nozzle_template",
|
"name": "process template",
|
||||||
"instantiation": "false",
|
"instantiation": "false",
|
||||||
"adaptive_layer_height": "0",
|
"adaptive_layer_height": "0",
|
||||||
"bridge_flow": "1",
|
"bridge_flow": "1",
|
|
@ -1,109 +0,0 @@
|
||||||
{
|
|
||||||
"type": "process",
|
|
||||||
"name": "process_0.2_nozzle_template",
|
|
||||||
"instantiation": "false",
|
|
||||||
"adaptive_layer_height": "0",
|
|
||||||
"bridge_flow": "1",
|
|
||||||
"bridge_speed": "50",
|
|
||||||
"brim_width": "5",
|
|
||||||
"bridge_no_support": "0",
|
|
||||||
"bottom_surface_pattern": "monotonic",
|
|
||||||
"bottom_shell_layers": "5",
|
|
||||||
"bottom_shell_thickness": "0",
|
|
||||||
"brim_object_gap": "0.1",
|
|
||||||
"compatible_printers_condition": "",
|
|
||||||
"default_acceleration": "10000",
|
|
||||||
"detect_overhang_wall": "1",
|
|
||||||
"detect_thin_wall": "0",
|
|
||||||
"draft_shield": "disabled",
|
|
||||||
"elefant_foot_compensation": "0",
|
|
||||||
"enable_support": "0",
|
|
||||||
"enable_prime_tower": "1",
|
|
||||||
"enable_arc_fitting": "1",
|
|
||||||
"filename_format": "{input_filename_base}_{filament_type[0]}_{print_time}.gcode",
|
|
||||||
"gap_infill_speed": "50",
|
|
||||||
"infill_direction": "45",
|
|
||||||
"initial_layer_line_width": "0.25",
|
|
||||||
"initial_layer_print_height": "0.1",
|
|
||||||
"initial_layer_speed": "40",
|
|
||||||
"infill_combination": "0",
|
|
||||||
"infill_wall_overlap": "15%",
|
|
||||||
"interface_shells": "0",
|
|
||||||
"inner_wall_line_width": "0.22",
|
|
||||||
"inner_wall_speed": "150",
|
|
||||||
"internal_solid_infill_line_width": "0.22",
|
|
||||||
"internal_solid_infill_speed": "150",
|
|
||||||
"internal_bridge_support_thickness": "0.8",
|
|
||||||
"initial_layer_acceleration": "500",
|
|
||||||
"ironing_flow": "10%",
|
|
||||||
"ironing_spacing": "0.15",
|
|
||||||
"ironing_speed": "30",
|
|
||||||
"ironing_type": "no ironing",
|
|
||||||
"initial_layer_infill_speed": "70",
|
|
||||||
"line_width": "0.22",
|
|
||||||
"layer_height": "0.1",
|
|
||||||
"minimum_sparse_infill_area": "15",
|
|
||||||
"max_travel_detour_distance": "0",
|
|
||||||
"outer_wall_line_width": "0.22",
|
|
||||||
"outer_wall_speed": "120",
|
|
||||||
"outer_wall_acceleration": "5000",
|
|
||||||
"overhang_1_4_speed": "0",
|
|
||||||
"overhang_2_4_speed": "50",
|
|
||||||
"overhang_3_4_speed": "30",
|
|
||||||
"overhang_4_4_speed": "10",
|
|
||||||
"only_one_wall_top": "1",
|
|
||||||
"print_sequence": "by layer",
|
|
||||||
"print_settings_id": "",
|
|
||||||
"prime_tower_width": "35",
|
|
||||||
"reduce_crossing_wall": "0",
|
|
||||||
"reduce_infill_retraction": "1",
|
|
||||||
"raft_layers": "0",
|
|
||||||
"resolution": "0.012",
|
|
||||||
"sparse_infill_density": "15%",
|
|
||||||
"sparse_infill_pattern": "grid",
|
|
||||||
"sparse_infill_line_width": "0.22",
|
|
||||||
"sparse_infill_speed": "100",
|
|
||||||
"seam_position": "aligned",
|
|
||||||
"skirt_distance": "2",
|
|
||||||
"skirt_height": "1",
|
|
||||||
"spiral_mode": "0",
|
|
||||||
"standby_temperature_delta": "-5",
|
|
||||||
"support_filament": "0",
|
|
||||||
"support_line_width": "0.22",
|
|
||||||
"support_interface_filament": "0",
|
|
||||||
"support_on_build_plate_only": "0",
|
|
||||||
"support_top_z_distance": "0.2",
|
|
||||||
"support_interface_loop_pattern": "0",
|
|
||||||
"support_interface_top_layers": "2",
|
|
||||||
"support_interface_spacing": "0.5",
|
|
||||||
"support_interface_speed": "80",
|
|
||||||
"support_interface_pattern": "auto",
|
|
||||||
"support_base_pattern": "default",
|
|
||||||
"support_base_pattern_spacing": "2.5",
|
|
||||||
"support_speed": "150",
|
|
||||||
"support_threshold_angle": "30",
|
|
||||||
"support_object_xy_distance": "0.35",
|
|
||||||
"skirt_loops": "0",
|
|
||||||
"support_type": "normal(auto)",
|
|
||||||
"support_style": "default",
|
|
||||||
"support_bottom_z_distance": "0.2",
|
|
||||||
"support_interface_bottom_layers": "2",
|
|
||||||
"support_expansion": "0",
|
|
||||||
"top_surface_line_width": "0.22",
|
|
||||||
"top_surface_speed": "150",
|
|
||||||
"travel_speed": "500",
|
|
||||||
"tree_support_branch_diameter": "2",
|
|
||||||
"tree_support_branch_angle": "45",
|
|
||||||
"tree_support_wall_count": "1",
|
|
||||||
"top_surface_pattern": "monotonicline",
|
|
||||||
"top_surface_acceleration": "2000",
|
|
||||||
"top_shell_layers": "7",
|
|
||||||
"top_shell_thickness": "0.8",
|
|
||||||
"wall_loops": "4",
|
|
||||||
"wall_infill_order": "inner wall/outer wall/infill",
|
|
||||||
"wipe_tower_no_sparse_layers": "0",
|
|
||||||
"wall_generator": "classic",
|
|
||||||
"xy_hole_compensation": "0",
|
|
||||||
"xy_contour_compensation": "0",
|
|
||||||
"compatible_printers": []
|
|
||||||
}
|
|
|
@ -1,109 +0,0 @@
|
||||||
{
|
|
||||||
"type": "process",
|
|
||||||
"name": "process_0.6_nozzle_template",
|
|
||||||
"instantiation": "false",
|
|
||||||
"adaptive_layer_height": "0",
|
|
||||||
"bridge_flow": "1",
|
|
||||||
"bridge_speed": "30",
|
|
||||||
"brim_width": "5",
|
|
||||||
"bridge_no_support": "0",
|
|
||||||
"bottom_surface_pattern": "monotonic",
|
|
||||||
"bottom_shell_layers": "3",
|
|
||||||
"bottom_shell_thickness": "0",
|
|
||||||
"brim_object_gap": "0.1",
|
|
||||||
"compatible_printers_condition": "",
|
|
||||||
"default_acceleration": "10000",
|
|
||||||
"detect_overhang_wall": "1",
|
|
||||||
"detect_thin_wall": "0",
|
|
||||||
"draft_shield": "disabled",
|
|
||||||
"elefant_foot_compensation": "0",
|
|
||||||
"enable_support": "0",
|
|
||||||
"enable_prime_tower": "1",
|
|
||||||
"enable_arc_fitting": "1",
|
|
||||||
"filename_format": "{input_filename_base}_{filament_type[0]}_{print_time}.gcode",
|
|
||||||
"gap_infill_speed": "50",
|
|
||||||
"infill_direction": "45",
|
|
||||||
"initial_layer_line_width": "0.62",
|
|
||||||
"initial_layer_print_height": "0.3",
|
|
||||||
"initial_layer_speed": "35",
|
|
||||||
"infill_combination": "0",
|
|
||||||
"infill_wall_overlap": "15%",
|
|
||||||
"interface_shells": "0",
|
|
||||||
"inner_wall_line_width": "0.62",
|
|
||||||
"inner_wall_speed": "150",
|
|
||||||
"internal_solid_infill_line_width": "0.62",
|
|
||||||
"internal_solid_infill_speed": "150",
|
|
||||||
"internal_bridge_support_thickness": "0.8",
|
|
||||||
"initial_layer_acceleration": "500",
|
|
||||||
"ironing_flow": "10%",
|
|
||||||
"ironing_spacing": "0.15",
|
|
||||||
"ironing_speed": "30",
|
|
||||||
"ironing_type": "no ironing",
|
|
||||||
"initial_layer_infill_speed": "55",
|
|
||||||
"line_width": "0.62",
|
|
||||||
"layer_height": "0.3",
|
|
||||||
"minimum_sparse_infill_area": "15",
|
|
||||||
"max_travel_detour_distance": "0",
|
|
||||||
"outer_wall_line_width": "0.62",
|
|
||||||
"outer_wall_speed": "120",
|
|
||||||
"outer_wall_acceleration": "5000",
|
|
||||||
"overhang_1_4_speed": "0",
|
|
||||||
"overhang_2_4_speed": "50",
|
|
||||||
"overhang_3_4_speed": "15",
|
|
||||||
"overhang_4_4_speed": "10",
|
|
||||||
"only_one_wall_top": "1",
|
|
||||||
"print_sequence": "by layer",
|
|
||||||
"print_settings_id": "",
|
|
||||||
"prime_tower_width": "35",
|
|
||||||
"reduce_crossing_wall": "0",
|
|
||||||
"reduce_infill_retraction": "1",
|
|
||||||
"raft_layers": "0",
|
|
||||||
"resolution": "0.012",
|
|
||||||
"sparse_infill_density": "15%",
|
|
||||||
"sparse_infill_pattern": "grid",
|
|
||||||
"sparse_infill_line_width": "0.62",
|
|
||||||
"sparse_infill_speed": "100",
|
|
||||||
"seam_position": "aligned",
|
|
||||||
"skirt_distance": "2",
|
|
||||||
"skirt_height": "1",
|
|
||||||
"spiral_mode": "0",
|
|
||||||
"standby_temperature_delta": "-5",
|
|
||||||
"support_filament": "0",
|
|
||||||
"support_line_width": "0.62",
|
|
||||||
"support_interface_filament": "0",
|
|
||||||
"support_on_build_plate_only": "0",
|
|
||||||
"support_top_z_distance": "0.2",
|
|
||||||
"support_interface_loop_pattern": "0",
|
|
||||||
"support_interface_top_layers": "2",
|
|
||||||
"support_interface_spacing": "0.5",
|
|
||||||
"support_interface_speed": "80",
|
|
||||||
"support_interface_pattern": "auto",
|
|
||||||
"support_base_pattern": "default",
|
|
||||||
"support_base_pattern_spacing": "2.5",
|
|
||||||
"support_speed": "150",
|
|
||||||
"support_threshold_angle": "30",
|
|
||||||
"support_object_xy_distance": "0.35",
|
|
||||||
"skirt_loops": "0",
|
|
||||||
"support_type": "normal(auto)",
|
|
||||||
"support_style": "default",
|
|
||||||
"support_bottom_z_distance": "0.2",
|
|
||||||
"support_interface_bottom_layers": "2",
|
|
||||||
"support_expansion": "0",
|
|
||||||
"top_surface_line_width": "0.62",
|
|
||||||
"top_surface_speed": "150",
|
|
||||||
"travel_speed": "500",
|
|
||||||
"tree_support_branch_diameter": "2",
|
|
||||||
"tree_support_branch_angle": "45",
|
|
||||||
"tree_support_wall_count": "1",
|
|
||||||
"top_surface_pattern": "monotonicline",
|
|
||||||
"top_surface_acceleration": "2000",
|
|
||||||
"top_shell_layers": "3",
|
|
||||||
"top_shell_thickness": "0.8",
|
|
||||||
"wall_loops": "2",
|
|
||||||
"wall_infill_order": "inner wall/outer wall/infill",
|
|
||||||
"wipe_tower_no_sparse_layers": "0",
|
|
||||||
"wall_generator": "classic",
|
|
||||||
"xy_hole_compensation": "0",
|
|
||||||
"xy_contour_compensation": "0",
|
|
||||||
"compatible_printers": []
|
|
||||||
}
|
|
|
@ -1,109 +0,0 @@
|
||||||
{
|
|
||||||
"type": "process",
|
|
||||||
"name": "process_0.8_nozzle_template",
|
|
||||||
"instantiation": "false",
|
|
||||||
"adaptive_layer_height": "0",
|
|
||||||
"bridge_flow": "1",
|
|
||||||
"bridge_speed": "30",
|
|
||||||
"brim_width": "5",
|
|
||||||
"bridge_no_support": "0",
|
|
||||||
"bottom_surface_pattern": "monotonic",
|
|
||||||
"bottom_shell_layers": "3",
|
|
||||||
"bottom_shell_thickness": "0",
|
|
||||||
"brim_object_gap": "0.1",
|
|
||||||
"compatible_printers_condition": "",
|
|
||||||
"default_acceleration": "10000",
|
|
||||||
"detect_overhang_wall": "1",
|
|
||||||
"detect_thin_wall": "0",
|
|
||||||
"draft_shield": "disabled",
|
|
||||||
"elefant_foot_compensation": "0",
|
|
||||||
"enable_support": "0",
|
|
||||||
"enable_prime_tower": "1",
|
|
||||||
"enable_arc_fitting": "1",
|
|
||||||
"filename_format": "{input_filename_base}_{filament_type[0]}_{print_time}.gcode",
|
|
||||||
"gap_infill_speed": "50",
|
|
||||||
"infill_direction": "45",
|
|
||||||
"initial_layer_line_width": "0.82",
|
|
||||||
"initial_layer_print_height": "0.4",
|
|
||||||
"initial_layer_speed": "35",
|
|
||||||
"infill_combination": "0",
|
|
||||||
"infill_wall_overlap": "15%",
|
|
||||||
"interface_shells": "0",
|
|
||||||
"inner_wall_line_width": "0.82",
|
|
||||||
"inner_wall_speed": "150",
|
|
||||||
"internal_solid_infill_line_width": "0.82",
|
|
||||||
"internal_solid_infill_speed": "150",
|
|
||||||
"internal_bridge_support_thickness": "0.8",
|
|
||||||
"initial_layer_acceleration": "500",
|
|
||||||
"ironing_flow": "10%",
|
|
||||||
"ironing_spacing": "0.15",
|
|
||||||
"ironing_speed": "30",
|
|
||||||
"ironing_type": "no ironing",
|
|
||||||
"initial_layer_infill_speed": "55",
|
|
||||||
"line_width": "0.82",
|
|
||||||
"layer_height": "0.4",
|
|
||||||
"minimum_sparse_infill_area": "15",
|
|
||||||
"max_travel_detour_distance": "0",
|
|
||||||
"outer_wall_line_width": "0.82",
|
|
||||||
"outer_wall_speed": "120",
|
|
||||||
"outer_wall_acceleration": "5000",
|
|
||||||
"overhang_1_4_speed": "0",
|
|
||||||
"overhang_2_4_speed": "50",
|
|
||||||
"overhang_3_4_speed": "25",
|
|
||||||
"overhang_4_4_speed": "5",
|
|
||||||
"only_one_wall_top": "1",
|
|
||||||
"print_sequence": "by layer",
|
|
||||||
"print_settings_id": "",
|
|
||||||
"prime_tower_width": "35",
|
|
||||||
"reduce_crossing_wall": "0",
|
|
||||||
"reduce_infill_retraction": "1",
|
|
||||||
"raft_layers": "0",
|
|
||||||
"resolution": "0.012",
|
|
||||||
"sparse_infill_density": "15%",
|
|
||||||
"sparse_infill_pattern": "grid",
|
|
||||||
"sparse_infill_line_width": "0.82",
|
|
||||||
"sparse_infill_speed": "100",
|
|
||||||
"seam_position": "aligned",
|
|
||||||
"skirt_distance": "2",
|
|
||||||
"skirt_height": "1",
|
|
||||||
"spiral_mode": "0",
|
|
||||||
"standby_temperature_delta": "-5",
|
|
||||||
"support_filament": "0",
|
|
||||||
"support_line_width": "0.82",
|
|
||||||
"support_interface_filament": "0",
|
|
||||||
"support_on_build_plate_only": "0",
|
|
||||||
"support_top_z_distance": "0.2",
|
|
||||||
"support_interface_loop_pattern": "0",
|
|
||||||
"support_interface_top_layers": "2",
|
|
||||||
"support_interface_spacing": "0.5",
|
|
||||||
"support_interface_speed": "80",
|
|
||||||
"support_interface_pattern": "auto",
|
|
||||||
"support_base_pattern": "default",
|
|
||||||
"support_base_pattern_spacing": "2.5",
|
|
||||||
"support_speed": "150",
|
|
||||||
"support_threshold_angle": "30",
|
|
||||||
"support_object_xy_distance": "0.35",
|
|
||||||
"skirt_loops": "0",
|
|
||||||
"support_type": "normal(auto)",
|
|
||||||
"support_style": "default",
|
|
||||||
"support_bottom_z_distance": "0.2",
|
|
||||||
"support_interface_bottom_layers": "2",
|
|
||||||
"support_expansion": "0",
|
|
||||||
"top_surface_line_width": "0.82",
|
|
||||||
"top_surface_speed": "150",
|
|
||||||
"travel_speed": "500",
|
|
||||||
"tree_support_branch_diameter": "2",
|
|
||||||
"tree_support_branch_angle": "45",
|
|
||||||
"tree_support_wall_count": "1",
|
|
||||||
"top_surface_pattern": "monotonic",
|
|
||||||
"top_surface_acceleration": "2000",
|
|
||||||
"top_shell_layers": "3",
|
|
||||||
"top_shell_thickness": "0.8",
|
|
||||||
"wall_loops": "2",
|
|
||||||
"wall_infill_order": "inner wall/outer wall/infill",
|
|
||||||
"wipe_tower_no_sparse_layers": "0",
|
|
||||||
"wall_generator": "classic",
|
|
||||||
"xy_hole_compensation": "0",
|
|
||||||
"xy_contour_compensation": "0",
|
|
||||||
"compatible_printers": []
|
|
||||||
}
|
|
|
@ -1978,6 +1978,94 @@ bool CreatePrinterPresetDialog::load_system_and_user_presets_with_curr_model(Pre
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CreatePrinterPresetDialog::generate_process_presets_data(std::vector<Preset const *> presets, std::string nozzle)
|
||||||
|
{
|
||||||
|
BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << " entry, and nozzle is: " << nozzle;
|
||||||
|
std::unordered_map<std::string, float> nozzle_diameter_map_ = nozzle_diameter_map;
|
||||||
|
for (const Preset *preset : presets) {
|
||||||
|
float nozzle_dia = nozzle_diameter_map_[nozzle];
|
||||||
|
assert(nozzle_dia != 0);
|
||||||
|
|
||||||
|
auto layer_height = dynamic_cast<ConfigOptionFloat *>(const_cast<Preset *>(preset)->config.option("layer_height", true));
|
||||||
|
if (layer_height)
|
||||||
|
layer_height->value = nozzle_dia / 2;
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no layer_height";
|
||||||
|
|
||||||
|
auto initial_layer_print_height = dynamic_cast<ConfigOptionFloat *>(const_cast<Preset *>(preset)->config.option("initial_layer_print_height", true));
|
||||||
|
if (initial_layer_print_height)
|
||||||
|
initial_layer_print_height->value = nozzle_dia / 2;
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no initial_layer_print_height";
|
||||||
|
|
||||||
|
auto line_width = dynamic_cast<ConfigOptionFloat *>(const_cast<Preset *>(preset)->config.option("line_width", true));
|
||||||
|
if (line_width)
|
||||||
|
line_width->value = nozzle_dia;
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no line_width";
|
||||||
|
|
||||||
|
auto initial_layer_line_width = dynamic_cast<ConfigOptionFloat *>(const_cast<Preset *>(preset)->config.option("initial_layer_line_width", true));
|
||||||
|
if (initial_layer_line_width)
|
||||||
|
initial_layer_line_width->value = nozzle_dia;
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no initial_layer_line_width";
|
||||||
|
|
||||||
|
auto outer_wall_line_width = dynamic_cast<ConfigOptionFloat *>(const_cast<Preset *>(preset)->config.option("outer_wall_line_width", true));
|
||||||
|
if (outer_wall_line_width)
|
||||||
|
outer_wall_line_width->value = nozzle_dia;
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no outer_wall_line_width";
|
||||||
|
|
||||||
|
auto inner_wall_line_width = dynamic_cast<ConfigOptionFloat *>(const_cast<Preset *>(preset)->config.option("inner_wall_line_width", true));
|
||||||
|
if (inner_wall_line_width)
|
||||||
|
inner_wall_line_width->value = nozzle_dia;
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no inner_wall_line_width";
|
||||||
|
|
||||||
|
auto top_surface_line_width = dynamic_cast<ConfigOptionFloat *>(const_cast<Preset *>(preset)->config.option("top_surface_line_width", true));
|
||||||
|
if (top_surface_line_width)
|
||||||
|
top_surface_line_width->value = nozzle_dia;
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no top_surface_line_width";
|
||||||
|
|
||||||
|
auto sparse_infill_line_width = dynamic_cast<ConfigOptionFloat *>(const_cast<Preset *>(preset)->config.option("sparse_infill_line_width", true));
|
||||||
|
if (sparse_infill_line_width)
|
||||||
|
sparse_infill_line_width->value = nozzle_dia;
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no sparse_infill_line_width";
|
||||||
|
|
||||||
|
auto internal_solid_infill_line_width = dynamic_cast<ConfigOptionFloat *>(const_cast<Preset *>(preset)->config.option("internal_solid_infill_line_width", true));
|
||||||
|
if (internal_solid_infill_line_width)
|
||||||
|
internal_solid_infill_line_width->value = nozzle_dia;
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no internal_solid_infill_line_width";
|
||||||
|
|
||||||
|
auto support_line_width = dynamic_cast<ConfigOptionFloat *>(const_cast<Preset *>(preset)->config.option("support_line_width", true));
|
||||||
|
if (support_line_width)
|
||||||
|
support_line_width->value = nozzle_dia;
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no support_line_width";
|
||||||
|
|
||||||
|
auto wall_loops = dynamic_cast<ConfigOptionInt *>(const_cast<Preset *>(preset)->config.option("wall_loops", true));
|
||||||
|
if (wall_loops)
|
||||||
|
wall_loops->value = std::max(2, (int) std::ceil(2 * 0.4 / nozzle_dia));
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no wall_loops";
|
||||||
|
|
||||||
|
auto top_shell_layers = dynamic_cast<ConfigOptionInt *>(const_cast<Preset *>(preset)->config.option("top_shell_layers", true));
|
||||||
|
if (top_shell_layers)
|
||||||
|
top_shell_layers->value = std::max(5, (int) std::ceil(5 * 0.4 / nozzle_dia));
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no top_shell_layers";
|
||||||
|
|
||||||
|
auto bottom_shell_layers = dynamic_cast<ConfigOptionInt *>(const_cast<Preset *>(preset)->config.option("bottom_shell_layers", true));
|
||||||
|
if (bottom_shell_layers)
|
||||||
|
bottom_shell_layers->value = std::max(3, (int) std::ceil(3 * 0.4 / nozzle_dia));
|
||||||
|
else
|
||||||
|
BOOST_LOG_TRIVIAL(info) << "process template has no bottom_shell_layers";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
wxBoxSizer *CreatePrinterPresetDialog::create_radio_item(wxString title, wxWindow *parent, wxString tooltip, std::vector<std::pair<RadioBox *, wxString>> &radiobox_list)
|
wxBoxSizer *CreatePrinterPresetDialog::create_radio_item(wxString title, wxWindow *parent, wxString tooltip, std::vector<std::pair<RadioBox *, wxString>> &radiobox_list)
|
||||||
{
|
{
|
||||||
wxBoxSizer *horizontal_sizer = new wxBoxSizer(wxHORIZONTAL);
|
wxBoxSizer *horizontal_sizer = new wxBoxSizer(wxHORIZONTAL);
|
||||||
|
@ -2396,7 +2484,9 @@ wxBoxSizer *CreatePrinterPresetDialog::create_page2_btns_item(wxWindow *parent)
|
||||||
/****************************** clone process preset ********************************/
|
/****************************** clone process preset ********************************/
|
||||||
failures.clear();
|
failures.clear();
|
||||||
if (!selected_process_presets.empty()) {
|
if (!selected_process_presets.empty()) {
|
||||||
bool create_preset_result = preset_bundle->prints.create_presets_from_template_for_printer(selected_process_presets, failures, printer_preset_name, get_filament_id, rewritten);
|
generate_process_presets_data(selected_process_presets, nozzle_diameter);
|
||||||
|
bool create_preset_result = preset_bundle->prints.create_presets_from_template_for_printer(selected_process_presets, failures, printer_preset_name,
|
||||||
|
get_filament_id, rewritten);
|
||||||
if (!create_preset_result) {
|
if (!create_preset_result) {
|
||||||
std::string message;
|
std::string message;
|
||||||
for (const std::string &failure : failures) { message += "\t" + failure + "\n"; }
|
for (const std::string &failure : failures) { message += "\t" + failure + "\n"; }
|
||||||
|
@ -2941,7 +3031,7 @@ CreatePresetSuccessfulDialog::CreatePresetSuccessfulDialog(wxWindow *parent, con
|
||||||
m_button_ok->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) { EndModal(wxID_OK); });
|
m_button_ok->Bind(wxEVT_LEFT_DOWN, [this](wxMouseEvent &e) { EndModal(wxID_OK); });
|
||||||
|
|
||||||
if (PRINTER == create_success_type) {
|
if (PRINTER == create_success_type) {
|
||||||
m_button_cancel = new Button(this, _L("Cancle"));
|
m_button_cancel = new Button(this, _L("Cancel"));
|
||||||
m_button_cancel->SetBackgroundColor(btn_bg_white);
|
m_button_cancel->SetBackgroundColor(btn_bg_white);
|
||||||
m_button_cancel->SetBorderColor(wxColour(38, 46, 48));
|
m_button_cancel->SetBorderColor(wxColour(38, 46, 48));
|
||||||
m_button_cancel->SetTextColor(wxColour(38, 46, 48));
|
m_button_cancel->SetTextColor(wxColour(38, 46, 48));
|
||||||
|
|
|
@ -142,6 +142,7 @@ protected:
|
||||||
void load_texture();
|
void load_texture();
|
||||||
void load_model_stl();
|
void load_model_stl();
|
||||||
bool load_system_and_user_presets_with_curr_model(PresetBundle &temp_preset_bundle, bool just_template = false);
|
bool load_system_and_user_presets_with_curr_model(PresetBundle &temp_preset_bundle, bool just_template = false);
|
||||||
|
void generate_process_presets_data(std::vector<Preset const *> presets, std::string nozzle);
|
||||||
wxArrayString printer_preset_sort_with_nozzle_diameter(const VendorProfile &vendor_profile, float nozzle_diameter);
|
wxArrayString printer_preset_sort_with_nozzle_diameter(const VendorProfile &vendor_profile, float nozzle_diameter);
|
||||||
|
|
||||||
wxBoxSizer *create_radio_item(wxString title, wxWindow *parent, wxString tooltip, std::vector<std::pair<RadioBox *, wxString>> &radiobox_list);
|
wxBoxSizer *create_radio_item(wxString title, wxWindow *parent, wxString tooltip, std::vector<std::pair<RadioBox *, wxString>> &radiobox_list);
|
||||||
|
|
|
@ -994,11 +994,7 @@ void Sidebar::create_printer_preset()
|
||||||
if (wxID_OK == res) {
|
if (wxID_OK == res) {
|
||||||
wxGetApp().mainframe->update_side_preset_ui();
|
wxGetApp().mainframe->update_side_preset_ui();
|
||||||
update_all_preset_comboboxes();
|
update_all_preset_comboboxes();
|
||||||
Tab *printer_tab = wxGetApp().get_tab(Preset::TYPE_PRINTER);
|
wxGetApp().load_current_presets();
|
||||||
if (printer_tab) {
|
|
||||||
printer_tab->load_current_preset();
|
|
||||||
printer_tab->update();
|
|
||||||
}
|
|
||||||
CreatePresetSuccessfulDialog success_dlg(p->m_panel_filament_title, SuccessType::PRINTER);
|
CreatePresetSuccessfulDialog success_dlg(p->m_panel_filament_title, SuccessType::PRINTER);
|
||||||
int res = success_dlg.ShowModal();
|
int res = success_dlg.ShowModal();
|
||||||
if (res == wxID_OK) {
|
if (res == wxID_OK) {
|
||||||
|
|
Loading…
Reference in New Issue