|
@@ -2893,26 +2893,16 @@ Sigma_Exit:
|
2893
|
2893
|
|
2894
|
2894
|
float area = .0;
|
2895
|
2895
|
if(code_seen('D')) {
|
2896
|
|
- float diameter = (float)code_value();
|
2897
|
|
- if (diameter == 0.0) {
|
2898
|
|
- // setting any extruder filament size disables volumetric on the assumption that
|
2899
|
|
- // slicers either generate in extruder values as cubic mm or as as filament feeds
|
2900
|
|
- // for all extruders
|
2901
|
|
- volumetric_enabled = false;
|
2902
|
|
- } else {
|
2903
|
|
- filament_size[tmp_extruder] = (float)code_value();
|
|
2896
|
+ float diameter = code_value();
|
|
2897
|
+ // setting any extruder filament size disables volumetric on the assumption that
|
|
2898
|
+ // slicers either generate in extruder values as cubic mm or as as filament feeds
|
|
2899
|
+ // for all extruders
|
|
2900
|
+ volumetric_enabled = (diameter != 0.0);
|
|
2901
|
+ if (volumetric_enabled) {
|
|
2902
|
+ filament_size[tmp_extruder] = diameter;
|
2904
|
2903
|
// make sure all extruders have some sane value for the filament size
|
2905
|
|
- filament_size[0] = (filament_size[0] == 0.0 ? DEFAULT_NOMINAL_FILAMENT_DIA : filament_size[0]);
|
2906
|
|
-#if EXTRUDERS > 1
|
2907
|
|
- filament_size[1] = (filament_size[1] == 0.0 ? DEFAULT_NOMINAL_FILAMENT_DIA : filament_size[1]);
|
2908
|
|
-#if EXTRUDERS > 2
|
2909
|
|
- filament_size[2] = (filament_size[2] == 0.0 ? DEFAULT_NOMINAL_FILAMENT_DIA : filament_size[2]);
|
2910
|
|
-#if EXTRUDERS > 3
|
2911
|
|
- filament_size[3] = (filament_size[3] == 0.0 ? DEFAULT_NOMINAL_FILAMENT_DIA : filament_size[3]);
|
2912
|
|
-#endif //EXTRUDERS > 3
|
2913
|
|
-#endif //EXTRUDERS > 2
|
2914
|
|
-#endif //EXTRUDERS > 1
|
2915
|
|
- volumetric_enabled = true;
|
|
2904
|
+ for (int i=0; i<EXTRUDERS; i++)
|
|
2905
|
+ if (! filament_size[i]) filament_size[i] = DEFAULT_NOMINAL_FILAMENT_DIA;
|
2916
|
2906
|
}
|
2917
|
2907
|
} else {
|
2918
|
2908
|
//reserved for setting filament diameter via UFID or filament measuring device
|
|
@@ -3031,33 +3021,11 @@ Sigma_Exit:
|
3031
|
3021
|
int t= code_value() ;
|
3032
|
3022
|
switch(t)
|
3033
|
3023
|
{
|
3034
|
|
- case 0:
|
3035
|
|
- {
|
3036
|
|
- autoretract_enabled=false;
|
3037
|
|
- retracted[0]=false;
|
3038
|
|
-#if EXTRUDERS > 1
|
3039
|
|
- retracted[1]=false;
|
3040
|
|
-#endif
|
3041
|
|
-#if EXTRUDERS > 2
|
3042
|
|
- retracted[2]=false;
|
3043
|
|
-#endif
|
3044
|
|
-#if EXTRUDERS > 3
|
3045
|
|
- retracted[3]=false;
|
3046
|
|
-#endif
|
3047
|
|
- }break;
|
3048
|
|
- case 1:
|
|
3024
|
+ case 0:
|
|
3025
|
+ case 1:
|
3049
|
3026
|
{
|
3050
|
|
- autoretract_enabled=true;
|
3051
|
|
- retracted[0]=false;
|
3052
|
|
-#if EXTRUDERS > 1
|
3053
|
|
- retracted[1]=false;
|
3054
|
|
-#endif
|
3055
|
|
-#if EXTRUDERS > 2
|
3056
|
|
- retracted[2]=false;
|
3057
|
|
-#endif
|
3058
|
|
-#if EXTRUDERS > 3
|
3059
|
|
- retracted[3]=false;
|
3060
|
|
-#endif
|
|
3027
|
+ autoretract_enabled = (t == 1);
|
|
3028
|
+ for (int i=0; i<EXTRUDERS; i++) retracted[i] = false;
|
3061
|
3029
|
}break;
|
3062
|
3030
|
default:
|
3063
|
3031
|
SERIAL_ECHO_START;
|
|
@@ -4696,15 +4664,6 @@ float calculate_volumetric_multiplier(float diameter) {
|
4696
|
4664
|
}
|
4697
|
4665
|
|
4698
|
4666
|
void calculate_volumetric_multipliers() {
|
4699
|
|
- volumetric_multiplier[0] = calculate_volumetric_multiplier(filament_size[0]);
|
4700
|
|
-#if EXTRUDERS > 1
|
4701
|
|
- volumetric_multiplier[1] = calculate_volumetric_multiplier(filament_size[1]);
|
4702
|
|
-#if EXTRUDERS > 2
|
4703
|
|
- volumetric_multiplier[2] = calculate_volumetric_multiplier(filament_size[2]);
|
4704
|
|
-#if EXTRUDERS > 3
|
4705
|
|
- volumetric_multiplier[3] = calculate_volumetric_multiplier(filament_size[3]);
|
4706
|
|
-#endif //EXTRUDERS > 3
|
4707
|
|
-#endif //EXTRUDERS > 2
|
4708
|
|
-#endif //EXTRUDERS > 1
|
|
4667
|
+ for (int i=0; i<EXTRUDERS; i++)
|
|
4668
|
+ volumetric_multiplier[i] = calculate_volumetric_multiplier(filament_size[i]);
|
4709
|
4669
|
}
|
4710
|
|
-
|