Corrected e-length calculation in planner

This commit is contained in:
Erik van der Zalm 2012-02-12 01:36:42 +08:00 committed by daid
parent 2a77c84c8f
commit bde30b2b48

View File

@ -518,7 +518,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa
delta_mm[Z_AXIS] = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; delta_mm[Z_AXIS] = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS];
delta_mm[E_AXIS] = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS]; delta_mm[E_AXIS] = (target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS];
if ( block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0 ) { if ( block->steps_x == 0 && block->steps_y == 0 && block->steps_z == 0 ) {
block->millimeters = delta_mm[E_AXIS]; block->millimeters = abs(delta_mm[E_AXIS]);
} else { } else {
block->millimeters = sqrt(square(delta_mm[X_AXIS]) + square(delta_mm[Y_AXIS]) + square(delta_mm[Z_AXIS])); block->millimeters = sqrt(square(delta_mm[X_AXIS]) + square(delta_mm[Y_AXIS]) + square(delta_mm[Z_AXIS]));
} }