Option to disable all volumetric extrusion
This commit is contained in:
@ -24,25 +24,29 @@
|
||||
#include "../../Marlin.h"
|
||||
#include "../../module/planner.h"
|
||||
|
||||
/**
|
||||
* M200: Set filament diameter and set E axis units to cubic units
|
||||
*
|
||||
* T<extruder> - Optional extruder number. Current extruder if omitted.
|
||||
* D<linear> - Diameter of the filament. Use "D0" to switch back to linear units on the E axis.
|
||||
*/
|
||||
void GcodeSuite::M200() {
|
||||
#if DISABLED(NO_VOLUMETRICS)
|
||||
|
||||
if (get_target_extruder_from_command()) return;
|
||||
/**
|
||||
* M200: Set filament diameter and set E axis units to cubic units
|
||||
*
|
||||
* T<extruder> - Optional extruder number. Current extruder if omitted.
|
||||
* D<linear> - Diameter of the filament. Use "D0" to switch back to linear units on the E axis.
|
||||
*/
|
||||
void GcodeSuite::M200() {
|
||||
|
||||
if (parser.seen('D')) {
|
||||
// setting any extruder filament size disables volumetric on the assumption that
|
||||
// slicers either generate in extruder values as cubic mm or as as filament feeds
|
||||
// for all extruders
|
||||
if ( (parser.volumetric_enabled = (parser.value_linear_units() != 0.0)) )
|
||||
planner.set_filament_size(target_extruder, parser.value_linear_units());
|
||||
if (get_target_extruder_from_command()) return;
|
||||
|
||||
if (parser.seen('D')) {
|
||||
// setting any extruder filament size disables volumetric on the assumption that
|
||||
// slicers either generate in extruder values as cubic mm or as as filament feeds
|
||||
// for all extruders
|
||||
if ( (parser.volumetric_enabled = (parser.value_linear_units() != 0.0)) )
|
||||
planner.set_filament_size(target_extruder, parser.value_linear_units());
|
||||
}
|
||||
planner.calculate_volumetric_multipliers();
|
||||
}
|
||||
planner.calculate_volumetric_multipliers();
|
||||
}
|
||||
|
||||
#endif // !NO_VOLUMETRICS
|
||||
|
||||
/**
|
||||
* M201: Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000)
|
||||
|
@ -465,9 +465,9 @@ void GcodeSuite::process_parsed_command() {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
case 200: // M200: Set filament diameter, E to cubic units
|
||||
M200();
|
||||
break;
|
||||
#if DISABLED(NO_VOLUMETRICS)
|
||||
case 200: M200(); break; // M200: Set filament diameter, E to cubic units
|
||||
#endif
|
||||
|
||||
case 201: M201(); break; // M201: Set max acceleration for print moves (units/s^2)
|
||||
|
||||
|
Reference in New Issue
Block a user