mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-13 17:58:03 -06:00
Calculate extrusion width %s as a function of nozzle width, not layer height (#1578)
* Calculate extrusion width %s as a function of nozzle width, not layer height * handled more width conversions * more missing percent handling * even more missed percent handling * even more more extrusion % handling * some fixes --------- Co-authored-by: SoftFever <softfeverever@gmail.com>
This commit is contained in:
parent
71ddef9724
commit
be54f6bc99
20 changed files with 187 additions and 121 deletions
|
@ -1,4 +1,5 @@
|
|||
#include "Plater.hpp"
|
||||
#include "libslic3r/Config.hpp"
|
||||
|
||||
#include <cstddef>
|
||||
#include <algorithm>
|
||||
|
@ -8155,7 +8156,7 @@ void Plater::_calib_pa_pattern(const Calib_Params& params)
|
|||
double nozzle_diameter = printer_config.option<ConfigOptionFloats>("nozzle_diameter")->get_at(0);
|
||||
print_config.set_key_value(
|
||||
opt.first,
|
||||
new ConfigOptionFloat(nozzle_diameter * opt.second / 100)
|
||||
new ConfigOptionFloatOrPercent(nozzle_diameter * opt.second / 100, false)
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -8333,8 +8334,8 @@ void Plater::calib_flowrate(int pass) {
|
|||
_obj->config.set_key_value("detect_thin_wall", new ConfigOptionBool(true));
|
||||
_obj->config.set_key_value("filter_out_gap_fill", new ConfigOptionFloat(0));
|
||||
_obj->config.set_key_value("sparse_infill_pattern", new ConfigOptionEnum<InfillPattern>(ipRectilinear));
|
||||
_obj->config.set_key_value("top_surface_line_width", new ConfigOptionFloat(nozzle_diameter * 1.2f));
|
||||
_obj->config.set_key_value("internal_solid_infill_line_width", new ConfigOptionFloat(nozzle_diameter * 1.2f));
|
||||
_obj->config.set_key_value("top_surface_line_width", new ConfigOptionFloatOrPercent(nozzle_diameter * 1.2f, false));
|
||||
_obj->config.set_key_value("internal_solid_infill_line_width", new ConfigOptionFloatOrPercent(nozzle_diameter * 1.2f, false));
|
||||
_obj->config.set_key_value("top_surface_pattern", new ConfigOptionEnum<InfillPattern>(ipMonotonic));
|
||||
_obj->config.set_key_value("top_solid_infill_flow_ratio", new ConfigOptionFloat(1.0f));
|
||||
_obj->config.set_key_value("top_surface_pattern", new ConfigOptionEnum<InfillPattern>(ipMonotonic));
|
||||
|
@ -8455,7 +8456,7 @@ void Plater::calib_max_vol_speed(const Calib_Params& params)
|
|||
print_config->set_key_value("bottom_shell_layers", new ConfigOptionInt(1));
|
||||
print_config->set_key_value("sparse_infill_density", new ConfigOptionPercent(0));
|
||||
print_config->set_key_value("spiral_mode", new ConfigOptionBool(true));
|
||||
print_config->set_key_value("outer_wall_line_width", new ConfigOptionFloat(line_width));
|
||||
print_config->set_key_value("outer_wall_line_width", new ConfigOptionFloatOrPercent(line_width, false));
|
||||
print_config->set_key_value("initial_layer_print_height", new ConfigOptionFloat(layer_height));
|
||||
print_config->set_key_value("layer_height", new ConfigOptionFloat(layer_height));
|
||||
obj->config.set_key_value("brim_type", new ConfigOptionEnum<BrimType>(btOuterAndInner));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue