mirror of
				https://github.com/SoftFever/OrcaSlicer.git
				synced 2025-10-31 04:31:15 -06:00 
			
		
		
		
	allow users to adjust bottom infill flowrate
This commit is contained in:
		
							parent
							
								
									bd174798c3
								
							
						
					
					
						commit
						6ec5e920e2
					
				
					 5 changed files with 19 additions and 3 deletions
				
			
		|  | @ -685,7 +685,7 @@ static std::vector<std::string> s_Preset_print_options { | |||
|      "initial_layer_infill_speed", "only_one_wall_top", "only_one_wall_first_layer", | ||||
|      "timelapse_type", | ||||
|      //SoftFever
 | ||||
|      "top_solid_infill_flow_ratio" | ||||
|      "top_solid_infill_flow_ratio","bottom_solid_infill_flow_ratio" | ||||
| 
 | ||||
| }; | ||||
| 
 | ||||
|  |  | |||
|  | @ -649,6 +649,16 @@ void PrintConfigDef::init_fff_params() | |||
|     def->max = 2; | ||||
|     def->mode = comAdvanced; | ||||
|     def->set_default_value(new ConfigOptionFloat(1)); | ||||
| 
 | ||||
|     def = this->add("bottom_solid_infill_flow_ratio", coFloat); | ||||
|     def->label = L("Bottom surface flow ratio"); | ||||
|     def->category = L("Advanced"); | ||||
|     def->tooltip = L("This factor affects the amount of material for bottom solid infill. "); | ||||
|     def->min = 0; | ||||
|     def->max = 2; | ||||
|     def->mode = comAdvanced; | ||||
|     def->set_default_value(new ConfigOptionFloat(1)); | ||||
| 
 | ||||
|      | ||||
|     def = this->add("only_one_wall_top", coBool); | ||||
|     def->label = L("Only one wall on top surfaces"); | ||||
|  |  | |||
|  | @ -655,6 +655,7 @@ PRINT_CONFIG_CLASS_DEFINE( | |||
|     ((ConfigOptionFloat,                bridge_speed)) | ||||
|     ((ConfigOptionEnum<InfillPattern>,  top_surface_pattern)) | ||||
|     ((ConfigOptionFloat,                top_solid_infill_flow_ratio)) | ||||
|     ((ConfigOptionFloat,                bottom_solid_infill_flow_ratio)) | ||||
|     ((ConfigOptionEnum<InfillPattern>,  bottom_surface_pattern)) | ||||
|     ((ConfigOptionFloat,                outer_wall_line_width)) | ||||
|     ((ConfigOptionFloat,                outer_wall_speed)) | ||||
|  |  | |||
|  | @ -25,8 +25,12 @@ Flow PrintRegion::flow(const PrintObject &object, FlowRole role, double layer_he | |||
|     double flow_ratio = 1.0; | ||||
|     // Get extrusion width from configuration.
 | ||||
|     // (might be an absolute value, or a percent value, or zero for auto)
 | ||||
|     if (first_layer && print_config.initial_layer_line_width.value > 0) { | ||||
|         config_width = print_config.initial_layer_line_width; | ||||
|     if (first_layer) {  | ||||
|         if(role != frExternalPerimeter) | ||||
|             flow_ratio = m_config.bottom_solid_infill_flow_ratio; | ||||
|         if(print_config.initial_layer_line_width.value > 0) { | ||||
|             config_width = print_config.initial_layer_line_width; | ||||
|         } | ||||
|     } else if (role == frExternalPerimeter) { | ||||
|         config_width = m_config.outer_wall_line_width; | ||||
|     } else if (role == frPerimeter) { | ||||
|  |  | |||
|  | @ -1783,6 +1783,7 @@ void TabPrint::build() | |||
|         optgroup->append_single_option_line("wall_infill_order"); | ||||
|         optgroup->append_single_option_line("bridge_flow"); | ||||
|         optgroup->append_single_option_line("top_solid_infill_flow_ratio"); | ||||
|         optgroup->append_single_option_line("bottom_solid_infill_flow_ratio"); | ||||
|         optgroup->append_single_option_line("only_one_wall_top"); | ||||
|         optgroup->append_single_option_line("only_one_wall_first_layer"); | ||||
|         optgroup->append_single_option_line("detect_overhang_wall"); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 SoftFever
						SoftFever